From 325a1820eb2f9938a734f78619426eac8d490374 Mon Sep 17 00:00:00 2001 From: Mike Pall Date: Thu, 26 Apr 2012 23:34:54 +0200 Subject: [PATCH] ARM: Fix conditional branch fixup for OBAR. --- src/lj_asm_arm.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/lj_asm_arm.h b/src/lj_asm_arm.h index 0501f4bc..5ec3d59f 100644 --- a/src/lj_asm_arm.h +++ b/src/lj_asm_arm.h @@ -1017,8 +1017,8 @@ static void asm_obar(ASMState *as, IRIns *ir) args[0] = ASMREF_TMP1; /* global_State *g */ args[1] = ir->op1; /* TValue *tv */ asm_gencall(as, ci, args); - if ((*as->mcp >> 28) == CC_AL) - *as->mcp = ARMF_CC(*as->mcp, CC_NE); + if ((l_end[-1] >> 28) == CC_AL) + l_end[-1] = ARMF_CC(l_end[-1], CC_NE); else emit_branch(as, ARMF_CC(ARMI_B, CC_EQ), l_end); ra_allockreg(as, i32ptr(J2G(as->J)), ra_releasetmp(as, ASMREF_TMP1));