From 6399e7d8736764bf09abc970f9a2702b4958a90a Mon Sep 17 00:00:00 2001 From: henderkes Date: Fri, 12 Jun 2026 13:24:56 +0000 Subject: [PATCH] ir/aarch64: emit cbz/cbnz instead of cmp + b.ne --- ext/opcache/jit/ir/ir_aarch64.dasc | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/ext/opcache/jit/ir/ir_aarch64.dasc b/ext/opcache/jit/ir/ir_aarch64.dasc index fc4bb84f1e05..92d16ca07888 100644 --- a/ext/opcache/jit/ir/ir_aarch64.dasc +++ b/ext/opcache/jit/ir/ir_aarch64.dasc @@ -3469,8 +3469,7 @@ static void ir_emit_if_int(ir_ctx *ctx, uint32_t b, ir_ref def, ir_insn *insn, u op2_reg = IR_REG_NUM(op2_reg); ir_emit_load(ctx, type, op2_reg, insn->op2); } - | ASM_REG_IMM_OP cmp, type, op2_reg, 0 - ir_emit_jcc(ctx, b, def, insn, next_block, IR_NE, 1); + ir_emit_jz(ctx, b, next_block, IR_NE, type, op2_reg); } static void ir_emit_cond(ir_ctx *ctx, ir_ref def, ir_insn *insn)