aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMike Pall <mike>2010-12-31 22:17:44 +0100
committerMike Pall <mike>2010-12-31 22:18:14 +0100
commit007067bdd86c45809b831d386bbb90a02600c49d (patch)
tree4b883be7ffbe00e8974366820872176dfd77cdde /src
parent783dbd335f8b4f08fdcfb62ebc625570ee8a2362 (diff)
downloadluajit-007067bdd86c45809b831d386bbb90a02600c49d.tar.gz
luajit-007067bdd86c45809b831d386bbb90a02600c49d.tar.bz2
luajit-007067bdd86c45809b831d386bbb90a02600c49d.zip
Fix register allocation for FP <- int conversion.
Diffstat (limited to 'src')
-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 b9ada175..b01edfbf 100644
--- a/src/lj_asm.c
+++ b/src/lj_asm.c
@@ -1641,7 +1641,7 @@ static void asm_conv(ASMState *as, IRIns *ir)
1641 return; 1641 return;
1642#endif 1642#endif
1643 } else { /* Integer to FP conversion. */ 1643 } else { /* Integer to FP conversion. */
1644 Reg left = (LJ_64 && st == IRT_U32) ? ra_allocref(as, lref, RSET_GPR) : 1644 Reg left = (LJ_64 && st == IRT_U32) ? ra_alloc1(as, lref, RSET_GPR) :
1645 asm_fuseload(as, lref, RSET_GPR); 1645 asm_fuseload(as, lref, RSET_GPR);
1646 emit_mrm(as, irt_isnum(ir->t) ? XO_CVTSI2SD : XO_CVTSI2SS, 1646 emit_mrm(as, irt_isnum(ir->t) ? XO_CVTSI2SD : XO_CVTSI2SS,
1647 dest|((LJ_64 && (st64 || st == IRT_U32)) ? REX_64 : 0), left); 1647 dest|((LJ_64 && (st64 || st == IRT_U32)) ? REX_64 : 0), left);