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

@ -9,40 +9,40 @@
(type $iiiv (func (param i32 i32 i32)))
(type $v (func))
(import "env" "abort" (func $abort (param i32 i32 i32 i32)))
(global "$(lib)/allocator/arena/startOffset" (mut i32) (i32.const 0))
(global "$(lib)/allocator/arena/offset" (mut i32) (i32.const 0))
(global $~lib/allocator/arena/startOffset (mut i32) (i32.const 0))
(global $~lib/allocator/arena/offset (mut i32) (i32.const 0))
(global $std/string/str (mut i32) (i32.const 4))
(global $argumentCount (mut i32) (i32.const 0))
(global $std/string/c (mut i32) (i32.const 0))
(global $HEAP_BASE i32 (i32.const 348))
(global $HEAP_BASE i32 (i32.const 344))
(memory $0 1)
(data (i32.const 4) "\10\00\00\00h\00i\00,\00 \00I\00\'\00m\00 \00a\00 \00s\00t\00r\00i\00n\00g")
(data (i32.const 40) "\0d\00\00\00s\00t\00d\00/\00s\00t\00r\00i\00n\00g\00.\00t\00s")
(data (i32.const 72) "\0f\00\00\00(\00l\00i\00b\00)\00/\00s\00t\00r\00i\00n\00g\00.\00t\00s")
(data (i32.const 108) "\02\00\00\00h\00i")
(data (i32.const 116) "\04\00\00\00n\00u\00l\00l")
(data (i32.const 128) "\06\00\00\00s\00t\00r\00i\00n\00g")
(data (i32.const 144) "\03\00\00\00I\00\'\00m")
(data (i32.const 156) "\01\00\00\00,")
(data (i32.const 164) "\01\00\00\00x")
(data (i32.const 172) "\01\00\00\000")
(data (i32.const 180) "\01\00\00\001")
(data (i32.const 188) "\05\00\00\000\00b\001\000\001")
(data (i32.const 204) "\05\00\00\000\00o\007\000\007")
(data (i32.const 220) "\05\00\00\000\00x\00f\000\00f")
(data (i32.const 236) "\05\00\00\000\00x\00F\000\00F")
(data (i32.const 252) "\03\00\00\000\001\001")
(data (i32.const 264) "\04\00\00\000\00x\001\00g")
(data (i32.const 276) "\03\00\00\000\00.\001")
(data (i32.const 288) "\03\00\00\00.\002\005")
(data (i32.const 300) "\08\00\00\00.\001\00f\00o\00o\00b\00a\00r")
(data (i32.const 320) "\01\00\00\00a")
(data (i32.const 328) "\01\00\00\00b")
(data (i32.const 340) "\02\00\00\00a\00b")
(data (i32.const 72) "\0e\00\00\00~\00l\00i\00b\00/\00s\00t\00r\00i\00n\00g\00.\00t\00s")
(data (i32.const 104) "\02\00\00\00h\00i")
(data (i32.const 112) "\04\00\00\00n\00u\00l\00l")
(data (i32.const 124) "\06\00\00\00s\00t\00r\00i\00n\00g")
(data (i32.const 140) "\03\00\00\00I\00\'\00m")
(data (i32.const 152) "\01\00\00\00,")
(data (i32.const 160) "\01\00\00\00x")
(data (i32.const 168) "\01\00\00\000")
(data (i32.const 176) "\01\00\00\001")
(data (i32.const 184) "\05\00\00\000\00b\001\000\001")
(data (i32.const 200) "\05\00\00\000\00o\007\000\007")
(data (i32.const 216) "\05\00\00\000\00x\00f\000\00f")
(data (i32.const 232) "\05\00\00\000\00x\00F\000\00F")
(data (i32.const 248) "\03\00\00\000\001\001")
(data (i32.const 260) "\04\00\00\000\00x\001\00g")
(data (i32.const 272) "\03\00\00\000\00.\001")
(data (i32.const 284) "\03\00\00\00.\002\005")
(data (i32.const 296) "\08\00\00\00.\001\00f\00o\00o\00b\00a\00r")
(data (i32.const 316) "\01\00\00\00a")
(data (i32.const 324) "\01\00\00\00b")
(data (i32.const 336) "\02\00\00\00a\00b")
(export "getString" (func $std/string/getString))
(export "memory" (memory $0))
(start $start)
(func "$(lib)/string/String#charCodeAt" (; 1 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
(func $~lib/string/String#charCodeAt (; 1 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
(if
(i32.eqz
(get_local $0)
@ -78,7 +78,7 @@
)
)
)
(func "$(lib)/memory/compare_memory" (; 2 ;) (type $iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
(func $~lib/memory/compare_memory (; 2 ;) (type $iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
(if
(i32.eq
(get_local $0)
@ -138,7 +138,7 @@
(i32.const 0)
)
)
(func "$(lib)/string/String.__eq" (; 3 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
(func $~lib/string/String.__eq (; 3 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32)
(if
(get_local $0)
@ -172,7 +172,7 @@
)
)
(i32.eqz
(call "$(lib)/memory/compare_memory"
(call $~lib/memory/compare_memory
(i32.add
(get_local $0)
(i32.const 4)
@ -188,7 +188,7 @@
)
)
)
(func "$(lib)/string/String#startsWith" (; 4 ;) (type $iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
(func $~lib/string/String#startsWith (; 4 ;) (type $iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
(local $3 i32)
(local $4 i32)
(local $5 i32)
@ -207,12 +207,12 @@
)
)
(if
(call "$(lib)/string/String.__eq"
(call $~lib/string/String.__eq
(get_local $1)
(i32.const 0)
)
(set_local $1
(i32.const 116)
(i32.const 112)
)
)
(if
@ -256,7 +256,7 @@
)
)
(i32.eqz
(call "$(lib)/memory/compare_memory"
(call $~lib/memory/compare_memory
(i32.add
(i32.add
(get_local $0)
@ -278,7 +278,7 @@
)
)
)
(func "$(lib)/string/String#startsWith|trampoline" (; 5 ;) (type $iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
(func $~lib/string/String#startsWith|trampoline (; 5 ;) (type $iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
(block $1of1
(block $0of1
(block $oob
@ -295,13 +295,13 @@
(i32.const 0)
)
)
(call "$(lib)/string/String#startsWith"
(call $~lib/string/String#startsWith
(get_local $0)
(get_local $1)
(get_local $2)
)
)
(func "$(lib)/string/String#endsWith" (; 6 ;) (type $iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
(func $~lib/string/String#endsWith (; 6 ;) (type $iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
(local $3 i32)
(if
(i32.eqz
@ -318,7 +318,7 @@
)
)
(if
(call "$(lib)/string/String.__eq"
(call $~lib/string/String.__eq
(get_local $1)
(i32.const 0)
)
@ -365,7 +365,7 @@
)
)
(i32.eqz
(call "$(lib)/memory/compare_memory"
(call $~lib/memory/compare_memory
(i32.add
(i32.add
(get_local $0)
@ -387,7 +387,7 @@
)
)
)
(func "$(lib)/string/String#endsWith|trampoline" (; 7 ;) (type $iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
(func $~lib/string/String#endsWith|trampoline (; 7 ;) (type $iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
(block $1of1
(block $0of1
(block $oob
@ -404,13 +404,13 @@
(i32.const 2147483647)
)
)
(call "$(lib)/string/String#endsWith"
(call $~lib/string/String#endsWith
(get_local $0)
(get_local $1)
(get_local $2)
)
)
(func "$(lib)/string/String#indexOf" (; 8 ;) (type $iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
(func $~lib/string/String#indexOf (; 8 ;) (type $iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
(local $3 i32)
(local $4 i32)
(local $5 i32)
@ -429,12 +429,12 @@
)
)
(if
(call "$(lib)/string/String.__eq"
(call $~lib/string/String.__eq
(get_local $1)
(i32.const 0)
)
(set_local $1
(i32.const 116)
(i32.const 112)
)
)
(set_local $4
@ -479,7 +479,7 @@
(block
(if
(i32.eqz
(call "$(lib)/memory/compare_memory"
(call $~lib/memory/compare_memory
(i32.add
(i32.add
(get_local $0)
@ -516,9 +516,9 @@
)
(i32.const -1)
)
(func "$(lib)/string/String#includes" (; 9 ;) (type $iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
(func $~lib/string/String#includes (; 9 ;) (type $iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
(i32.ne
(call "$(lib)/string/String#indexOf"
(call $~lib/string/String#indexOf
(get_local $0)
(get_local $1)
(get_local $2)
@ -526,7 +526,7 @@
(i32.const -1)
)
)
(func "$(lib)/string/String#includes|trampoline" (; 10 ;) (type $iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
(func $~lib/string/String#includes|trampoline (; 10 ;) (type $iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
(block $1of1
(block $0of1
(block $oob
@ -543,13 +543,13 @@
(i32.const 0)
)
)
(call "$(lib)/string/String#includes"
(call $~lib/string/String#includes
(get_local $0)
(get_local $1)
(get_local $2)
)
)
(func "$(lib)/string/String#indexOf|trampoline" (; 11 ;) (type $iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
(func $~lib/string/String#indexOf|trampoline (; 11 ;) (type $iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
(block $1of1
(block $0of1
(block $oob
@ -566,7 +566,7 @@
(i32.const 0)
)
)
(call "$(lib)/string/String#indexOf"
(call $~lib/string/String#indexOf
(get_local $0)
(get_local $1)
(get_local $2)
@ -575,7 +575,7 @@
(func $std/string/getString (; 12 ;) (type $i) (result i32)
(get_global $std/string/str)
)
(func "$(lib)/string/parse<f64>" (; 13 ;) (type $iiF) (param $0 i32) (param $1 i32) (result f64)
(func $~lib/string/parse<f64> (; 13 ;) (type $iiF) (param $0 i32) (param $1 i32) (result f64)
(local $2 i32)
(local $3 i32)
(local $4 i32)
@ -940,13 +940,13 @@
(get_local $5)
)
)
(func "$(lib)/string/parseInt" (; 14 ;) (type $iiF) (param $0 i32) (param $1 i32) (result f64)
(call "$(lib)/string/parse<f64>"
(func $~lib/string/parseInt (; 14 ;) (type $iiF) (param $0 i32) (param $1 i32) (result f64)
(call $~lib/string/parse<f64>
(get_local $0)
(get_local $1)
)
)
(func "$(lib)/string/parseInt|trampoline" (; 15 ;) (type $iiF) (param $0 i32) (param $1 i32) (result f64)
(func $~lib/string/parseInt|trampoline (; 15 ;) (type $iiF) (param $0 i32) (param $1 i32) (result f64)
(block $1of1
(block $0of1
(block $oob
@ -963,12 +963,12 @@
(i32.const 0)
)
)
(call "$(lib)/string/parseInt"
(call $~lib/string/parseInt
(get_local $0)
(get_local $1)
)
)
(func "$(lib)/string/parseFloat" (; 16 ;) (type $iF) (param $0 i32) (result f64)
(func $~lib/string/parseFloat (; 16 ;) (type $iF) (param $0 i32) (result f64)
(local $1 i32)
(local $2 i32)
(local $3 i32)
@ -1220,7 +1220,7 @@
(get_local $4)
)
)
(func "$(lib)/allocator/arena/allocate_memory" (; 17 ;) (type $ii) (param $0 i32) (result i32)
(func $~lib/allocator/arena/allocate_memory (; 17 ;) (type $ii) (param $0 i32) (result i32)
(local $1 i32)
(local $2 i32)
(local $3 i32)
@ -1240,7 +1240,7 @@
(i32.add
(i32.add
(tee_local $1
(get_global "$(lib)/allocator/arena/offset")
(get_global $~lib/allocator/arena/offset)
)
(get_local $0)
)
@ -1297,12 +1297,12 @@
)
)
)
(set_global "$(lib)/allocator/arena/offset"
(set_global $~lib/allocator/arena/offset
(get_local $2)
)
(get_local $1)
)
(func "$(lib)/string/allocate" (; 18 ;) (type $ii) (param $0 i32) (result i32)
(func $~lib/string/allocate (; 18 ;) (type $ii) (param $0 i32) (result i32)
(local $1 i32)
(if
(i32.le_s
@ -1321,7 +1321,7 @@
)
(i32.store
(tee_local $1
(call "$(lib)/allocator/arena/allocate_memory"
(call $~lib/allocator/arena/allocate_memory
(i32.add
(i32.shl
(get_local $0)
@ -1335,7 +1335,7 @@
)
(get_local $1)
)
(func "$(lib)/memory/copy_memory" (; 19 ;) (type $iiiv) (param $0 i32) (param $1 i32) (param $2 i32)
(func $~lib/memory/copy_memory (; 19 ;) (type $iiiv) (param $0 i32) (param $1 i32) (param $2 i32)
(local $3 i32)
(local $4 i32)
(loop $continue|0
@ -2911,7 +2911,7 @@
)
)
)
(func "$(lib)/memory/move_memory" (; 20 ;) (type $iiiv) (param $0 i32) (param $1 i32) (param $2 i32)
(func $~lib/memory/move_memory (; 20 ;) (type $iiiv) (param $0 i32) (param $1 i32) (param $2 i32)
(local $3 i32)
(if
(i32.eq
@ -2944,7 +2944,7 @@
(i32.const 1)
)
(block
(call "$(lib)/memory/copy_memory"
(call $~lib/memory/copy_memory
(get_local $0)
(get_local $1)
(get_local $2)
@ -3201,7 +3201,7 @@
)
)
)
(func "$(lib)/string/String#concat" (; 21 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
(func $~lib/string/String#concat (; 21 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32)
(local $3 i32)
(local $4 i32)
@ -3220,12 +3220,12 @@
)
)
(if
(call "$(lib)/string/String.__eq"
(call $~lib/string/String.__eq
(get_local $1)
(i32.const 0)
)
(set_local $1
(i32.const 116)
(i32.const 112)
)
)
(if
@ -3246,13 +3246,13 @@
)
)
(return
(i32.const 336)
(i32.const 332)
)
)
(call "$(lib)/memory/move_memory"
(call $~lib/memory/move_memory
(i32.add
(tee_local $2
(call "$(lib)/string/allocate"
(call $~lib/string/allocate
(get_local $2)
)
)
@ -3267,7 +3267,7 @@
(i32.const 1)
)
)
(call "$(lib)/memory/move_memory"
(call $~lib/memory/move_memory
(i32.add
(i32.add
(get_local $2)
@ -3289,22 +3289,22 @@
)
(get_local $2)
)
(func "$(lib)/string/String.__concat" (; 22 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
(func $~lib/string/String.__concat (; 22 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
(if
(i32.eqz
(get_local $0)
)
(set_local $0
(i32.const 116)
(i32.const 112)
)
)
(call "$(lib)/string/String#concat"
(call $~lib/string/String#concat
(get_local $0)
(get_local $1)
)
)
(func $start (; 23 ;) (type $v)
(set_global "$(lib)/allocator/arena/startOffset"
(set_global $~lib/allocator/arena/startOffset
(i32.and
(i32.add
(get_global $HEAP_BASE)
@ -3313,8 +3313,8 @@
(i32.const -8)
)
)
(set_global "$(lib)/allocator/arena/offset"
(get_global "$(lib)/allocator/arena/startOffset")
(set_global $~lib/allocator/arena/offset
(get_global $~lib/allocator/arena/startOffset)
)
(if
(i32.ne
@ -3350,7 +3350,7 @@
)
(if
(i32.ne
(call "$(lib)/string/String#charCodeAt"
(call $~lib/string/String#charCodeAt
(get_global $std/string/str)
(i32.const 0)
)
@ -3372,9 +3372,9 @@
(i32.const 1)
)
(i32.eqz
(call "$(lib)/string/String#startsWith|trampoline"
(call $~lib/string/String#startsWith|trampoline
(get_global $std/string/str)
(i32.const 108)
(i32.const 104)
(i32.const 0)
)
)
@ -3395,9 +3395,9 @@
(i32.const 1)
)
(i32.eqz
(call "$(lib)/string/String#endsWith|trampoline"
(call $~lib/string/String#endsWith|trampoline
(get_global $std/string/str)
(i32.const 128)
(i32.const 124)
(i32.const 0)
)
)
@ -3418,9 +3418,9 @@
(i32.const 1)
)
(i32.eqz
(call "$(lib)/string/String#includes|trampoline"
(call $~lib/string/String#includes|trampoline
(get_global $std/string/str)
(i32.const 144)
(i32.const 140)
(i32.const 0)
)
)
@ -3441,9 +3441,9 @@
(i32.const 1)
)
(i32.ne
(call "$(lib)/string/String#indexOf|trampoline"
(call $~lib/string/String#indexOf|trampoline
(get_global $std/string/str)
(i32.const 156)
(i32.const 152)
(i32.const 0)
)
(i32.const 2)
@ -3465,9 +3465,9 @@
(i32.const 1)
)
(i32.ne
(call "$(lib)/string/String#indexOf|trampoline"
(call $~lib/string/String#indexOf|trampoline
(get_global $std/string/str)
(i32.const 164)
(i32.const 160)
(i32.const 0)
)
(i32.const -1)
@ -3489,8 +3489,8 @@
(i32.const 1)
)
(f64.ne
(call "$(lib)/string/parseInt|trampoline"
(i32.const 172)
(call $~lib/string/parseInt|trampoline
(i32.const 168)
(i32.const 0)
)
(f64.const 0)
@ -3512,8 +3512,8 @@
(i32.const 1)
)
(f64.ne
(call "$(lib)/string/parseInt|trampoline"
(i32.const 180)
(call $~lib/string/parseInt|trampoline
(i32.const 176)
(i32.const 0)
)
(f64.const 1)
@ -3535,8 +3535,8 @@
(i32.const 1)
)
(f64.ne
(call "$(lib)/string/parseInt|trampoline"
(i32.const 188)
(call $~lib/string/parseInt|trampoline
(i32.const 184)
(i32.const 0)
)
(f64.const 5)
@ -3558,8 +3558,8 @@
(i32.const 1)
)
(f64.ne
(call "$(lib)/string/parseInt|trampoline"
(i32.const 204)
(call $~lib/string/parseInt|trampoline
(i32.const 200)
(i32.const 0)
)
(f64.const 455)
@ -3581,8 +3581,8 @@
(i32.const 1)
)
(f64.ne
(call "$(lib)/string/parseInt|trampoline"
(i32.const 220)
(call $~lib/string/parseInt|trampoline
(i32.const 216)
(i32.const 0)
)
(f64.const 3855)
@ -3604,8 +3604,8 @@
(i32.const 1)
)
(f64.ne
(call "$(lib)/string/parseInt|trampoline"
(i32.const 236)
(call $~lib/string/parseInt|trampoline
(i32.const 232)
(i32.const 0)
)
(f64.const 3855)
@ -3627,8 +3627,8 @@
(i32.const 1)
)
(f64.ne
(call "$(lib)/string/parseInt|trampoline"
(i32.const 252)
(call $~lib/string/parseInt|trampoline
(i32.const 248)
(i32.const 0)
)
(f64.const 11)
@ -3650,8 +3650,8 @@
(i32.const 1)
)
(f64.ne
(call "$(lib)/string/parseInt|trampoline"
(i32.const 264)
(call $~lib/string/parseInt|trampoline
(i32.const 260)
(i32.const 0)
)
(f64.const 1)
@ -3669,8 +3669,8 @@
)
(if
(f64.ne
(call "$(lib)/string/parseFloat"
(i32.const 172)
(call $~lib/string/parseFloat
(i32.const 168)
)
(f64.const 0)
)
@ -3686,8 +3686,8 @@
)
(if
(f64.ne
(call "$(lib)/string/parseFloat"
(i32.const 180)
(call $~lib/string/parseFloat
(i32.const 176)
)
(f64.const 1)
)
@ -3703,8 +3703,8 @@
)
(if
(f64.ne
(call "$(lib)/string/parseFloat"
(i32.const 276)
(call $~lib/string/parseFloat
(i32.const 272)
)
(f64.const 0.1)
)
@ -3720,8 +3720,8 @@
)
(if
(f64.ne
(call "$(lib)/string/parseFloat"
(i32.const 288)
(call $~lib/string/parseFloat
(i32.const 284)
)
(f64.const 0.25)
)
@ -3737,8 +3737,8 @@
)
(if
(f64.ne
(call "$(lib)/string/parseFloat"
(i32.const 300)
(call $~lib/string/parseFloat
(i32.const 296)
)
(f64.const 0.1)
)
@ -3753,16 +3753,16 @@
)
)
(set_global $std/string/c
(call "$(lib)/string/String.__concat"
(i32.const 320)
(i32.const 328)
(call $~lib/string/String.__concat
(i32.const 316)
(i32.const 324)
)
)
(if
(i32.eqz
(call "$(lib)/string/String.__eq"
(call $~lib/string/String.__eq
(get_global $std/string/c)
(i32.const 340)
(i32.const 336)
)
)
(block