Maxime Chevalier-Boisvert
|
020f745041
|
Fix overflow check in ujit
|
2021-10-20 18:19:28 -04:00 |
|
Maxime Chevalier-Boisvert
|
05c72d40b7
|
Alan & Max at Tanagra
|
2021-10-20 18:19:28 -04:00 |
|
Maxime Chevalier-Boisvert
|
09479c33f5
|
Implement block version limit
|
2021-10-20 18:19:28 -04:00 |
|
Maxime Chevalier-Boisvert
|
63e85de33a
|
Fix bug, block added with wrong blockid.
|
2021-10-20 18:19:27 -04:00 |
|
Maxime Chevalier-Boisvert
|
4f47181be6
|
Keep track of multiple versions per blockid
|
2021-10-20 18:19:27 -04:00 |
|
Maxime Chevalier-Boisvert
|
79d6e9618d
|
Make find_block_version() do list search
|
2021-10-20 18:19:27 -04:00 |
|
Maxime Chevalier-Boisvert
|
738160db0a
|
Write ctx_diff() function to compate ctx_t objects
|
2021-10-20 18:19:27 -04:00 |
|
Maxime Chevalier-Boisvert
|
dea4db16c0
|
Add support for multiple versions per block
|
2021-10-20 18:19:27 -04:00 |
|
Maxime Chevalier-Boisvert
|
d528cf4fd5
|
Added comments. Fixed compiler warning.
|
2021-10-20 18:19:27 -04:00 |
|
Alan Wu
|
ce233c95db
|
Remove assert that doesn't compile
|
2021-10-20 18:19:27 -04:00 |
|
Maxime Chevalier-Boisvert
|
0a6e824ad2
|
Prototype type-specialization for temp values
|
2021-10-20 18:19:27 -04:00 |
|
Maxime Chevalier-Boisvert
|
cf4021ca78
|
Take VM lock in branch_stub_hit(), fix ractor deadlock.
|
2021-10-20 18:19:27 -04:00 |
|
Maxime Chevalier-Boisvert
|
dde69ab5c6
|
Fix ujit block hash table bug
|
2021-10-20 18:19:27 -04:00 |
|
Maxime Chevalier-Boisvert
|
136bf983be
|
Fix bug with ujit code invalidation
|
2021-10-20 18:19:27 -04:00 |
|
Maxime Chevalier-Boisvert
|
37ad374607
|
Added gen_direct_jump() for unary branches
|
2021-10-20 18:19:27 -04:00 |
|
Maxime Chevalier-Boisvert
|
187435c117
|
Complete refactoring to eliminate recursion in ujit's compilation
|
2021-10-20 18:19:27 -04:00 |
|
Maxime Chevalier-Boisvert
|
59eb98fbaa
|
Fix ujit cc/cme invalidation code for opt_send_without_block
|
2021-10-20 18:19:27 -04:00 |
|
Maxime Chevalier-Boisvert
|
4a57107696
|
Sketch code to invalidate basic blocks. Rename version_t to block_t.
|
2021-10-20 18:19:27 -04:00 |
|
Maxime Chevalier-Boisvert
|
92e9b24586
|
Keep track of incoming branches in ujit
|
2021-10-20 18:19:27 -04:00 |
|
Maxime Chevalier-Boisvert
|
2cf32e5505
|
Refactor ujit logic for generating iseq entry points
|
2021-10-20 18:19:27 -04:00 |
|
Maxime Chevalier-Boisvert
|
ef08af9376
|
Progress on code invalidation
|
2021-10-20 18:19:27 -04:00 |
|
Maxime Chevalier-Boisvert
|
3a74011ff8
|
Introduce version_t struct. Will be needed for code invalidation.
|
2021-10-20 18:19:27 -04:00 |
|
Maxime Chevalier-Boisvert
|
a251059070
|
Fix hash map key issue
|
2021-10-20 18:19:27 -04:00 |
|
Maxime Chevalier-Boisvert
|
2cc0db12fe
|
Refactorings in ujit. Implement Ruby jump instruction.
|
2021-10-20 18:19:26 -04:00 |
|
Maxime Chevalier-Boisvert
|
1744c15578
|
Avoid generating redundant interpreter exit code after branches
|
2021-10-20 18:19:26 -04:00 |
|
Maxime Chevalier-Boisvert
|
542f2ba09e
|
Use a versioning context when compiling blocks
|
2021-10-20 18:19:26 -04:00 |
|
Maxime Chevalier-Boisvert
|
df16bf97ec
|
Split out context object into jitstate_t and ctx_t
|
2021-10-20 18:19:26 -04:00 |
|
Maxime Chevalier-Boisvert
|
5e39d83fbd
|
Split out compile_entry() from compile_block()
|
2021-10-20 18:19:26 -04:00 |
|
Maxime Chevalier-Boisvert
|
4592ef9d76
|
Fixed one bug in compile_block.
|
2021-10-20 18:19:26 -04:00 |
|
Maxime Chevalier-Boisvert
|
e9344ae408
|
Stub logic working for fib test, but still crashing in other cases
|
2021-10-20 18:19:26 -04:00 |
|
Maxime Chevalier-Boisvert
|
7d7e58d352
|
Implement branch stub logic
|
2021-10-20 18:19:26 -04:00 |
|
Maxime Chevalier-Boisvert
|
40b70ef7c7
|
WIP branch generation code
|
2021-10-20 18:19:26 -04:00 |
|
Maxime Chevalier-Boisvert
|
bd7cc9ed98
|
Thread insn_idx through context object
|
2021-10-20 18:19:26 -04:00 |
|
Maxime Chevalier-Boisvert
|
20f5b7426e
|
Start implementing BBV primitives
|
2021-10-20 18:19:26 -04:00 |
|
Maxime Chevalier-Boisvert
|
f7717b1d46
|
Start refactoring JIT engine
|
2021-10-20 18:19:26 -04:00 |
|
Maxime Chevalier-Boisvert
|
e4c65ec49c
|
Refactor uJIT code into more files for readability
|
2021-10-20 18:19:26 -04:00 |
|