Commit graph

126 commits

Author SHA1 Message Date
Takashi Kokubun
8510f33cc1 RJIT: Implement intern 2023-03-18 21:42:20 -07:00
Takashi Kokubun
4a8de3fa88 RJIT: Fix toregexp 2023-03-18 21:39:24 -07:00
Takashi Kokubun
9c2792c3d3 RJIT: Implement toregexp 2023-03-18 21:37:49 -07:00
Takashi Kokubun
2eefd71e0f RJIT: Implement newrange 2023-03-18 21:24:31 -07:00
Takashi Kokubun
81e19b7d99 RJIT: Implement getglobal 2023-03-18 21:20:58 -07:00
Takashi Kokubun
9f8e914943 RJIT: Implement checkkeyword 2023-03-18 21:15:22 -07:00
Takashi Kokubun
dc28ccbb6d RJIT: Implement getspecial insn 2023-03-18 00:00:18 -07:00
Takashi Kokubun
93e05aaa74 RJIT: Implement putspecialobject insn 2023-03-17 23:46:56 -07:00
Takashi Kokubun
45a17013aa RJIT: Implement throw insn 2023-03-17 23:27:16 -07:00
Yusuke Endoh
56dbf83a85 Prevent a warning: assigned but unused variable
... which made a test fail

20230313T213003Z.fail.html.gz

```
  1) Failure:
TestRubyOptions#test_enable [/home/chkbuild/chkbuild/tmp/build/20230313T213003Z/ruby/test/ruby/test_rubyoptions.rb:176]:
pid 1208 exit 0
| /home/chkbuild/chkbuild/tmp/build/20230313T213003Z/ruby/lib/ruby_vm/rjit/insn_compiler.rb:1257: warning: assigned but unused variable - argc
| /home/chkbuild/chkbuild/tmp/build/20230313T213003Z/ruby/lib/ruby_vm/rjit/insn_compiler.rb:1258: warning: assigned but unused variable - flags
.

1. [2/2] Assertion for "stderr"
   | <[]> expected but was
   | <["/home/chkbuild/chkbuild/tmp/build/20230313T213003Z/ruby/lib/ruby_vm/rjit/insn_compiler.rb:1257: warning: assigned but unused variable - argc",
   |  "/home/chkbuild/chkbuild/tmp/build/20230313T213003Z/ruby/lib/ruby_vm/rjit/insn_compiler.rb:1258: warning: assigned but unused variable - flags"]>.
```
2023-03-13 22:07:25 +09:00
Takashi Kokubun
ed269c81aa RJIT: Count invokeblock exit types 2023-03-12 23:38:11 -07:00
Takashi Kokubun
da9c84f859 RJIT: Rename a side exit counter 2023-03-12 22:15:58 -07:00
Takashi Kokubun
d27b594841 RJIT: Fix a typo
and import a missing function
2023-03-12 22:09:05 -07:00
Takashi Kokubun
330086d3f6 RJIT: Implement definedivar 2023-03-12 22:07:02 -07:00
Takashi Kokubun
3938efa70f RJIT: Fix block param proxy on send
peek_at_stack was doubly accounting for C::VM_CALL_ARGS_BLOCKARG, which
made that case always side-exit and hide this bug.

When a block handler is block param proxy, you have to set LEP's specval
as next specval instead of block param proxy itself.
2023-03-12 22:01:38 -07:00
Takashi Kokubun
a23f64221e RJIT: Fix block finding logic
like YJIT does
2023-03-12 21:14:43 -07:00
Takashi Kokubun
bbd9221e46 RJIT: Give up freezing InsnCompiler
for memoization
2023-03-12 13:31:15 -07:00
Takashi Kokubun
9c220bf5e1 RJIT: Use lambda constants to match operands 2023-03-11 23:35:58 -08:00
Takashi Kokubun
846fc356cb RJIT: Use case-in for exhaustive matches 2023-03-11 22:17:06 -08:00
Takashi Kokubun
fe34db5a1b RJIT: Migrate SIZET values to RJIT::C constants 2023-03-11 22:04:30 -08:00
Takashi Kokubun
50c5f94ed7 RJIT: Introduce constants under RubyVM::RJIT::C 2023-03-11 21:48:28 -08:00
Takashi Kokubun
58f7e8b7f8 RJIT: Automate function pointer imports 2023-03-11 21:26:40 -08:00
Takashi Kokubun
35fd79ac37 RJIT: Lazily compile global ocb 2023-03-09 21:55:14 -08:00
Takashi Kokubun
23ec248e48 s/mjit/rjit/ 2023-03-06 23:44:01 -08:00
Takashi Kokubun
2e875549a9 s/MJIT/RJIT/ 2023-03-06 23:44:01 -08:00
Takashi Kokubun
eaccdc1941 Rename MJIT filenames to RJIT 2023-03-06 23:44:01 -08:00
Renamed from lib/ruby_vm/mjit/insn_compiler.rb (Browse further)