Commit graph

339 commits

Author SHA1 Message Date
Takashi Kokubun
d7888e4626 Implement opt_pc 2023-03-05 23:28:59 -08:00
Takashi Kokubun
706f6272d9 Guard against GC of random ISEQs 2023-03-05 23:28:59 -08:00
Takashi Kokubun
7dcdffebc8 Invalidate blocks on global constant changes 2023-03-05 23:28:59 -08:00
Takashi Kokubun
b5fbc9f59f Implement ISEQ block_handler 2023-03-05 23:28:59 -08:00
Takashi Kokubun
fb08b0e748 Start implementing send 2023-03-05 23:28:59 -08:00
Takashi Kokubun
8b84c68d77 Implement defined 2023-03-05 23:28:59 -08:00
Takashi Kokubun
536d8cc51b Fix invokesuper for railsbench 2023-03-05 23:28:59 -08:00
Takashi Kokubun
33213542f2 Implement invokesuper 2023-03-05 23:28:59 -08:00
Takashi Kokubun
5576da7900 Re-compile MJIT entry on constant IC update 2023-03-05 23:28:59 -08:00
Takashi Kokubun
15cea7fd0d Implement newhash 2023-03-05 23:28:59 -08:00
Takashi Kokubun
4d85f21ee8 Implement swap 2023-03-05 23:28:59 -08:00
Takashi Kokubun
8d29b0635b Implement putstring 2023-03-05 23:28:59 -08:00
Takashi Kokubun
32e6f15beb Store MJIT blocks on each ISEQ 2023-03-05 23:28:59 -08:00
Takashi Kokubun
63d96ccbcd Invalidate everything on GC.compact 2023-03-05 23:28:59 -08:00
Takashi Kokubun
44c4a2d80d Implement splatarray 2023-03-05 23:28:59 -08:00
Takashi Kokubun
a666079404 Implement topn 2023-03-05 23:28:59 -08:00
Takashi Kokubun
4106487ae8 Implement newarray 2023-03-05 23:28:59 -08:00
Takashi Kokubun
3a97d54725 Implement adjuststack 2023-03-05 23:28:59 -08:00
Takashi Kokubun
993c43e429 Change a branch stub shape only when needed 2023-03-05 23:28:59 -08:00
Takashi Kokubun
bef63f445b Skip invalidation for trace_ insns 2023-03-05 23:28:59 -08:00
Takashi Kokubun
feb60f6f51 Invalidate blocks on constant IC updates 2023-03-05 23:28:59 -08:00
Takashi Kokubun
2cc4f506ba Implement optimized send 2023-03-05 23:28:59 -08:00
Takashi Kokubun
2603d7a0b7 Remove unneeded ci references 2023-03-05 23:28:59 -08:00
Takashi Kokubun
a4bf1c661b Implement opt_invokebuiltin_delegate 2023-03-05 23:28:59 -08:00
Takashi Kokubun
7b78fd0df2 Count optimized method types 2023-03-05 23:28:59 -08:00
Takashi Kokubun
ecc86f79ca Implement opt_aset 2023-03-05 23:28:59 -08:00
Takashi Kokubun
d120394df3 Implement duparray and expandarray 2023-03-05 23:28:59 -08:00
Takashi Kokubun
e078a4a964 Count opt_getconstant_path exit reasons 2023-03-05 23:28:59 -08:00
Takashi Kokubun
4271927d61 Side-exit on cfunc with -2 argc 2023-03-05 23:28:59 -08:00
Takashi Kokubun
4d97f9319c Initial support of opt_getconstant_path 2023-03-05 23:28:59 -08:00
Takashi Kokubun
a9ef36866a Implement dupn and setn 2023-03-05 23:28:59 -08:00
Takashi Kokubun
c3ca9448bf Implement all getlocal/setlocal insns 2023-03-05 23:28:59 -08:00
Takashi Kokubun
3774fe4e91 Implement opt_eq and opt_neq 2023-03-05 23:28:59 -08:00
Takashi Kokubun
b5c5052839 Format numbers with delimiters 2023-03-05 23:28:59 -08:00
Takashi Kokubun
bc50b0475a Implement opt_and and opt_or 2023-03-05 23:28:59 -08:00
Takashi Kokubun
67cc53214c Implement setlocal_WC_0 2023-03-05 23:28:59 -08:00
Takashi Kokubun
ba491598cc Implement opt_mod 2023-03-05 23:28:59 -08:00
Takashi Kokubun
73a5b3d5d2 Implement Array#[] 2023-03-05 23:28:59 -08:00
Takashi Kokubun
51d36c7b34 Implement opt_le, opt_ge, and opt_gt 2023-03-05 23:28:59 -08:00
Takashi Kokubun
1b0fbd137f Implement branchif 2023-03-05 23:28:59 -08:00
Takashi Kokubun
9bce848b4c Side-exit earlier on interrupts 2023-03-05 23:28:59 -08:00
Takashi Kokubun
11bd040b89 Fix a typo in jit_chain_guard 2023-03-05 23:28:59 -08:00
Takashi Kokubun
39b7874481 Implement variadic C func calls 2023-03-05 23:28:59 -08:00
git
e111d3ae8d * remove trailing spaces. [ci skip] 2023-03-06 07:24:02 +00:00
Takashi Kokubun
cacf2f3709 Set 0 to cfp->pc on C func send 2023-03-05 22:41:35 -08:00
Takashi Kokubun
9e42f31574 Do not compile C calls when C tracing is enabled 2023-03-05 22:41:35 -08:00
Takashi Kokubun
20e55be47c Re-enable cfunc send 2023-03-05 22:41:35 -08:00
Takashi Kokubun
1bdc23f35b Redo compilation of all ISEQs after invalidation 2023-03-05 22:41:35 -08:00
Takashi Kokubun
b379ccf755 Handle RangeError in iseq_lineno 2023-03-05 22:41:35 -08:00
Takashi Kokubun
1fa519fdae Handle failures on branch_stub_hit 2023-03-05 22:41:35 -08:00