aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMike Pall <mike>2012-11-07 18:05:23 +0100
committerMike Pall <mike>2012-11-07 18:05:23 +0100
commit061335899194145ca28f01eb499a1f7472c38fe8 (patch)
treed714b31f32d32f526c9f1261b29803792f17f052 /src
parent8a11869d4905249600ce34bc12a47d6058fa4e21 (diff)
downloadluajit-061335899194145ca28f01eb499a1f7472c38fe8.tar.gz
luajit-061335899194145ca28f01eb499a1f7472c38fe8.tar.bz2
luajit-061335899194145ca28f01eb499a1f7472c38fe8.zip
ARM: Fix ordered comparisons for number <=> non-number.
Diffstat (limited to 'src')
-rw-r--r--src/vm_arm.dasc2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/vm_arm.dasc b/src/vm_arm.dasc
index fb9363e4..7c419cde 100644
--- a/src/vm_arm.dasc
+++ b/src/vm_arm.dasc
@@ -2538,6 +2538,7 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop)
2538 | checktp CARG4, LJ_TISNUM 2538 | checktp CARG4, LJ_TISNUM
2539 | vldr d1, [RC] 2539 | vldr d1, [RC]
2540 | blo >5 2540 | blo >5
2541 | bhi ->vmeta_comp
2541 | // d0 is a number, CARG3 is an integer. 2542 | // d0 is a number, CARG3 is an integer.
2542 | vmov s4, CARG3 2543 | vmov s4, CARG3
2543 | vcvt.f64.s32 d1, s4 2544 | vcvt.f64.s32 d1, s4
@@ -2568,6 +2569,7 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop)
2568 | checktp CARG4, LJ_TISNUM 2569 | checktp CARG4, LJ_TISNUM
2569 | movlo RA, RB // Save RB. 2570 | movlo RA, RB // Save RB.
2570 | blo >5 2571 | blo >5
2572 | bhi ->vmeta_comp
2571 | // CARG12 is a number, CARG3 is an integer. 2573 | // CARG12 is a number, CARG3 is an integer.
2572 | mov CARG1, CARG3 2574 | mov CARG1, CARG3
2573 | mov RC, RA 2575 | mov RC, RA