Takashi Kokubun
44165df121
MJIT: Cache an ISeq pointer instance
...
to obviate one rb_funcall. This also removes rb_ptr as refactoring.
2022-11-28 23:53:33 -08:00
Takashi Kokubun
bb6f933d51
MJIT: Get rid of is_entries copy
...
MJIT worker no longer exists, so we don't need this safeguard anymore.
2022-11-28 22:03:16 -08:00
Takashi Kokubun
9c13fc614c
MJIT: Make it parsable by Solargraph ( #6827 )
...
* Revert "Revert "MJIT: Make it parsable by Solargraph""
This reverts commit 8e18761da1
.
* Call rb_gc_register_mark_object
2022-11-28 21:33:55 -08:00
Takashi Kokubun
acb76663ba
MJIT: Rename mjit_compiler.h to mjit_c.h
...
because it exists primarily for generating mjit_c.rb.
2022-11-28 21:23:14 -08:00
Takashi Kokubun
8e18761da1
Revert "MJIT: Make it parsable by Solargraph"
...
This reverts commit ccd8dd6ad3
.
Revert "MJIT: Fix miniruby with MJIT_FORCE_ENABLE"
This reverts commit b033775ed9
.
GitHub Actions is failing. I ran out of time today to investigate it.
will try it again tomorrow.
2022-11-28 00:13:23 -08:00
Takashi Kokubun
ccd8dd6ad3
MJIT: Make it parsable by Solargraph
2022-11-27 23:46:59 -08:00
Takashi Kokubun
2c1c0d3df0
MJIT: Get rid of C.fprintf
...
Faster code generation and cleaner code.
2022-11-27 22:47:46 -08:00
Takashi Kokubun
6844bcc6b4
MJIT: Use a String buffer in builtin compilers
...
instead of FILE*.
Using C.fprintf is slower than String manipulation on memory. I'm going
to change the way MJIT writes files, and this is a prerequisite for it.
2022-11-27 21:11:33 -08:00
Takashi Kokubun
b2dcde839d
MJIT: Merge mjit_compiler.rb into mjit.rb
...
There are too many mjit_compiler.* files. It was hard to find files.
2022-11-26 15:31:38 -08:00
Nobuyoshi Nakada
1481e6828c
Avoid type limits ( #6435 )
2022-09-26 09:21:05 +09:00
Takashi Kokubun
08476c4579
Remove unneeded semicolons
2022-09-23 23:13:43 -07:00
Takashi Kokubun
b0e3ee454d
Suppress -Wtype-limits warnings on mjit_c.rb
2022-09-23 23:07:30 -07:00
Takashi Kokubun
dc5b536468
Bindgen offsetof struct and union with builtin
...
except for bit fields.
I made a risky assumption on leading bit fields and just gave up
non-leading bit fields for now. I'll change it to let C code access bit
fields later.
2022-09-23 06:44:28 +09:00
Takashi Kokubun
4c6e1556b1
Bindgen immediate types with builtin
2022-09-23 06:44:28 +09:00
Takashi Kokubun
f2bea691cd
Builtin RubyVM::MJIT::C
2022-09-23 06:44:28 +09:00
Takashi Kokubun
0e816e6d30
Demote mjit_instruction.rb from builtin to stdlib
2022-09-18 14:04:20 +09:00
Takashi Kokubun
341b40bd0c
Cache RubyVM::MJIT constants
...
for performance
2022-09-06 15:50:14 +09:00
Takashi Kokubun
3767c6a90d
Ruby MJIT ( #6028 )
2022-09-04 21:53:46 -07:00
Takashi Kokubun
a60507f616
Rename mjit_compile.c to mjit_compiler.c
...
I'm planning to introduce mjit_compiler.rb, and I want to make this
consistent with it. Consistency with compile.c doesn't seem important
for MJIT anyway.
2022-08-21 11:33:06 -07:00