NULL,
bb_map[op].gcc_bb);
comp.bblock->terminated = true;
+ bb_map[op].top = stack;
break;
CASE (Bgotoifnil)
POP1;
emit_comparison_jump (GCC_JIT_COMPARISON_EQ, args[0], nil,
bb_map[op].gcc_bb, bb_map[pc].gcc_bb);
+ bb_map[op].top = stack;
break;
CASE (Bgotoifnonnil)
POP1;
emit_comparison_jump (GCC_JIT_COMPARISON_NE, args[0], nil,
bb_map[op].gcc_bb, bb_map[pc].gcc_bb);
+ bb_map[op].top = stack;
break;
CASE (Bgotoifnilelsepop)
gcc_jit_lvalue_as_rvalue (TOS),
nil,
bb_map[op].gcc_bb, bb_map[pc].gcc_bb);
+ bb_map[op].top = stack;
POP1;
break;
gcc_jit_lvalue_as_rvalue (TOS),
nil,
bb_map[op].gcc_bb, bb_map[pc].gcc_bb);
+ bb_map[op].top = stack;
POP1;
break;
NULL,
bb_map[op].gcc_bb);
comp.bblock->terminated = true;
+ bb_map[op].top = stack;
break;
CASE (BRgotoifnil)
POP1;
emit_comparison_jump (GCC_JIT_COMPARISON_EQ, args[0], nil,
bb_map[op].gcc_bb, bb_map[pc].gcc_bb);
+ bb_map[op].top = stack;
break;
CASE (BRgotoifnonnil)
POP1;
emit_comparison_jump (GCC_JIT_COMPARISON_NE, args[0], nil,
bb_map[op].gcc_bb, bb_map[pc].gcc_bb);
+ bb_map[op].top = stack;
break;
CASE (BRgotoifnilelsepop)
gcc_jit_lvalue_as_rvalue (TOS),
nil,
bb_map[op].gcc_bb, bb_map[pc].gcc_bb);
+ bb_map[op].top = stack;
POP1;
break;
gcc_jit_lvalue_as_rvalue (TOS),
nil,
bb_map[op].gcc_bb, bb_map[pc].gcc_bb);
+ bb_map[op].top = stack;
POP1;
break;