Windows/x64/LJ_GC64: Fix math.frexp() and math.modf() (again).
Thanks to Peter Cawley.
This commit is contained in:
parent
6e623b9914
commit
296f0ca8d7
@ -1804,12 +1804,12 @@ static void build_subroutines(BuildCtx *ctx)
|
|||||||
| jmp ->fff_res1
|
| jmp ->fff_res1
|
||||||
|
|
|
|
||||||
|.ffunc_n math_frexp
|
|.ffunc_n math_frexp
|
||||||
|
| mov RB, BASE
|
||||||
|.if X64WIN
|
|.if X64WIN
|
||||||
| lea CARG2, TMP1
|
| lea CARG2, TMP1 // Caveat: CARG2 == BASE
|
||||||
|.else
|
|.else
|
||||||
| lea CARG1, TMP1
|
| lea CARG1, TMP1
|
||||||
|.endif
|
|.endif
|
||||||
| mov RB, BASE
|
|
||||||
| call extern frexp
|
| call extern frexp
|
||||||
| mov BASE, RB
|
| mov BASE, RB
|
||||||
| mov RBd, TMP1d
|
| mov RBd, TMP1d
|
||||||
@ -1826,13 +1826,12 @@ static void build_subroutines(BuildCtx *ctx)
|
|||||||
| jmp ->fff_res
|
| jmp ->fff_res
|
||||||
|
|
|
|
||||||
|.ffunc_n math_modf
|
|.ffunc_n math_modf
|
||||||
|
| mov RB, BASE
|
||||||
|.if X64WIN
|
|.if X64WIN
|
||||||
| lea CARG2, [BASE-16]
|
| lea CARG2, [BASE-16] // Caveat: CARG2 == BASE
|
||||||
|.else
|
|.else
|
||||||
| lea CARG1, [BASE-16]
|
| lea CARG1, [BASE-16]
|
||||||
|.endif
|
|.endif
|
||||||
| mov PC, [BASE-8]
|
|
||||||
| mov RB, BASE
|
|
||||||
| call extern modf
|
| call extern modf
|
||||||
| mov BASE, RB
|
| mov BASE, RB
|
||||||
| mov PC, [BASE-8]
|
| mov PC, [BASE-8]
|
||||||
|
Loading…
Reference in New Issue
Block a user