Skip to content

Commit 6399e7d

Browse files
committed
ir/aarch64: emit cbz/cbnz instead of cmp + b.ne
1 parent 0e973e3 commit 6399e7d

1 file changed

Lines changed: 1 addition & 2 deletions

File tree

ext/opcache/jit/ir/ir_aarch64.dasc

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3469,8 +3469,7 @@ static void ir_emit_if_int(ir_ctx *ctx, uint32_t b, ir_ref def, ir_insn *insn, u
34693469
op2_reg = IR_REG_NUM(op2_reg);
34703470
ir_emit_load(ctx, type, op2_reg, insn->op2);
34713471
}
3472-
| ASM_REG_IMM_OP cmp, type, op2_reg, 0
3473-
ir_emit_jcc(ctx, b, def, insn, next_block, IR_NE, 1);
3472+
ir_emit_jz(ctx, b, next_block, IR_NE, type, op2_reg);
34743473
}
34753474

34763475
static void ir_emit_cond(ir_ctx *ctx, ir_ref def, ir_insn *insn)

0 commit comments

Comments
 (0)