aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/lj_asm.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/lj_asm.c b/src/lj_asm.c
index 48b6ec5a..4f5610b0 100644
--- a/src/lj_asm.c
+++ b/src/lj_asm.c
@@ -2655,7 +2655,7 @@ static void asm_phi_fixup(ASMState *as)
2655/* Setup right PHI reference. */ 2655/* Setup right PHI reference. */
2656static void asm_phi(ASMState *as, IRIns *ir) 2656static void asm_phi(ASMState *as, IRIns *ir)
2657{ 2657{
2658 RegSet allow = irt_isnum(ir->t) ? RSET_FPR : RSET_GPR; 2658 RegSet allow = (irt_isnum(ir->t) ? RSET_FPR : RSET_GPR) & ~as->phiset;
2659 RegSet afree = (as->freeset & allow); 2659 RegSet afree = (as->freeset & allow);
2660 IRIns *irl = IR(ir->op1); 2660 IRIns *irl = IR(ir->op1);
2661 IRIns *irr = IR(ir->op2); 2661 IRIns *irr = IR(ir->op2);