Rename lib prefix to '~lib' (parens aren't valid); Add built-in alignof<T>; Prepare for ArrayBufferView

This commit is contained in:
dcodeIO
2018-04-02 19:05:26 +02:00
parent 3b50720603
commit 06198a3723
51 changed files with 2286 additions and 2209 deletions

View File

@ -55,17 +55,17 @@
(export "tanh" (func $std/libm/tanh))
(export "trunc" (func $std/libm/trunc))
(export "memory" (memory $0))
(func "$(lib)/math/NativeMath.abs" (; 0 ;) (type $FF) (param $0 f64) (result f64)
(func $~lib/math/NativeMath.abs (; 0 ;) (type $FF) (param $0 f64) (result f64)
(f64.abs
(get_local $0)
)
)
(func $std/libm/abs (; 1 ;) (type $FF) (param $0 f64) (result f64)
(call "$(lib)/math/NativeMath.abs"
(call $~lib/math/NativeMath.abs
(get_local $0)
)
)
(func "$(lib)/math/R" (; 2 ;) (type $FF) (param $0 f64) (result f64)
(func $~lib/math/R (; 2 ;) (type $FF) (param $0 f64) (result f64)
(f64.div
(f64.mul
(get_local $0)
@ -128,7 +128,7 @@
)
)
)
(func "$(lib)/math/NativeMath.acos" (; 3 ;) (type $FF) (param $0 f64) (result f64)
(func $~lib/math/NativeMath.acos (; 3 ;) (type $FF) (param $0 f64) (result f64)
(local $1 f64)
(local $2 i32)
(local $3 f64)
@ -217,7 +217,7 @@
(f64.const 6.123233995736766e-17)
(f64.mul
(get_local $0)
(call "$(lib)/math/R"
(call $~lib/math/R
(f64.mul
(get_local $0)
(get_local $0)
@ -256,7 +256,7 @@
)
(f64.sub
(f64.mul
(call "$(lib)/math/R"
(call $~lib/math/R
(get_local $0)
)
(get_local $1)
@ -295,7 +295,7 @@
)
(f64.add
(f64.mul
(call "$(lib)/math/R"
(call $~lib/math/R
(get_local $0)
)
(get_local $1)
@ -318,11 +318,11 @@
)
)
(func $std/libm/acos (; 4 ;) (type $FF) (param $0 f64) (result f64)
(call "$(lib)/math/NativeMath.acos"
(call $~lib/math/NativeMath.acos
(get_local $0)
)
)
(func "$(lib)/math/NativeMath.log1p" (; 5 ;) (type $FF) (param $0 f64) (result f64)
(func $~lib/math/NativeMath.log1p (; 5 ;) (type $FF) (param $0 f64) (result f64)
(local $1 f64)
(local $2 i32)
(local $3 i32)
@ -617,7 +617,7 @@
)
)
)
(func "$(lib)/math/NativeMath.log" (; 6 ;) (type $FF) (param $0 f64) (result f64)
(func $~lib/math/NativeMath.log (; 6 ;) (type $FF) (param $0 f64) (result f64)
(local $1 i32)
(local $2 i32)
(local $3 i64)
@ -882,7 +882,7 @@
)
)
)
(func "$(lib)/math/NativeMath.acosh" (; 7 ;) (type $FF) (param $0 f64) (result f64)
(func $~lib/math/NativeMath.acosh (; 7 ;) (type $FF) (param $0 f64) (result f64)
(local $1 i64)
(if
(i64.lt_u
@ -900,7 +900,7 @@
(i64.const 1024)
)
(return
(call "$(lib)/math/NativeMath.log1p"
(call $~lib/math/NativeMath.log1p
(f64.add
(f64.sub
(get_local $0)
@ -937,7 +937,7 @@
(i64.const 1049)
)
(return
(call "$(lib)/math/NativeMath.log"
(call $~lib/math/NativeMath.log
(f64.sub
(f64.mul
(f64.const 2)
@ -963,18 +963,18 @@
)
)
(f64.add
(call "$(lib)/math/NativeMath.log"
(call $~lib/math/NativeMath.log
(get_local $0)
)
(f64.const 0.6931471805599453)
)
)
(func $std/libm/acosh (; 8 ;) (type $FF) (param $0 f64) (result f64)
(call "$(lib)/math/NativeMath.acosh"
(call $~lib/math/NativeMath.acosh
(get_local $0)
)
)
(func "$(lib)/math/NativeMath.asin" (; 9 ;) (type $FF) (param $0 f64) (result f64)
(func $~lib/math/NativeMath.asin (; 9 ;) (type $FF) (param $0 f64) (result f64)
(local $1 f64)
(local $2 i32)
(local $3 i32)
@ -1066,7 +1066,7 @@
(get_local $0)
(f64.mul
(get_local $0)
(call "$(lib)/math/R"
(call $~lib/math/R
(f64.mul
(get_local $0)
(get_local $0)
@ -1093,7 +1093,7 @@
)
)
(set_local $4
(call "$(lib)/math/R"
(call $~lib/math/R
(get_local $1)
)
)
@ -1184,11 +1184,11 @@
(get_local $0)
)
(func $std/libm/asin (; 10 ;) (type $FF) (param $0 f64) (result f64)
(call "$(lib)/math/NativeMath.asin"
(call $~lib/math/NativeMath.asin
(get_local $0)
)
)
(func "$(lib)/math/NativeMath.asinh" (; 11 ;) (type $FF) (param $0 f64) (result f64)
(func $~lib/math/NativeMath.asinh (; 11 ;) (type $FF) (param $0 f64) (result f64)
(local $1 i64)
(local $2 i64)
(local $3 i64)
@ -1226,7 +1226,7 @@
)
(set_local $0
(f64.add
(call "$(lib)/math/NativeMath.log"
(call $~lib/math/NativeMath.log
(get_local $0)
)
(f64.const 0.6931471805599453)
@ -1238,7 +1238,7 @@
(i64.const 1024)
)
(set_local $0
(call "$(lib)/math/NativeMath.log"
(call $~lib/math/NativeMath.log
(f64.add
(f64.mul
(f64.const 2)
@ -1268,7 +1268,7 @@
(i64.const 997)
)
(set_local $0
(call "$(lib)/math/NativeMath.log1p"
(call $~lib/math/NativeMath.log1p
(f64.add
(get_local $0)
(f64.div
@ -1307,11 +1307,11 @@
)
)
(func $std/libm/asinh (; 12 ;) (type $FF) (param $0 f64) (result f64)
(call "$(lib)/math/NativeMath.asinh"
(call $~lib/math/NativeMath.asinh
(get_local $0)
)
)
(func "$(lib)/math/NativeMath.atan" (; 13 ;) (type $FF) (param $0 f64) (result f64)
(func $~lib/math/NativeMath.atan (; 13 ;) (type $FF) (param $0 f64) (result f64)
(local $1 f64)
(local $2 f64)
(local $3 i32)
@ -1672,11 +1672,11 @@
)
)
(func $std/libm/atan (; 14 ;) (type $FF) (param $0 f64) (result f64)
(call "$(lib)/math/NativeMath.atan"
(call $~lib/math/NativeMath.atan
(get_local $0)
)
)
(func "$(lib)/math/NativeMath.atanh" (; 15 ;) (type $FF) (param $0 f64) (result f64)
(func $~lib/math/NativeMath.atanh (; 15 ;) (type $FF) (param $0 f64) (result f64)
(local $1 i64)
(local $2 i64)
(local $3 i64)
@ -1720,7 +1720,7 @@
(set_local $0
(f64.mul
(f64.const 0.5)
(call "$(lib)/math/NativeMath.log1p"
(call $~lib/math/NativeMath.log1p
(f64.add
(f64.mul
(f64.const 2)
@ -1747,7 +1747,7 @@
(set_local $0
(f64.mul
(f64.const 0.5)
(call "$(lib)/math/NativeMath.log1p"
(call $~lib/math/NativeMath.log1p
(f64.mul
(f64.const 2)
(f64.div
@ -1774,11 +1774,11 @@
)
)
(func $std/libm/atanh (; 16 ;) (type $FF) (param $0 f64) (result f64)
(call "$(lib)/math/NativeMath.atanh"
(call $~lib/math/NativeMath.atanh
(get_local $0)
)
)
(func "$(lib)/math/NativeMath.atan2" (; 17 ;) (type $FFF) (param $0 f64) (param $1 f64) (result f64)
(func $~lib/math/NativeMath.atan2 (; 17 ;) (type $FFF) (param $0 f64) (param $1 f64) (result f64)
(local $2 i32)
(local $3 i32)
(local $4 i32)
@ -1855,7 +1855,7 @@
)
)
(return
(call "$(lib)/math/NativeMath.atan"
(call $~lib/math/NativeMath.atan
(get_local $0)
)
)
@ -2057,7 +2057,7 @@
(get_local $2)
)
(f64.const 0)
(call "$(lib)/math/NativeMath.atan"
(call $~lib/math/NativeMath.atan
(f64.abs
(f64.div
(get_local $0)
@ -2121,12 +2121,12 @@
)
)
(func $std/libm/atan2 (; 18 ;) (type $FFF) (param $0 f64) (param $1 f64) (result f64)
(call "$(lib)/math/NativeMath.atan2"
(call $~lib/math/NativeMath.atan2
(get_local $0)
(get_local $1)
)
)
(func "$(lib)/math/NativeMath.cbrt" (; 19 ;) (type $FF) (param $0 f64) (result f64)
(func $~lib/math/NativeMath.cbrt (; 19 ;) (type $FF) (param $0 f64) (result f64)
(local $1 f64)
(local $2 f64)
(local $3 i32)
@ -2310,21 +2310,21 @@
)
)
(func $std/libm/cbrt (; 20 ;) (type $FF) (param $0 f64) (result f64)
(call "$(lib)/math/NativeMath.cbrt"
(call $~lib/math/NativeMath.cbrt
(get_local $0)
)
)
(func "$(lib)/math/NativeMath.ceil" (; 21 ;) (type $FF) (param $0 f64) (result f64)
(func $~lib/math/NativeMath.ceil (; 21 ;) (type $FF) (param $0 f64) (result f64)
(f64.ceil
(get_local $0)
)
)
(func $std/libm/ceil (; 22 ;) (type $FF) (param $0 f64) (result f64)
(call "$(lib)/math/NativeMath.ceil"
(call $~lib/math/NativeMath.ceil
(get_local $0)
)
)
(func "$(lib)/math/NativeMath.clz32" (; 23 ;) (type $FF) (param $0 f64) (result f64)
(func $~lib/math/NativeMath.clz32 (; 23 ;) (type $FF) (param $0 f64) (result f64)
(f64.convert_s/i32
(i32.clz
(i32.trunc_s/f64
@ -2334,19 +2334,19 @@
)
)
(func $std/libm/clz32 (; 24 ;) (type $FF) (param $0 f64) (result f64)
(call "$(lib)/math/NativeMath.clz32"
(call $~lib/math/NativeMath.clz32
(get_local $0)
)
)
(func "$(lib)/math/NativeMath.cos" (; 25 ;) (type $FF) (param $0 f64) (result f64)
(func $~lib/math/NativeMath.cos (; 25 ;) (type $FF) (param $0 f64) (result f64)
(unreachable)
)
(func $std/libm/cos (; 26 ;) (type $FF) (param $0 f64) (result f64)
(call "$(lib)/math/NativeMath.cos"
(call $~lib/math/NativeMath.cos
(get_local $0)
)
)
(func "$(lib)/math/NativeMath.expm1" (; 27 ;) (type $FF) (param $0 f64) (result f64)
(func $~lib/math/NativeMath.expm1 (; 27 ;) (type $FF) (param $0 f64) (result f64)
(local $1 f64)
(local $2 i32)
(local $3 f64)
@ -2789,7 +2789,7 @@
)
)
)
(func "$(lib)/math/NativeMath.scalbn" (; 28 ;) (type $FiF) (param $0 f64) (param $1 i32) (result f64)
(func $~lib/math/NativeMath.scalbn (; 28 ;) (type $FiF) (param $0 f64) (param $1 i32) (result f64)
(local $2 f64)
(set_local $2
(get_local $0)
@ -2903,7 +2903,7 @@
)
)
)
(func "$(lib)/math/NativeMath.exp" (; 29 ;) (type $FF) (param $0 f64) (result f64)
(func $~lib/math/NativeMath.exp (; 29 ;) (type $FF) (param $0 f64) (result f64)
(local $1 i32)
(local $2 f64)
(local $3 i32)
@ -3105,16 +3105,16 @@
(get_local $0)
)
)
(call "$(lib)/math/NativeMath.scalbn"
(call $~lib/math/NativeMath.scalbn
(get_local $0)
(get_local $3)
)
)
(func "$(lib)/math/expo2" (; 30 ;) (type $FF) (param $0 f64) (result f64)
(func $~lib/math/expo2 (; 30 ;) (type $FF) (param $0 f64) (result f64)
(local $1 f64)
(f64.mul
(f64.mul
(call "$(lib)/math/NativeMath.exp"
(call $~lib/math/NativeMath.exp
(f64.sub
(get_local $0)
(f64.const 1416.0996898839683)
@ -3127,7 +3127,7 @@
(get_local $1)
)
)
(func "$(lib)/math/NativeMath.cosh" (; 31 ;) (type $FF) (param $0 f64) (result f64)
(func $~lib/math/NativeMath.cosh (; 31 ;) (type $FF) (param $0 f64) (result f64)
(local $1 i32)
(local $2 i64)
(set_local $0
@ -3170,7 +3170,7 @@
(f64.div
(f64.mul
(tee_local $0
(call "$(lib)/math/NativeMath.expm1"
(call $~lib/math/NativeMath.expm1
(get_local $0)
)
)
@ -3198,7 +3198,7 @@
(f64.const 0.5)
(f64.add
(tee_local $0
(call "$(lib)/math/NativeMath.exp"
(call $~lib/math/NativeMath.exp
(get_local $0)
)
)
@ -3210,46 +3210,46 @@
)
)
)
(call "$(lib)/math/expo2"
(call $~lib/math/expo2
(get_local $0)
)
)
(func $std/libm/cosh (; 32 ;) (type $FF) (param $0 f64) (result f64)
(call "$(lib)/math/NativeMath.cosh"
(call $~lib/math/NativeMath.cosh
(get_local $0)
)
)
(func $std/libm/exp (; 33 ;) (type $FF) (param $0 f64) (result f64)
(call "$(lib)/math/NativeMath.exp"
(call $~lib/math/NativeMath.exp
(get_local $0)
)
)
(func $std/libm/expm1 (; 34 ;) (type $FF) (param $0 f64) (result f64)
(call "$(lib)/math/NativeMath.expm1"
(call $~lib/math/NativeMath.expm1
(get_local $0)
)
)
(func "$(lib)/math/NativeMath.floor" (; 35 ;) (type $FF) (param $0 f64) (result f64)
(func $~lib/math/NativeMath.floor (; 35 ;) (type $FF) (param $0 f64) (result f64)
(f64.floor
(get_local $0)
)
)
(func $std/libm/floor (; 36 ;) (type $FF) (param $0 f64) (result f64)
(call "$(lib)/math/NativeMath.floor"
(call $~lib/math/NativeMath.floor
(get_local $0)
)
)
(func "$(lib)/math/NativeMath.fround" (; 37 ;) (type $Ff) (param $0 f64) (result f32)
(func $~lib/math/NativeMath.fround (; 37 ;) (type $Ff) (param $0 f64) (result f32)
(f32.demote/f64
(get_local $0)
)
)
(func $std/libm/fround (; 38 ;) (type $Ff) (param $0 f64) (result f32)
(call "$(lib)/math/NativeMath.fround"
(call $~lib/math/NativeMath.fround
(get_local $0)
)
)
(func "$(lib)/math/NativeMath.hypot" (; 39 ;) (type $FFF) (param $0 f64) (param $1 f64) (result f64)
(func $~lib/math/NativeMath.hypot (; 39 ;) (type $FFF) (param $0 f64) (param $1 f64) (result f64)
(local $2 f64)
(local $3 f64)
(local $4 i64)
@ -3519,12 +3519,12 @@
)
)
(func $std/libm/hypot (; 40 ;) (type $FFF) (param $0 f64) (param $1 f64) (result f64)
(call "$(lib)/math/NativeMath.hypot"
(call $~lib/math/NativeMath.hypot
(get_local $0)
(get_local $1)
)
)
(func "$(lib)/math/NativeMath.imul" (; 41 ;) (type $FFF) (param $0 f64) (param $1 f64) (result f64)
(func $~lib/math/NativeMath.imul (; 41 ;) (type $FFF) (param $0 f64) (param $1 f64) (result f64)
(f64.convert_s/i32
(i32.mul
(i32.trunc_s/f64
@ -3537,17 +3537,17 @@
)
)
(func $std/libm/imul (; 42 ;) (type $FFF) (param $0 f64) (param $1 f64) (result f64)
(call "$(lib)/math/NativeMath.imul"
(call $~lib/math/NativeMath.imul
(get_local $0)
(get_local $1)
)
)
(func $std/libm/log (; 43 ;) (type $FF) (param $0 f64) (result f64)
(call "$(lib)/math/NativeMath.log"
(call $~lib/math/NativeMath.log
(get_local $0)
)
)
(func "$(lib)/math/NativeMath.log10" (; 44 ;) (type $FF) (param $0 f64) (result f64)
(func $~lib/math/NativeMath.log10 (; 44 ;) (type $FF) (param $0 f64) (result f64)
(local $1 f64)
(local $2 i32)
(local $3 i32)
@ -3866,16 +3866,16 @@
)
)
(func $std/libm/log10 (; 45 ;) (type $FF) (param $0 f64) (result f64)
(call "$(lib)/math/NativeMath.log10"
(call $~lib/math/NativeMath.log10
(get_local $0)
)
)
(func $std/libm/log1p (; 46 ;) (type $FF) (param $0 f64) (result f64)
(call "$(lib)/math/NativeMath.log1p"
(call $~lib/math/NativeMath.log1p
(get_local $0)
)
)
(func "$(lib)/math/NativeMath.log2" (; 47 ;) (type $FF) (param $0 f64) (result f64)
(func $~lib/math/NativeMath.log2 (; 47 ;) (type $FF) (param $0 f64) (result f64)
(local $1 f64)
(local $2 i32)
(local $3 f64)
@ -4182,35 +4182,35 @@
)
)
(func $std/libm/log2 (; 48 ;) (type $FF) (param $0 f64) (result f64)
(call "$(lib)/math/NativeMath.log2"
(call $~lib/math/NativeMath.log2
(get_local $0)
)
)
(func "$(lib)/math/NativeMath.max" (; 49 ;) (type $FFF) (param $0 f64) (param $1 f64) (result f64)
(func $~lib/math/NativeMath.max (; 49 ;) (type $FFF) (param $0 f64) (param $1 f64) (result f64)
(f64.max
(get_local $0)
(get_local $1)
)
)
(func $std/libm/max (; 50 ;) (type $FFF) (param $0 f64) (param $1 f64) (result f64)
(call "$(lib)/math/NativeMath.max"
(call $~lib/math/NativeMath.max
(get_local $0)
(get_local $1)
)
)
(func "$(lib)/math/NativeMath.min" (; 51 ;) (type $FFF) (param $0 f64) (param $1 f64) (result f64)
(func $~lib/math/NativeMath.min (; 51 ;) (type $FFF) (param $0 f64) (param $1 f64) (result f64)
(f64.min
(get_local $0)
(get_local $1)
)
)
(func $std/libm/min (; 52 ;) (type $FFF) (param $0 f64) (param $1 f64) (result f64)
(call "$(lib)/math/NativeMath.min"
(call $~lib/math/NativeMath.min
(get_local $0)
(get_local $1)
)
)
(func "$(lib)/math/NativeMath.pow" (; 53 ;) (type $FFF) (param $0 f64) (param $1 f64) (result f64)
(func $~lib/math/NativeMath.pow (; 53 ;) (type $FFF) (param $0 f64) (param $1 f64) (result f64)
(local $2 f64)
(local $3 f64)
(local $4 i32)
@ -5566,7 +5566,7 @@
)
(i32.const 0)
)
(call "$(lib)/math/NativeMath.scalbn"
(call $~lib/math/NativeMath.scalbn
(get_local $2)
(get_local $4)
)
@ -5610,12 +5610,12 @@
)
)
(func $std/libm/pow (; 54 ;) (type $FFF) (param $0 f64) (param $1 f64) (result f64)
(call "$(lib)/math/NativeMath.pow"
(call $~lib/math/NativeMath.pow
(get_local $0)
(get_local $1)
)
)
(func "$(lib)/math/NativeMath.round" (; 55 ;) (type $FF) (param $0 f64) (result f64)
(func $~lib/math/NativeMath.round (; 55 ;) (type $FF) (param $0 f64) (result f64)
(local $1 f64)
(local $2 i64)
(local $3 i32)
@ -5749,11 +5749,11 @@
)
)
(func $std/libm/round (; 56 ;) (type $FF) (param $0 f64) (result f64)
(call "$(lib)/math/NativeMath.round"
(call $~lib/math/NativeMath.round
(get_local $0)
)
)
(func "$(lib)/math/NativeMath.sign" (; 57 ;) (type $FF) (param $0 f64) (result f64)
(func $~lib/math/NativeMath.sign (; 57 ;) (type $FF) (param $0 f64) (result f64)
(select
(f64.const 1)
(select
@ -5771,11 +5771,11 @@
)
)
(func $std/libm/sign (; 58 ;) (type $FF) (param $0 f64) (result f64)
(call "$(lib)/math/NativeMath.sign"
(call $~lib/math/NativeMath.sign
(get_local $0)
)
)
(func "$(lib)/math/NativeMath.sinh" (; 59 ;) (type $FF) (param $0 f64) (result f64)
(func $~lib/math/NativeMath.sinh (; 59 ;) (type $FF) (param $0 f64) (result f64)
(local $1 f64)
(local $2 f64)
(local $3 i64)
@ -5825,7 +5825,7 @@
)
(block
(set_local $1
(call "$(lib)/math/NativeMath.expm1"
(call $~lib/math/NativeMath.expm1
(get_local $1)
)
)
@ -5889,27 +5889,27 @@
(f64.const 2)
(get_local $2)
)
(call "$(lib)/math/expo2"
(call $~lib/math/expo2
(get_local $1)
)
)
)
(func $std/libm/sinh (; 60 ;) (type $FF) (param $0 f64) (result f64)
(call "$(lib)/math/NativeMath.sinh"
(call $~lib/math/NativeMath.sinh
(get_local $0)
)
)
(func "$(lib)/math/NativeMath.sqrt" (; 61 ;) (type $FF) (param $0 f64) (result f64)
(func $~lib/math/NativeMath.sqrt (; 61 ;) (type $FF) (param $0 f64) (result f64)
(f64.sqrt
(get_local $0)
)
)
(func $std/libm/sqrt (; 62 ;) (type $FF) (param $0 f64) (result f64)
(call "$(lib)/math/NativeMath.sqrt"
(call $~lib/math/NativeMath.sqrt
(get_local $0)
)
)
(func "$(lib)/math/NativeMath.tanh" (; 63 ;) (type $FF) (param $0 f64) (result f64)
(func $~lib/math/NativeMath.tanh (; 63 ;) (type $FF) (param $0 f64) (result f64)
(local $1 i64)
(local $2 i32)
(local $3 i32)
@ -5965,7 +5965,7 @@
(f64.div
(f64.const 2)
(f64.add
(call "$(lib)/math/NativeMath.expm1"
(call $~lib/math/NativeMath.expm1
(f64.mul
(f64.const 2)
(get_local $0)
@ -5985,7 +5985,7 @@
(set_local $0
(f64.div
(tee_local $0
(call "$(lib)/math/NativeMath.expm1"
(call $~lib/math/NativeMath.expm1
(f64.mul
(f64.const 2)
(get_local $0)
@ -6007,7 +6007,7 @@
(f64.div
(f64.neg
(tee_local $0
(call "$(lib)/math/NativeMath.expm1"
(call $~lib/math/NativeMath.expm1
(f64.mul
(f64.const -2)
(get_local $0)
@ -6033,17 +6033,17 @@
)
)
(func $std/libm/tanh (; 64 ;) (type $FF) (param $0 f64) (result f64)
(call "$(lib)/math/NativeMath.tanh"
(call $~lib/math/NativeMath.tanh
(get_local $0)
)
)
(func "$(lib)/math/NativeMath.trunc" (; 65 ;) (type $FF) (param $0 f64) (result f64)
(func $~lib/math/NativeMath.trunc (; 65 ;) (type $FF) (param $0 f64) (result f64)
(f64.trunc
(get_local $0)
)
)
(func $std/libm/trunc (; 66 ;) (type $FF) (param $0 f64) (result f64)
(call "$(lib)/math/NativeMath.trunc"
(call $~lib/math/NativeMath.trunc
(get_local $0)
)
)