aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMike Pall <mike>2016-03-31 04:17:21 +0200
committerMike Pall <mike>2016-03-31 04:17:21 +0200
commit296f0ca8d7c063cca1b6ddc0a48ceddff09d53b1 (patch)
tree05acf00d6ee3c4141c4b554b7ffb232f1825d103 /src
parent6e623b991466ca6e013bc1ca9774fce27a9d4693 (diff)
downloadluajit-296f0ca8d7c063cca1b6ddc0a48ceddff09d53b1.tar.gz
luajit-296f0ca8d7c063cca1b6ddc0a48ceddff09d53b1.tar.bz2
luajit-296f0ca8d7c063cca1b6ddc0a48ceddff09d53b1.zip
Windows/x64/LJ_GC64: Fix math.frexp() and math.modf() (again).
Thanks to Peter Cawley.
Diffstat (limited to 'src')
-rw-r--r--src/vm_x64.dasc9
1 files changed, 4 insertions, 5 deletions
diff --git a/src/vm_x64.dasc b/src/vm_x64.dasc
index 99ebb9b9..c7a7740b 100644
--- a/src/vm_x64.dasc
+++ b/src/vm_x64.dasc
@@ -1804,12 +1804,12 @@ static void build_subroutines(BuildCtx *ctx)
1804 | jmp ->fff_res1 1804 | jmp ->fff_res1
1805 | 1805 |
1806 |.ffunc_n math_frexp 1806 |.ffunc_n math_frexp
1807 | mov RB, BASE
1807 |.if X64WIN 1808 |.if X64WIN
1808 | lea CARG2, TMP1 1809 | lea CARG2, TMP1 // Caveat: CARG2 == BASE
1809 |.else 1810 |.else
1810 | lea CARG1, TMP1 1811 | lea CARG1, TMP1
1811 |.endif 1812 |.endif
1812 | mov RB, BASE
1813 | call extern frexp 1813 | call extern frexp
1814 | mov BASE, RB 1814 | mov BASE, RB
1815 | mov RBd, TMP1d 1815 | mov RBd, TMP1d
@@ -1826,13 +1826,12 @@ static void build_subroutines(BuildCtx *ctx)
1826 | jmp ->fff_res 1826 | jmp ->fff_res
1827 | 1827 |
1828 |.ffunc_n math_modf 1828 |.ffunc_n math_modf
1829 | mov RB, BASE
1829 |.if X64WIN 1830 |.if X64WIN
1830 | lea CARG2, [BASE-16] 1831 | lea CARG2, [BASE-16] // Caveat: CARG2 == BASE
1831 |.else 1832 |.else
1832 | lea CARG1, [BASE-16] 1833 | lea CARG1, [BASE-16]
1833 |.endif 1834 |.endif
1834 | mov PC, [BASE-8]
1835 | mov RB, BASE
1836 | call extern modf 1835 | call extern modf
1837 | mov BASE, RB 1836 | mov BASE, RB
1838 | mov PC, [BASE-8] 1837 | mov PC, [BASE-8]