Takashi Kokubun
|
3034553e8d
|
Add more GC guards
|
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
|
5576da7900
|
Re-compile MJIT entry on constant IC update
|
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
|
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
|
1bdc23f35b
|
Redo compilation of all ISEQs after invalidation
|
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 |
Takashi Kokubun
|
aba530e23b
|
Implement invalidation after cfunc
|
2023-03-05 22:41:35 -08:00 |
Takashi Kokubun
|
2c87cf8013
|
Implement stackoverflow check
|
2023-03-05 22:41:35 -08:00 |
Takashi Kokubun
|
2cd6406d67
|
Save PC and SP on entry exit
|
2023-03-05 22:11:20 -08:00 |
Takashi Kokubun
|
a026bcedc8
|
Allow reusing existing blocks
|
2023-03-05 22:11:20 -08:00 |
Takashi Kokubun
|
d415f1e317
|
Get rid of BlockStub
|
2023-03-05 22:11:20 -08:00 |
Takashi Kokubun
|
6c1b1fa1f5
|
Refactor BranchStub
|
2023-03-05 22:11:20 -08:00 |
Takashi Kokubun
|
4bb4479165
|
Add compiled_block_count
|
2023-03-05 22:11:20 -08:00 |
Takashi Kokubun
|
e731ced271
|
Implement method call
|
2023-03-05 22:11:20 -08:00 |
Takashi Kokubun
|
fa0b9c1c97
|
Initial implementation of send
|
2023-03-05 22:11:20 -08:00 |
Takashi Kokubun
|
f4cf737af8
|
Support Mod 10 mov
|
2023-03-05 22:11:20 -08:00 |
Takashi Kokubun
|
62d36dd127
|
Implement branch stub
|
2023-03-05 22:11:20 -08:00 |
Takashi Kokubun
|
a8dec34961
|
Implement initial opt_lt
|
2023-03-05 22:11:20 -08:00 |
Takashi Kokubun
|
21696ad81e
|
Partly implement BOP assumption
|
2023-03-05 22:11:20 -08:00 |
Takashi Kokubun
|
00c659d246
|
Move the insn dispatch table to InsnCompiler
|
2023-03-05 22:11:20 -08:00 |
Takashi Kokubun
|
4b6c738180
|
Rewrite the stub if it's the last code
|
2023-03-05 22:11:20 -08:00 |
Takashi Kokubun
|
c3d99d0f12
|
Implement defer_compilation
|
2023-03-05 22:11:20 -08:00 |
Takashi Kokubun
|
2b8d1c93ea
|
Support extended registers
and move argument registers to a couple of them.
|
2023-03-05 22:11:20 -08:00 |
Takashi Kokubun
|
d7dba4c510
|
Colorize outlined code
|
2023-03-05 22:11:20 -08:00 |
Takashi Kokubun
|
36cec59f0a
|
Implement ocb
|
2023-03-05 22:11:20 -08:00 |
Takashi Kokubun
|
7abff797b4
|
Use the term "compile" in different places
|
2023-03-05 22:11:20 -08:00 |
Takashi Kokubun
|
c51baf9404
|
Carve out CodeBlock
|
2023-03-05 22:11:20 -08:00 |
Takashi Kokubun
|
28290d5198
|
Try carving out ExitCompiler
|
2023-03-05 22:11:20 -08:00 |
Takashi Kokubun
|
7a19aad8c3
|
Implement putobject
|
2023-03-05 22:11:20 -08:00 |
Takashi Kokubun
|
9352f94a1b
|
Implement getlocal_WC_0
|
2023-03-05 22:11:20 -08:00 |
Takashi Kokubun
|
e4a824f769
|
Fix broken rebase
|
2023-03-05 22:11:20 -08:00 |
Takashi Kokubun
|
9f8f1afba2
|
Implement --mjit-stats
|
2023-03-05 22:11:20 -08:00 |
Takashi Kokubun
|
4fe5efbf7f
|
Implement asm comments
|
2023-03-05 22:11:20 -08:00 |
Takashi Kokubun
|
3b398513be
|
Check interrupts on leave
|
2023-03-05 22:11:20 -08:00 |
Takashi Kokubun
|
25ae82b83e
|
Skip supporting has_opt for now
|
2023-03-05 22:11:20 -08:00 |
Takashi Kokubun
|
d46cc2c104
|
Remove <main> specialization
|
2023-03-05 22:11:20 -08:00 |
Takashi Kokubun
|
5db2ef5e14
|
Define constants for magic registers
|
2023-03-05 22:11:20 -08:00 |
Takashi Kokubun
|
23a58105ee
|
Implement callee-saved registers
|
2023-03-05 22:11:20 -08:00 |
Takashi Kokubun
|
71595a37ba
|
Consider stack_size on side exits
|
2023-03-05 22:11:20 -08:00 |
Takashi Kokubun
|
bee5af407d
|
Rename InsnCompiler to Codegen
because I'm not gonna limit this to insns anymore.
|
2023-03-05 22:11:20 -08:00 |
Takashi Kokubun
|
b99d62bf92
|
Implement initial side exit
|
2023-03-05 22:11:20 -08:00 |
Takashi Kokubun
|
145c937f3f
|
Compile putnil properly
|
2023-03-05 22:11:20 -08:00 |
Takashi Kokubun
|
396d575451
|
Implement mov encoding properly
|
2023-03-05 22:11:20 -08:00 |
Takashi Kokubun
|
2700d35b7b
|
Split responsibilities differently
|
2023-03-05 22:11:20 -08:00 |
Takashi Kokubun
|
d9c2eb6f42
|
Move modules around
|
2023-03-05 22:11:20 -08:00 |