aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Pall <mike>2013-04-22 22:30:33 +0200
committerMike Pall <mike>2013-04-22 22:30:33 +0200
commit2ab5e7c5dce9e8bd19b7f4c9d7a90ef30af53d0a (patch)
treeb5c8bc2550e52663e57d95218917f5a22a9d6820
parent2cd4ce614167804896c54e04d3d8a69ec16321c7 (diff)
parent611ec41bcaeaf6641cffe22d6c5c9ff8d12b7321 (diff)
downloadluajit-2ab5e7c5dce9e8bd19b7f4c9d7a90ef30af53d0a.tar.gz
luajit-2ab5e7c5dce9e8bd19b7f4c9d7a90ef30af53d0a.tar.bz2
luajit-2ab5e7c5dce9e8bd19b7f4c9d7a90ef30af53d0a.zip
Merge branch 'master' into v2.1
-rw-r--r--src/lj_asm_arm.h11
1 files changed, 8 insertions, 3 deletions
diff --git a/src/lj_asm_arm.h b/src/lj_asm_arm.h
index 37cbb5be..25a28bd7 100644
--- a/src/lj_asm_arm.h
+++ b/src/lj_asm_arm.h
@@ -1721,6 +1721,7 @@ notst:
1721 as->flagmcp = as->mcp; /* Allow elimination of the compare. */ 1721 as->flagmcp = as->mcp; /* Allow elimination of the compare. */
1722} 1722}
1723 1723
1724#if LJ_HASFFI
1724/* 64 bit integer comparisons. */ 1725/* 64 bit integer comparisons. */
1725static void asm_int64comp(ASMState *as, IRIns *ir) 1726static void asm_int64comp(ASMState *as, IRIns *ir)
1726{ 1727{
@@ -1756,6 +1757,7 @@ static void asm_int64comp(ASMState *as, IRIns *ir)
1756 } 1757 }
1757 emit_n(as, ARMI_CMP^mhi, lefthi); 1758 emit_n(as, ARMI_CMP^mhi, lefthi);
1758} 1759}
1760#endif
1759 1761
1760/* -- Support for 64 bit ops in 32 bit mode ------------------------------- */ 1762/* -- Support for 64 bit ops in 32 bit mode ------------------------------- */
1761 1763
@@ -1769,11 +1771,14 @@ static void asm_hiop(ASMState *as, IRIns *ir)
1769 if ((ir-1)->o <= IR_NE) { /* 64 bit integer or FP comparisons. ORDER IR. */ 1771 if ((ir-1)->o <= IR_NE) { /* 64 bit integer or FP comparisons. ORDER IR. */
1770 as->curins--; /* Always skip the loword comparison. */ 1772 as->curins--; /* Always skip the loword comparison. */
1771#if LJ_SOFTFP 1773#if LJ_SOFTFP
1772 if (!irt_isint(ir->t)) 1774 if (!irt_isint(ir->t)) {
1773 asm_sfpcomp(as, ir-1); 1775 asm_sfpcomp(as, ir-1);
1774 else 1776 return;
1777 }
1778#endif
1779#if LJ_HASFFI
1780 asm_int64comp(as, ir-1);
1775#endif 1781#endif
1776 asm_int64comp(as, ir-1);
1777 return; 1782 return;
1778#if LJ_SOFTFP 1783#if LJ_SOFTFP
1779 } else if ((ir-1)->o == IR_MIN || (ir-1)->o == IR_MAX) { 1784 } else if ((ir-1)->o == IR_MIN || (ir-1)->o == IR_MAX) {