@@ -300,6 +300,7 @@ jit_jump_to_next_insn(jitstate_t *jit, const ctx_t *current_context)
300
300
301
301
// Generate the jump instruction
302
302
gen_direct_jump (
303
+ jit -> block ,
303
304
& reset_depth ,
304
305
jump_block
305
306
);
@@ -721,6 +722,7 @@ jit_chain_guard(enum jcc_kinds jcc, jitstate_t *jit, const ctx_t *ctx, uint8_t d
721
722
deeper .chain_depth ++ ;
722
723
723
724
gen_branch (
725
+ jit -> block ,
724
726
ctx ,
725
727
(blockid_t ) { jit -> iseq , jit -> insn_idx },
726
728
& deeper ,
@@ -1333,6 +1335,7 @@ gen_branchif(jitstate_t* jit, ctx_t* ctx)
1333
1335
1334
1336
// Generate the branch instructions
1335
1337
gen_branch (
1338
+ jit -> block ,
1336
1339
ctx ,
1337
1340
jump_block ,
1338
1341
ctx ,
@@ -1386,6 +1389,7 @@ gen_branchunless(jitstate_t* jit, ctx_t* ctx)
1386
1389
1387
1390
// Generate the branch instructions
1388
1391
gen_branch (
1392
+ jit -> block ,
1389
1393
ctx ,
1390
1394
jump_block ,
1391
1395
ctx ,
@@ -1411,6 +1415,7 @@ gen_jump(jitstate_t* jit, ctx_t* ctx)
1411
1415
1412
1416
// Generate the jump instruction
1413
1417
gen_direct_jump (
1418
+ jit -> block ,
1414
1419
ctx ,
1415
1420
jump_block
1416
1421
);
@@ -1726,6 +1731,7 @@ gen_oswb_iseq(jitstate_t *jit, ctx_t *ctx, const struct rb_callinfo *ci, const r
1726
1731
1727
1732
// Stack overflow check
1728
1733
// #define CHECK_VM_STACK_OVERFLOW0(cfp, sp, margin)
1734
+ ADD_COMMENT (cb , "stack overflow check" );
1729
1735
lea (cb , REG0 , ctx_sp_opnd (ctx , sizeof (VALUE ) * (num_locals + iseq -> body -> stack_max ) + sizeof (rb_control_frame_t )));
1730
1736
cmp (cb , REG_CFP , REG0 );
1731
1737
jle_ptr (cb , COUNTED_EXIT (side_exit , oswb_se_cf_overflow ));
@@ -1802,6 +1808,7 @@ gen_oswb_iseq(jitstate_t *jit, ctx_t *ctx, const struct rb_callinfo *ci, const r
1802
1808
1803
1809
// Write the JIT return address on the callee frame
1804
1810
gen_branch (
1811
+ jit -> block ,
1805
1812
ctx ,
1806
1813
return_block ,
1807
1814
& return_ctx ,
@@ -1818,6 +1825,7 @@ gen_oswb_iseq(jitstate_t *jit, ctx_t *ctx, const struct rb_callinfo *ci, const r
1818
1825
1819
1826
// Directly jump to the entry point of the callee
1820
1827
gen_direct_jump (
1828
+ jit -> block ,
1821
1829
& callee_ctx ,
1822
1830
(blockid_t ){ iseq , 0 }
1823
1831
);
@@ -2049,6 +2057,7 @@ gen_opt_getinlinecache(jitstate_t *jit, ctx_t *ctx)
2049
2057
// Jump over the code for filling the cache
2050
2058
uint32_t jump_idx = jit_next_insn_idx (jit ) + (int32_t )jump_offset ;
2051
2059
gen_direct_jump (
2060
+ jit -> block ,
2052
2061
ctx ,
2053
2062
(blockid_t ){ .iseq = jit -> iseq , .idx = jump_idx }
2054
2063
);
0 commit comments