diff options
author | Mike Pall <mike> | 2012-10-07 15:47:11 +0200 |
---|---|---|
committer | Mike Pall <mike> | 2012-10-07 15:47:11 +0200 |
commit | 0561a5693884d76db5b75f7cc746478b325b311b (patch) | |
tree | beef0d8674adf5b0f24a101e4e92613ee85e996e /src/vm_arm.dasc | |
parent | 0d62e2e1ab450a2d2d2291dc9da43606bd573bf7 (diff) | |
download | luajit2-0561a5693884d76db5b75f7cc746478b325b311b.tar.gz |
From Lua 5.2: Add math.log(x, base).
Diffstat (limited to 'src/vm_arm.dasc')
-rw-r--r-- | src/vm_arm.dasc | 23 |
1 files changed, 22 insertions, 1 deletions
diff --git a/src/vm_arm.dasc b/src/vm_arm.dasc index 31657b70..331a1b70 100644 --- a/src/vm_arm.dasc +++ b/src/vm_arm.dasc @@ -1468,7 +1468,28 @@ static void build_subroutines(BuildCtx *ctx) | math_extern sqrt |.endif | - | math_extern log + |.ffunc math_log + |.if HFABI + | ldr CARG2, [BASE, #4] + | cmp NARGS8:RC, #8 // Need exactly 1 argument. + | vldr d0, [BASE] + | bne ->fff_fallback + |.else + | ldrd CARG12, [BASE] + | cmp NARGS8:RC, #8 // Need exactly 1 argument. + | bne ->fff_fallback + |.endif + | checktp CARG2, LJ_TISNUM + | bhs ->fff_fallback + | .IOS mov RA, BASE + | bl extern log + | .IOS mov BASE, RA + |.if HFABI + | b ->fff_resd + |.else + | b ->fff_restv + |.endif + | | math_extern log10 | math_extern exp | math_extern sin |