diff options
| author | Mike Pall <mike> | 2016-03-31 04:17:21 +0200 |
|---|---|---|
| committer | Mike Pall <mike> | 2016-03-31 04:17:21 +0200 |
| commit | 296f0ca8d7c063cca1b6ddc0a48ceddff09d53b1 (patch) | |
| tree | 05acf00d6ee3c4141c4b554b7ffb232f1825d103 | |
| parent | 6e623b991466ca6e013bc1ca9774fce27a9d4693 (diff) | |
| download | luajit-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.
| -rw-r--r-- | src/vm_x64.dasc | 9 |
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] |
