diff options
author | Mike Pall <mike> | 2013-04-22 22:30:33 +0200 |
---|---|---|
committer | Mike Pall <mike> | 2013-04-22 22:30:33 +0200 |
commit | 2ab5e7c5dce9e8bd19b7f4c9d7a90ef30af53d0a (patch) | |
tree | b5c8bc2550e52663e57d95218917f5a22a9d6820 | |
parent | 2cd4ce614167804896c54e04d3d8a69ec16321c7 (diff) | |
parent | 611ec41bcaeaf6641cffe22d6c5c9ff8d12b7321 (diff) | |
download | luajit-2ab5e7c5dce9e8bd19b7f4c9d7a90ef30af53d0a.tar.gz luajit-2ab5e7c5dce9e8bd19b7f4c9d7a90ef30af53d0a.tar.bz2 luajit-2ab5e7c5dce9e8bd19b7f4c9d7a90ef30af53d0a.zip |
Merge branch 'master' into v2.1
-rw-r--r-- | src/lj_asm_arm.h | 11 |
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. */ |
1725 | static void asm_int64comp(ASMState *as, IRIns *ir) | 1726 | static 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) { |