Update Binaryen and other dependencies; Update dist files

This commit is contained in:
dcode
2019-01-09 13:02:47 +01:00
parent f714afab3c
commit 20f4092eb2
52 changed files with 3970 additions and 4365 deletions

2
dist/asc.js vendored

File diff suppressed because one or more lines are too long

2
dist/asc.js.map vendored

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -28,18 +28,18 @@
get_local $1 get_local $1
i32.mul i32.mul
set_global $assembly/index/s set_global $assembly/index/s
block $break|0 i32.const 0
i32.const 0 set_local $0
set_local $0 loop $repeat|0
loop $repeat|0 block $break|0
get_local $0 get_local $0
get_global $assembly/index/h get_global $assembly/index/h
i32.ge_s i32.ge_s
br_if $break|0 br_if $break|0
block $break|1 i32.const 0
i32.const 0 set_local $1
set_local $1 loop $repeat|1
loop $repeat|1 block $break|1
get_local $1 get_local $1
get_global $assembly/index/w get_global $assembly/index/w
i32.ge_s i32.ge_s
@ -58,8 +58,8 @@
end end
set_local $2 set_local $2
get_global $assembly/index/s get_global $assembly/index/s
get_local $0
get_global $assembly/index/w get_global $assembly/index/w
get_local $0
i32.mul i32.mul
i32.add i32.add
get_local $1 get_local $1
@ -73,18 +73,14 @@
i32.add i32.add
set_local $1 set_local $1
br $repeat|1 br $repeat|1
unreachable
end end
unreachable
end end
get_local $0 get_local $0
i32.const 1 i32.const 1
i32.add i32.add
set_local $0 set_local $0
br $repeat|0 br $repeat|0
unreachable
end end
unreachable
end end
) )
(func $assembly/index/step (; 2 ;) (type $v) (func $assembly/index/step (; 2 ;) (type $v)
@ -104,61 +100,54 @@
i32.const 1 i32.const 1
i32.sub i32.sub
set_local $7 set_local $7
block $break|0 loop $repeat|0
loop $repeat|0 block $break|0
get_local $0 get_local $0
get_global $assembly/index/h get_global $assembly/index/h
i32.ge_s i32.ge_s
br_if $break|0 br_if $break|0
get_local $0 get_local $0
if (result i32) i32.const 1
get_local $0 i32.sub
i32.const 1 get_local $6
i32.sub get_local $0
else select
get_local $6
end
tee_local $2
set_local $4 set_local $4
i32.const 0
get_local $0
i32.const 1
i32.add
get_local $0 get_local $0
get_local $6 get_local $6
i32.eq i32.eq
if (result i32) select
i32.const 0
else
get_local $0
i32.const 1
i32.add
end
set_local $5 set_local $5
block $break|1 i32.const 0
i32.const 0 set_local $1
set_local $1 loop $repeat|1
loop $repeat|1 block $break|1
get_local $1 get_local $1
get_global $assembly/index/w get_global $assembly/index/w
i32.ge_s i32.ge_s
br_if $break|1 br_if $break|1
get_local $4
get_global $assembly/index/w
i32.mul
get_local $1 get_local $1
if (result i32) i32.const 1
get_local $1 i32.sub
i32.const 1 get_local $7
i32.sub get_local $1
else select
get_local $7
end
tee_local $2 tee_local $2
get_global $assembly/index/w
get_local $4
i32.mul
i32.add i32.add
i32.const 2 i32.const 2
i32.shl i32.shl
i32.load i32.load
i32.const 1 i32.const 1
i32.and i32.and
get_local $4
get_global $assembly/index/w get_global $assembly/index/w
get_local $4
i32.mul i32.mul
get_local $1 get_local $1
i32.add i32.add
@ -168,20 +157,18 @@
i32.const 1 i32.const 1
i32.and i32.and
i32.add i32.add
get_local $4 i32.const 0
get_global $assembly/index/w get_local $1
i32.mul i32.const 1
i32.add
get_local $1 get_local $1
get_local $7 get_local $7
i32.eq i32.eq
if (result i32) select
i32.const 0
else
get_local $1
i32.const 1
i32.add
end
tee_local $3 tee_local $3
get_global $assembly/index/w
get_local $4
i32.mul
i32.add i32.add
i32.const 2 i32.const 2
i32.shl i32.shl
@ -189,8 +176,8 @@
i32.const 1 i32.const 1
i32.and i32.and
i32.add i32.add
get_local $0
get_global $assembly/index/w get_global $assembly/index/w
get_local $0
i32.mul i32.mul
get_local $2 get_local $2
i32.add i32.add
@ -200,8 +187,8 @@
i32.const 1 i32.const 1
i32.and i32.and
i32.add i32.add
get_local $0
get_global $assembly/index/w get_global $assembly/index/w
get_local $0
i32.mul i32.mul
get_local $3 get_local $3
i32.add i32.add
@ -211,8 +198,8 @@
i32.const 1 i32.const 1
i32.and i32.and
i32.add i32.add
get_local $5
get_global $assembly/index/w get_global $assembly/index/w
get_local $5
i32.mul i32.mul
get_local $2 get_local $2
i32.add i32.add
@ -222,8 +209,8 @@
i32.const 1 i32.const 1
i32.and i32.and
i32.add i32.add
get_local $5
get_global $assembly/index/w get_global $assembly/index/w
get_local $5
i32.mul i32.mul
get_local $1 get_local $1
i32.add i32.add
@ -233,8 +220,8 @@
i32.const 1 i32.const 1
i32.and i32.and
i32.add i32.add
get_local $5
get_global $assembly/index/w get_global $assembly/index/w
get_local $5
i32.mul i32.mul
get_local $3 get_local $3
i32.add i32.add
@ -245,8 +232,8 @@
i32.and i32.and
i32.add i32.add
set_local $2 set_local $2
get_local $0
get_global $assembly/index/w get_global $assembly/index/w
get_local $0
i32.mul i32.mul
get_local $1 get_local $1
i32.add i32.add
@ -264,8 +251,8 @@
i32.eq i32.eq
if if
get_global $assembly/index/s get_global $assembly/index/s
get_local $0
get_global $assembly/index/w get_global $assembly/index/w
get_local $0
i32.mul i32.mul
i32.add i32.add
get_local $1 get_local $1
@ -273,6 +260,9 @@
i32.const 2 i32.const 2
i32.shl i32.shl
get_local $3 get_local $3
i32.const 16777215
i32.and
get_local $3
i32.const 24 i32.const 24
i32.shr_u i32.shr_u
get_global $assembly/config/BIT_ROT get_global $assembly/config/BIT_ROT
@ -285,15 +275,12 @@
select select
i32.const 24 i32.const 24
i32.shl i32.shl
get_local $3
i32.const 16777215
i32.and
i32.or i32.or
i32.store i32.store
else else
get_global $assembly/index/s get_global $assembly/index/s
get_local $0
get_global $assembly/index/w get_global $assembly/index/w
get_local $0
i32.mul i32.mul
i32.add i32.add
get_local $1 get_local $1
@ -311,8 +298,8 @@
i32.eq i32.eq
if if
get_global $assembly/index/s get_global $assembly/index/s
get_local $0
get_global $assembly/index/w get_global $assembly/index/w
get_local $0
i32.mul i32.mul
i32.add i32.add
get_local $1 get_local $1
@ -325,8 +312,8 @@
i32.store i32.store
else else
get_global $assembly/index/s get_global $assembly/index/s
get_local $0
get_global $assembly/index/w get_global $assembly/index/w
get_local $0
i32.mul i32.mul
i32.add i32.add
get_local $1 get_local $1
@ -334,6 +321,9 @@
i32.const 2 i32.const 2
i32.shl i32.shl
get_local $3 get_local $3
i32.const 16777215
i32.and
get_local $3
i32.const 24 i32.const 24
i32.shr_u i32.shr_u
get_global $assembly/config/BIT_ROT get_global $assembly/config/BIT_ROT
@ -346,9 +336,6 @@
select select
i32.const 24 i32.const 24
i32.shl i32.shl
get_local $3
i32.const 16777215
i32.and
i32.or i32.or
i32.store i32.store
end end
@ -358,24 +345,20 @@
i32.add i32.add
set_local $1 set_local $1
br $repeat|1 br $repeat|1
unreachable
end end
unreachable
end end
get_local $0 get_local $0
i32.const 1 i32.const 1
i32.add i32.add
set_local $0 set_local $0
br $repeat|0 br $repeat|0
unreachable
end end
unreachable
end end
) )
(func $assembly/index/fill (; 3 ;) (type $iiFv) (param $0 i32) (param $1 i32) (param $2 f64) (func $assembly/index/fill (; 3 ;) (type $iiFv) (param $0 i32) (param $1 i32) (param $2 f64)
(local $3 i32) (local $3 i32)
block $break|0 loop $repeat|0
loop $repeat|0 block $break|0
get_local $3 get_local $3
get_global $assembly/index/w get_global $assembly/index/w
i32.ge_s i32.ge_s
@ -385,8 +368,8 @@
f64.lt f64.lt
if if
get_global $assembly/index/s get_global $assembly/index/s
get_local $1
get_global $assembly/index/w get_global $assembly/index/w
get_local $1
i32.mul i32.mul
i32.add i32.add
get_local $3 get_local $3
@ -403,14 +386,12 @@
i32.add i32.add
set_local $3 set_local $3
br $repeat|0 br $repeat|0
unreachable
end end
unreachable
end end
block $break|1 i32.const 0
i32.const 0 set_local $3
set_local $3 loop $repeat|1
loop $repeat|1 block $break|1
get_local $3 get_local $3
get_global $assembly/index/h get_global $assembly/index/h
i32.ge_s i32.ge_s
@ -420,8 +401,8 @@
f64.lt f64.lt
if if
get_global $assembly/index/s get_global $assembly/index/s
get_local $3
get_global $assembly/index/w get_global $assembly/index/w
get_local $3
i32.mul i32.mul
i32.add i32.add
get_local $0 get_local $0
@ -438,9 +419,7 @@
i32.add i32.add
set_local $3 set_local $3
br $repeat|1 br $repeat|1
unreachable
end end
unreachable
end end
) )
(func $null (; 4 ;) (type $v) (func $null (; 4 ;) (type $v)

View File

@ -49,7 +49,7 @@
i32.lt_s i32.lt_s
i32.eqz i32.eqz
br_if $break|1 br_if $break|1
block $assembly/index/set|inlined.0 block
call $~lib/bindings/Math/random call $~lib/bindings/Math/random
f64.const 0.1 f64.const 0.1
f64.gt f64.gt
@ -317,7 +317,7 @@
i32.gt_s i32.gt_s
select select
set_local $10 set_local $10
block $assembly/index/set|inlined.1 block
get_local $10 get_local $10
i32.const 24 i32.const 24
i32.shl i32.shl
@ -389,7 +389,7 @@
i32.gt_s i32.gt_s
select select
set_local $10 set_local $10
block $assembly/index/set|inlined.4 block
get_local $10 get_local $10
i32.const 24 i32.const 24
i32.shl i32.shl

View File

@ -15,8 +15,8 @@
(local $4 f64) (local $4 f64)
(local $5 f64) (local $5 f64)
(local $6 f64) (local $6 f64)
(local $7 f64) (local $7 i32)
(local $8 i32) (local $8 f64)
(local $9 f64) (local $9 f64)
(local $10 f64) (local $10 f64)
(local $11 f64) (local $11 f64)
@ -26,73 +26,72 @@
tee_local $6 tee_local $6
f64.const 1.6 f64.const 1.6
f64.div f64.div
set_local $11 set_local $12
get_local $0
f64.convert_u/i32
get_local $2
f64.convert_u/i32
tee_local $4
f64.const 2
f64.div
tee_local $7
f64.sub
f64.const 10 f64.const 10
f64.const 3 f64.const 3
get_local $6 get_local $6
f64.mul f64.mul
f64.const 4 f64.const 4
get_local $4 get_local $2
f64.convert_u/i32
tee_local $4
f64.mul f64.mul
f64.min f64.min
f64.div f64.div
tee_local $12
f64.mul
set_local $9 set_local $9
block $break|0 get_local $0
loop $repeat|0 f64.convert_u/i32
get_local $8 get_local $4
get_local $1 f64.const 2
i32.ge_u f64.div
br_if $break|0 f64.sub
get_local $8 get_local $9
f64.mul
set_local $10
loop $repeat|0
get_local $7
get_local $1
i32.lt_u
if
get_local $7
f64.convert_u/i32 f64.convert_u/i32
get_local $11
f64.sub
get_local $12 get_local $12
f64.sub
get_local $9
f64.mul f64.mul
set_local $10 set_local $11
f64.const 0 f64.const 0
set_local $4 set_local $4
f64.const 0 f64.const 0
set_local $5 set_local $5
i32.const 0 i32.const 0
set_local $2 set_local $2
block $break|1 loop $continue|1
loop $continue|1 get_local $4
get_local $4 get_local $4
get_local $4 f64.mul
f64.mul tee_local $6
tee_local $6 get_local $5
get_local $5 get_local $5
get_local $5 f64.mul
f64.mul tee_local $8
tee_local $7 f64.add
f64.add f64.const 4
f64.const 4 f64.le
f64.le if
if block $break|1
f64.const 2 f64.const 2
get_local $4 get_local $4
f64.mul f64.mul
get_local $5 get_local $5
f64.mul f64.mul
get_local $9 get_local $10
f64.add f64.add
set_local $5 set_local $5
get_local $6 get_local $6
get_local $7 get_local $8
f64.sub f64.sub
get_local $10 get_local $11
f64.add f64.add
set_local $4 set_local $4
get_local $2 get_local $2
@ -107,19 +106,17 @@
end end
end end
end end
block $break|2 f64.const 8
f64.const 8 get_local $3
get_local $3 f64.convert_u/i32
f64.min
set_local $6
loop $repeat|2
get_local $2
f64.convert_u/i32 f64.convert_u/i32
f64.min get_local $6
set_local $6 f64.lt
loop $repeat|2 if
get_local $2
f64.convert_u/i32
get_local $6
f64.lt
i32.eqz
br_if $break|2
get_local $4 get_local $4
get_local $4 get_local $4
f64.mul f64.mul
@ -127,32 +124,30 @@
get_local $5 get_local $5
f64.mul f64.mul
f64.sub f64.sub
get_local $10 get_local $11
f64.add f64.add
set_local $7 set_local $8
f64.const 2 f64.const 2
get_local $4 get_local $4
f64.mul f64.mul
get_local $5 get_local $5
f64.mul f64.mul
get_local $9 get_local $10
f64.add f64.add
set_local $5 set_local $5
get_local $7 get_local $8
set_local $4 set_local $4
get_local $2 get_local $2
i32.const 1 i32.const 1
i32.add i32.add
set_local $2 set_local $2
br $repeat|2 br $repeat|2
unreachable
end end
unreachable
end end
get_local $0 get_local $0
get_local $1 get_local $1
i32.mul i32.mul
get_local $8 get_local $7
i32.add i32.add
i32.const 1 i32.const 1
i32.shl i32.shl
@ -193,16 +188,13 @@
else else
i32.const 2047 i32.const 2047
end end
tee_local $2
i32.store16 i32.store16
get_local $8 get_local $7
i32.const 1 i32.const 1
i32.add i32.add
set_local $8 set_local $7
br $repeat|0 br $repeat|0
unreachable
end end
unreachable
end end
) )
(func $null (; 3 ;) (type $v) (func $null (; 3 ;) (type $v)

View File

@ -107,12 +107,12 @@ function asmFunc(global, env, buffer) {
HEAP8[wasm2js_i32$0 >> 0] = wasm2js_i32$1; HEAP8[wasm2js_i32$0 >> 0] = wasm2js_i32$1;
if ($1 >>> 0 <= 8 >>> 0) return; if ($1 >>> 0 <= 8 >>> 0) return;
$2 = (0 - $0 | 0) & 3 | 0; $2 = (0 - $0 | 0) & 3 | 0;
$0 = $0 + $2 | 0; $0 = $2 + $0 | 0;
wasm2js_i32$0 = $0; wasm2js_i32$0 = $0;
wasm2js_i32$1 = 0; wasm2js_i32$1 = 0;
HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1; HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
$1 = ($1 - $2 | 0) & 4294967292 | 0; $1 = ($1 - $2 | 0) & 4294967292 | 0;
wasm2js_i32$0 = ($0 + $1 | 0) - 4 | 0; wasm2js_i32$0 = ($1 + $0 | 0) - 4 | 0;
wasm2js_i32$1 = 0; wasm2js_i32$1 = 0;
HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1; HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
if ($1 >>> 0 <= 8 >>> 0) return; if ($1 >>> 0 <= 8 >>> 0) return;
@ -156,7 +156,7 @@ function asmFunc(global, env, buffer) {
wasm2js_i32$1 = 0; wasm2js_i32$1 = 0;
HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1; HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
$2 = ($0 & 4 | 0) + 24 | 0; $2 = ($0 & 4 | 0) + 24 | 0;
$0 = $0 + $2 | 0; $0 = $2 + $0 | 0;
$1 = $1 - $2 | 0; $1 = $1 - $2 | 0;
continue_0 : do { continue_0 : do {
if ($1 >>> 0 >= 32 >>> 0) { if ($1 >>> 0 >= 32 >>> 0) {
@ -227,9 +227,8 @@ function asmFunc(global, env, buffer) {
$0 = $0 | 0; $0 = $0 | 0;
var $1 = 0, $2 = 0, $3 = 0.0, $4 = 0.0, $5 = 0.0, $6 = 0.0, $7 = 0, $49 = 0, wasm2js_i32$0 = 0, wasm2js_f64$0 = 0.0, wasm2js_i32$1 = 0; var $1 = 0, $2 = 0, $3 = 0.0, $4 = 0.0, $5 = 0.0, $6 = 0.0, $7 = 0, $49 = 0, wasm2js_i32$0 = 0, wasm2js_f64$0 = 0.0, wasm2js_i32$1 = 0;
$7 = HEAP32[($0 + 4 | 0) >> 2] | 0; $7 = HEAP32[($0 + 4 | 0) >> 2] | 0;
break_0 : { repeat_0 : do {
repeat_0 : do { if (($1 | 0) < ($7 | 0)) {
if (($1 | 0) >= ($7 | 0)) break break_0;
$2 = HEAPU32[(((HEAPU32[$0 >> 2] | 0) + ($1 << 2 | 0) | 0) + 8 | 0) >> 2] | 0; $2 = HEAPU32[(((HEAPU32[$0 >> 2] | 0) + ($1 << 2 | 0) | 0) + 8 | 0) >> 2] | 0;
$3 = +HEAPF64[($2 + 48 | 0) >> 3]; $3 = +HEAPF64[($2 + 48 | 0) >> 3];
$4 = $4 + +HEAPF64[($2 + 24 | 0) >> 3] * $3; $4 = $4 + +HEAPF64[($2 + 24 | 0) >> 3] * $3;
@ -237,9 +236,9 @@ function asmFunc(global, env, buffer) {
$6 = $6 + +HEAPF64[($2 + 40 | 0) >> 3] * $3; $6 = $6 + +HEAPF64[($2 + 40 | 0) >> 3] * $3;
$1 = $1 + 1 | 0; $1 = $1 + 1 | 0;
continue repeat_0; continue repeat_0;
break repeat_0; }
} while (1); break repeat_0;
}; } while (1);
$1 = HEAPU32[$0 >> 2] | 0; $1 = HEAPU32[$0 >> 2] | 0;
if (0 >>> 0 < ((HEAP32[$1 >> 2] | 0) >>> 2 | 0) >>> 0) $49 = HEAPU32[($1 + 8 | 0) >> 2] | 0; else abort(); if (0 >>> 0 < ((HEAP32[$1 >> 2] | 0) >>> 2 | 0) >>> 0) $49 = HEAPU32[($1 + 8 | 0) >> 2] | 0; else abort();
$1 = $49; $1 = $49;
@ -290,9 +289,8 @@ function asmFunc(global, env, buffer) {
var $1 = 0, $2 = 0.0, $8 = 0.0, $3 = 0, $4 = 0.0, $5 = 0.0, $6 = 0.0, $7 = 0, $9 = 0.0, $10 = 0.0, $11 = 0.0, $12 = 0, $13 = 0, $18 = 0.0, $14 = 0.0, $15 = 0.0, $16 = 0.0, $17 = 0.0, wasm2js_i32$0 = 0, wasm2js_f64$0 = 0.0; var $1 = 0, $2 = 0.0, $8 = 0.0, $3 = 0, $4 = 0.0, $5 = 0.0, $6 = 0.0, $7 = 0, $9 = 0.0, $10 = 0.0, $11 = 0.0, $12 = 0, $13 = 0, $18 = 0.0, $14 = 0.0, $15 = 0.0, $16 = 0.0, $17 = 0.0, wasm2js_i32$0 = 0, wasm2js_f64$0 = 0.0;
$12 = HEAPU32[$0 >> 2] | 0; $12 = HEAPU32[$0 >> 2] | 0;
$13 = HEAP32[($12 + 4 | 0) >> 2] | 0; $13 = HEAP32[($12 + 4 | 0) >> 2] | 0;
break_0 : { repeat_0 : do {
repeat_0 : do { if ($3 >>> 0 < $13 >>> 0) {
if ($3 >>> 0 >= $13 >>> 0) break break_0;
$0 = HEAPU32[(((HEAPU32[$12 >> 2] | 0) + ($3 << 2 | 0) | 0) + 8 | 0) >> 2] | 0; $0 = HEAPU32[(((HEAPU32[$12 >> 2] | 0) + ($3 << 2 | 0) | 0) + 8 | 0) >> 2] | 0;
$14 = +HEAPF64[$0 >> 3]; $14 = +HEAPF64[$0 >> 3];
$15 = +HEAPF64[($0 + 8 | 0) >> 3]; $15 = +HEAPF64[($0 + 8 | 0) >> 3];
@ -301,10 +299,9 @@ function asmFunc(global, env, buffer) {
$5 = +HEAPF64[($0 + 32 | 0) >> 3]; $5 = +HEAPF64[($0 + 32 | 0) >> 3];
$6 = +HEAPF64[($0 + 40 | 0) >> 3]; $6 = +HEAPF64[($0 + 40 | 0) >> 3];
$17 = +HEAPF64[($0 + 48 | 0) >> 3]; $17 = +HEAPF64[($0 + 48 | 0) >> 3];
break_1 : { $7 = $3 + 1 | 0;
$7 = $3 + 1 | 0; repeat_1 : do {
repeat_1 : do { if ($7 >>> 0 < $13 >>> 0) {
if ($7 >>> 0 >= $13 >>> 0) break break_1;
$1 = HEAPU32[(((HEAPU32[$12 >> 2] | 0) + ($7 << 2 | 0) | 0) + 8 | 0) >> 2] | 0; $1 = HEAPU32[(((HEAPU32[$12 >> 2] | 0) + ($7 << 2 | 0) | 0) + 8 | 0) >> 2] | 0;
$18 = $14 - +HEAPF64[$1 >> 3]; $18 = $14 - +HEAPF64[$1 >> 3];
$2 = $18; $2 = $18;
@ -329,9 +326,9 @@ function asmFunc(global, env, buffer) {
HEAPF64[(wasm2js_i32$0 + 40 | 0) >> 3] = wasm2js_f64$0; HEAPF64[(wasm2js_i32$0 + 40 | 0) >> 3] = wasm2js_f64$0;
$7 = $7 + 1 | 0; $7 = $7 + 1 | 0;
continue repeat_1; continue repeat_1;
break repeat_1; }
} while (1); break repeat_1;
}; } while (1);
wasm2js_i32$0 = $0; wasm2js_i32$0 = $0;
wasm2js_f64$0 = $4; wasm2js_f64$0 = $4;
HEAPF64[(wasm2js_i32$0 + 24 | 0) >> 3] = wasm2js_f64$0; HEAPF64[(wasm2js_i32$0 + 24 | 0) >> 3] = wasm2js_f64$0;
@ -352,19 +349,18 @@ function asmFunc(global, env, buffer) {
HEAPF64[(wasm2js_i32$0 + 16 | 0) >> 3] = wasm2js_f64$0; HEAPF64[(wasm2js_i32$0 + 16 | 0) >> 3] = wasm2js_f64$0;
$3 = $3 + 1 | 0; $3 = $3 + 1 | 0;
continue repeat_0; continue repeat_0;
break repeat_0; }
} while (1); break repeat_0;
}; } while (1);
} }
function assembly_index_NBodySystem_energy($0) { function assembly_index_NBodySystem_energy($0) {
$0 = $0 | 0; $0 = $0 | 0;
var $1 = 0.0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $10 = 0.0, $6 = 0.0, $7 = 0.0, $8 = 0.0, $9 = 0.0, $30 = 0.0, $39 = 0.0, $45 = 0.0, $69 = 0.0, $84 = 0.0; var $1 = 0.0, $2 = 0, $3 = 0, $4 = 0, $5 = 0, $10 = 0.0, $6 = 0.0, $7 = 0.0, $8 = 0.0, $9 = 0.0, $30 = 0.0, $39 = 0.0, $45 = 0.0, $69 = 0.0, $84 = 0.0;
break_0 : { $4 = HEAPU32[$0 >> 2] | 0;
$4 = HEAPU32[$0 >> 2] | 0; $5 = HEAP32[($4 + 4 | 0) >> 2] | 0;
$5 = HEAP32[($4 + 4 | 0) >> 2] | 0; repeat_0 : do {
repeat_0 : do { if ($2 >>> 0 < $5 >>> 0) {
if ($2 >>> 0 >= $5 >>> 0) break break_0;
$0 = HEAPU32[(((HEAPU32[$4 >> 2] | 0) + ($2 << 2 | 0) | 0) + 8 | 0) >> 2] | 0; $0 = HEAPU32[(((HEAPU32[$4 >> 2] | 0) + ($2 << 2 | 0) | 0) + 8 | 0) >> 2] | 0;
$7 = +HEAPF64[$0 >> 3]; $7 = +HEAPF64[$0 >> 3];
$8 = +HEAPF64[($0 + 8 | 0) >> 3]; $8 = +HEAPF64[($0 + 8 | 0) >> 3];
@ -377,10 +373,9 @@ function asmFunc(global, env, buffer) {
$45 = $39 + $1 * $1; $45 = $39 + $1 * $1;
$1 = +HEAPF64[($0 + 40 | 0) >> 3]; $1 = +HEAPF64[($0 + 40 | 0) >> 3];
$1 = $30 + .5 * $10 * ($45 + $1 * $1); $1 = $30 + .5 * $10 * ($45 + $1 * $1);
break_1 : { $0 = $2 + 1 | 0;
$0 = $2 + 1 | 0; repeat_1 : do {
repeat_1 : do { if ($0 >>> 0 < $5 >>> 0) {
if ($0 >>> 0 >= $5 >>> 0) break break_1;
$3 = HEAPU32[(((HEAPU32[$4 >> 2] | 0) + ($0 << 2 | 0) | 0) + 8 | 0) >> 2] | 0; $3 = HEAPU32[(((HEAPU32[$4 >> 2] | 0) + ($0 << 2 | 0) | 0) + 8 | 0) >> 2] | 0;
$6 = $7 - +HEAPF64[$3 >> 3]; $6 = $7 - +HEAPF64[$3 >> 3];
$69 = $1; $69 = $1;
@ -390,14 +385,14 @@ function asmFunc(global, env, buffer) {
$1 = $69 - $10 * +HEAPF64[($3 + 48 | 0) >> 3] / Math_sqrt($84 + $1 * $1); $1 = $69 - $10 * +HEAPF64[($3 + 48 | 0) >> 3] / Math_sqrt($84 + $1 * $1);
$0 = $0 + 1 | 0; $0 = $0 + 1 | 0;
continue repeat_1; continue repeat_1;
break repeat_1; }
} while (1); break repeat_1;
}; } while (1);
$2 = $2 + 1 | 0; $2 = $2 + 1 | 0;
continue repeat_0; continue repeat_0;
break repeat_0; }
} while (1); break repeat_0;
}; } while (1);
return +$1; return +$1;
} }
@ -426,11 +421,10 @@ function asmFunc(global, env, buffer) {
$1 = HEAPU32[assembly_index_system >> 2] | 0; $1 = HEAPU32[assembly_index_system >> 2] | 0;
if ($0 >>> 0 < (HEAP32[($1 + 4 | 0) >> 2] | 0) >>> 0) { if ($0 >>> 0 < (HEAP32[($1 + 4 | 0) >> 2] | 0) >>> 0) {
$1 = HEAPU32[$1 >> 2] | 0; $1 = HEAPU32[$1 >> 2] | 0;
if ($0 >>> 0 < ((HEAP32[$1 >> 2] | 0) >>> 2 | 0) >>> 0) $20 = HEAPU32[(($1 + ($0 << 2 | 0) | 0) + 8 | 0) >> 2] | 0; else abort(); if ($0 >>> 0 < ((HEAP32[$1 >> 2] | 0) >>> 2 | 0) >>> 0) $20 = HEAPU32[((($0 << 2 | 0) + $1 | 0) + 8 | 0) >> 2] | 0; else abort();
$22 = $20; $22 = $20;
} else $22 = 0; } else $22 = 0;
$0 = $22; return $22 | 0;
return $0 | 0;
} }
function start() { function start() {

Binary file not shown.

View File

@ -182,24 +182,24 @@
if if
return return
end end
get_local $0
i32.const 0 i32.const 0
get_local $0 get_local $0
i32.sub i32.sub
i32.const 3 i32.const 3
i32.and i32.and
tee_local $2 tee_local $2
get_local $0
i32.add i32.add
tee_local $0 tee_local $0
i32.const 0 i32.const 0
i32.store i32.store
get_local $0
get_local $1 get_local $1
get_local $2 get_local $2
i32.sub i32.sub
i32.const -4 i32.const -4
i32.and i32.and
tee_local $1 tee_local $1
get_local $0
i32.add i32.add
i32.const 4 i32.const 4
i32.sub i32.sub
@ -284,12 +284,12 @@
i32.const 0 i32.const 0
i32.store i32.store
get_local $0 get_local $0
get_local $0
i32.const 4 i32.const 4
i32.and i32.and
i32.const 24 i32.const 24
i32.add i32.add
tee_local $2 tee_local $2
get_local $0
i32.add i32.add
set_local $0 set_local $0
get_local $1 get_local $1
@ -371,12 +371,11 @@
get_local $0 get_local $0
i32.load offset=4 i32.load offset=4
set_local $7 set_local $7
block $break|0 loop $repeat|0
loop $repeat|0 get_local $1
get_local $1 get_local $7
get_local $7 i32.lt_s
i32.ge_s if
br_if $break|0
get_local $0 get_local $0
i32.load i32.load
get_local $1 get_local $1
@ -413,9 +412,7 @@
i32.add i32.add
set_local $1 set_local $1
br $repeat|0 br $repeat|0
unreachable
end end
unreachable
end end
i32.const 0 i32.const 0
get_local $0 get_local $0
@ -562,12 +559,11 @@
tee_local $12 tee_local $12
i32.load offset=4 i32.load offset=4
set_local $13 set_local $13
block $break|0 loop $repeat|0
loop $repeat|0 get_local $3
get_local $3 get_local $13
get_local $13 i32.lt_u
i32.ge_u if
br_if $break|0
get_local $12 get_local $12
i32.load i32.load
get_local $3 get_local $3
@ -596,16 +592,15 @@
get_local $0 get_local $0
f64.load offset=48 f64.load offset=48
set_local $17 set_local $17
block $break|1 get_local $3
get_local $3 i32.const 1
i32.const 1 i32.add
i32.add set_local $7
set_local $7 loop $repeat|1
loop $repeat|1 get_local $7
get_local $7 get_local $13
get_local $13 i32.lt_u
i32.ge_u if
br_if $break|1
get_local $14 get_local $14
get_local $12 get_local $12
i32.load i32.load
@ -699,9 +694,7 @@
i32.add i32.add
set_local $7 set_local $7
br $repeat|1 br $repeat|1
unreachable
end end
unreachable
end end
get_local $0 get_local $0
get_local $4 get_local $4
@ -741,9 +734,7 @@
i32.add i32.add
set_local $3 set_local $3
br $repeat|0 br $repeat|0
unreachable
end end
unreachable
end end
) )
(func $assembly/index/NBodySystem#energy (; 7 ;) (type $iF) (param $0 i32) (result f64) (func $assembly/index/NBodySystem#energy (; 7 ;) (type $iF) (param $0 i32) (result f64)
@ -757,17 +748,16 @@
(local $8 f64) (local $8 f64)
(local $9 f64) (local $9 f64)
(local $10 f64) (local $10 f64)
block $break|0 get_local $0
get_local $0 i32.load
i32.load tee_local $4
tee_local $4 i32.load offset=4
i32.load offset=4 set_local $5
set_local $5 loop $repeat|0
loop $repeat|0 get_local $2
get_local $2 get_local $5
get_local $5 i32.lt_u
i32.ge_u if
br_if $break|0
get_local $4 get_local $4
i32.load i32.load
get_local $2 get_local $2
@ -810,16 +800,15 @@
f64.mul f64.mul
f64.add f64.add
set_local $1 set_local $1
block $break|1 get_local $2
get_local $2 i32.const 1
i32.const 1 i32.add
i32.add set_local $0
set_local $0 loop $repeat|1
loop $repeat|1 get_local $0
get_local $0 get_local $5
get_local $5 i32.lt_u
i32.ge_u if
br_if $break|1
get_local $7 get_local $7
get_local $4 get_local $4
i32.load i32.load
@ -865,18 +854,14 @@
i32.add i32.add
set_local $0 set_local $0
br $repeat|1 br $repeat|1
unreachable
end end
unreachable
end end
get_local $2 get_local $2
i32.const 1 i32.const 1
i32.add i32.add
set_local $2 set_local $2
br $repeat|0 br $repeat|0
unreachable
end end
unreachable
end end
get_local $1 get_local $1
) )
@ -924,10 +909,10 @@
i32.shr_u i32.shr_u
i32.lt_u i32.lt_u
if (result i32) if (result i32)
get_local $1
get_local $0 get_local $0
i32.const 2 i32.const 2
i32.shl i32.shl
get_local $1
i32.add i32.add
i32.load offset=8 i32.load offset=8
else else
@ -936,7 +921,6 @@
else else
i32.const 0 i32.const 0
end end
tee_local $0
) )
(func $start (; 11 ;) (type $v) (func $start (; 11 ;) (type $v)
i32.const 40 i32.const 40

View File

@ -267,7 +267,7 @@
if if
i32.const 0 i32.const 0
i32.const 40 i32.const 40
i32.const 23 i32.const 26
i32.const 2 i32.const 2
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
@ -551,7 +551,7 @@
if if
i32.const 0 i32.const 0
i32.const 8 i32.const 8
i32.const 37 i32.const 45
i32.const 39 i32.const 39
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
@ -587,47 +587,56 @@
get_local $0 get_local $0
get_local $1 get_local $1
i32.store offset=4 i32.store offset=4
block $~lib/memory/memory.fill|inlined.0 get_local $3
get_local $3 get_global $~lib/internal/arraybuffer/HEADER_SIZE
get_global $~lib/internal/arraybuffer/HEADER_SIZE i32.add
i32.add set_local $4
set_local $4 i32.const 0
i32.const 0 set_local $5
set_local $5 get_local $4
get_local $4 get_local $5
get_local $5 get_local $2
get_local $2 call $~lib/internal/memory/memset
call $~lib/internal/memory/memset
end
get_local $0 get_local $0
) )
(func $~lib/array/Array<Body>#__unchecked_set (; 13 ;) (type $iiiv) (param $0 i32) (param $1 i32) (param $2 i32) (func $~lib/array/Array<Body>#__unchecked_set (; 13 ;) (type $iiiv) (param $0 i32) (param $1 i32) (param $2 i32)
(local $3 i32) (local $3 i32)
(local $4 i32)
get_local $0 get_local $0
i32.load i32.load
set_local $3 set_local $3
i32.const 0
set_local $4
get_local $3 get_local $3
get_local $1 get_local $1
i32.const 2 i32.const 2
i32.shl i32.shl
i32.add i32.add
get_local $4
i32.add
get_local $2 get_local $2
i32.store offset=8 i32.store offset=8
) )
(func $~lib/array/Array<Body>#__unchecked_get (; 14 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/array/Array<Body>#__unchecked_get (; 14 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
(local $3 i32)
get_local $0 get_local $0
i32.load i32.load
set_local $2 set_local $2
i32.const 0
set_local $3
get_local $2 get_local $2
get_local $1 get_local $1
i32.const 2 i32.const 2
i32.shl i32.shl
i32.add i32.add
get_local $3
i32.add
i32.load offset=8 i32.load offset=8
) )
(func $~lib/array/Array<Body>#__get (; 15 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/array/Array<Body>#__get (; 15 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
(local $3 i32)
get_local $0 get_local $0
i32.load i32.load
set_local $2 set_local $2
@ -638,11 +647,15 @@
i32.shr_u i32.shr_u
i32.lt_u i32.lt_u
if (result i32) if (result i32)
i32.const 0
set_local $3
get_local $2 get_local $2
get_local $1 get_local $1
i32.const 2 i32.const 2
i32.shl i32.shl
i32.add i32.add
get_local $3
i32.add
i32.load offset=8 i32.load offset=8
else else
unreachable unreachable

View File

@ -13,6 +13,7 @@
"test": "node tests" "test": "node tests"
}, },
"devDependencies": { "devDependencies": {
"http-server": "^0.11.1" "http-server": "^0.11.1",
"typescript": "^3.2.2"
} }
} }

View File

@ -45,34 +45,33 @@
(local $0 i32) (local $0 i32)
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
(local $3 i32)
loop $continue|0 loop $continue|0
get_global $assembly/pson/offset
tee_local $1
i32.const 1
i32.add
set_global $assembly/pson/offset
get_local $0 get_local $0
get_local $1
i32.load8_u
tee_local $3
i32.const 127
i32.and
block (result i32) block (result i32)
get_global $assembly/pson/offset get_local $2
tee_local $0 tee_local $1
i32.const 1 i32.const 1
i32.add i32.add
set_global $assembly/pson/offset set_local $2
get_local $0 get_local $1
i32.load8_u i32.const 7
tee_local $2 i32.mul
i32.const 127
i32.and
block (result i32)
get_local $1
tee_local $0
i32.const 1
i32.add
set_local $1
get_local $0
i32.const 7
i32.mul
end
i32.shl
end end
i32.shl
i32.or i32.or
set_local $0 set_local $0
get_local $2 get_local $3
i32.const 128 i32.const 128
i32.and i32.and
br_if $continue|0 br_if $continue|0
@ -83,30 +82,29 @@
(local $0 i64) (local $0 i64)
(local $1 i32) (local $1 i32)
(local $2 i64) (local $2 i64)
(local $3 i64)
loop $continue|0 loop $continue|0
get_global $assembly/pson/offset
tee_local $1
i32.const 1
i32.add
set_global $assembly/pson/offset
get_local $2
tee_local $3
i64.const 1
i64.add
set_local $2
get_local $0 get_local $0
block (result i64) get_local $1
get_global $assembly/pson/offset i32.load8_u
tee_local $1 tee_local $1
i32.const 1 i32.const 127
i32.add i32.and
set_global $assembly/pson/offset i64.extend_u/i32
get_local $2 get_local $3
tee_local $0 i64.const 7
i64.const 1 i64.mul
i64.add i64.shl
set_local $2
get_local $1
i32.load8_u
tee_local $1
i32.const 127
i32.and
i64.extend_u/i32
get_local $0
i64.const 7
i64.mul
i64.shl
end
i64.or i64.or
set_local $0 set_local $0
get_local $1 get_local $1
@ -138,33 +136,75 @@
block $case1|0 block $case1|0
block (result i32) block (result i32)
get_global $assembly/pson/offset get_global $assembly/pson/offset
tee_local $1 tee_local $0
i32.const 1 i32.const 1
i32.add i32.add
set_global $assembly/pson/offset set_global $assembly/pson/offset
get_local $1 get_local $0
i32.load8_u i32.load8_u
tee_local $0
tee_local $1 tee_local $1
tee_local $0
i32.const 240 i32.const 240
i32.ne i32.ne
end end
if if
block $tablify|0 get_local $0
get_local $1 i32.const 241
i32.const 241 i32.eq
i32.sub br_if $case1|0
br_table $case1|0 $case2|0 $case3|0 $case4|0 $case5|0 $case6|0 $case7|0 $case8|0 $case9|0 $case10|0 $case11|0 $case12|0 $tablify|0 get_local $0
end i32.const 242
get_local $1 i32.eq
br_if $case2|0
get_local $0
i32.const 243
i32.eq
br_if $case3|0
get_local $0
i32.const 244
i32.eq
br_if $case4|0
get_local $0
i32.const 245
i32.eq
br_if $case5|0
get_local $0
i32.const 246
i32.eq
br_if $case6|0
get_local $0
i32.const 247
i32.eq
br_if $case7|0
get_local $0
i32.const 248
i32.eq
br_if $case8|0
get_local $0
i32.const 249
i32.eq
br_if $case9|0
get_local $0
i32.const 250
i32.eq
br_if $case10|0
get_local $0
i32.const 251
i32.eq
br_if $case11|0
get_local $0
i32.const 252
i32.eq
br_if $case12|0
get_local $0
i32.const 253 i32.const 253
i32.eq i32.eq
get_local $1 get_local $0
i32.const 254 i32.const 254
i32.eq i32.eq
i32.or i32.or
br_if $case14|0 br_if $case14|0
get_local $1 get_local $0
i32.const 255 i32.const 255
i32.eq i32.eq
br_if $case15|0 br_if $case15|0
@ -189,16 +229,16 @@
br $break|0 br $break|0
end end
call $assembly/pson/readVarint32 call $assembly/pson/readVarint32
tee_local $0 tee_local $1
call $assembly/pson/onObject call $assembly/pson/onObject
loop $continue|1 loop $continue|1
block (result i32) block (result i32)
get_local $0 get_local $1
tee_local $1 tee_local $0
i32.const 1 i32.const 1
i32.sub i32.sub
set_local $0 set_local $1
get_local $1 get_local $0
end end
if if
call $assembly/pson/decodeValue call $assembly/pson/decodeValue
@ -209,16 +249,16 @@
br $break|0 br $break|0
end end
call $assembly/pson/readVarint32 call $assembly/pson/readVarint32
tee_local $0 tee_local $1
call $assembly/pson/onArray call $assembly/pson/onArray
loop $continue|2 loop $continue|2
block (result i32) block (result i32)
get_local $0 get_local $1
tee_local $1 tee_local $0
i32.const 1 i32.const 1
i32.sub i32.sub
set_local $0 set_local $1
get_local $1 get_local $0
end end
if if
call $assembly/pson/decodeValue call $assembly/pson/decodeValue
@ -228,11 +268,11 @@
br $break|0 br $break|0
end end
call $assembly/pson/readVarint32 call $assembly/pson/readVarint32
tee_local $0 tee_local $1
i32.const 1 i32.const 1
i32.shr_u i32.shr_u
i32.const 0 i32.const 0
get_local $0 get_local $1
i32.const 1 i32.const 1
i32.and i32.and
i32.sub i32.sub
@ -278,12 +318,12 @@
br $break|0 br $break|0
end end
call $assembly/pson/readVarint32 call $assembly/pson/readVarint32
set_local $0 set_local $1
get_global $assembly/pson/offset get_global $assembly/pson/offset
get_local $0 get_local $1
call $assembly/pson/onString call $assembly/pson/onString
get_global $assembly/pson/offset get_global $assembly/pson/offset
get_local $0 get_local $1
i32.add i32.add
set_global $assembly/pson/offset set_global $assembly/pson/offset
br $break|0 br $break|0
@ -291,30 +331,30 @@
unreachable unreachable
end end
call $assembly/pson/readVarint32 call $assembly/pson/readVarint32
set_local $0 set_local $1
get_global $assembly/pson/offset get_global $assembly/pson/offset
get_local $0 get_local $1
call $assembly/pson/onBinary call $assembly/pson/onBinary
get_global $assembly/pson/offset get_global $assembly/pson/offset
get_local $0 get_local $1
i32.add i32.add
set_global $assembly/pson/offset set_global $assembly/pson/offset
br $break|0 br $break|0
end end
get_local $0 get_local $1
i32.const 239 i32.const 239
i32.gt_u i32.gt_u
if if
unreachable unreachable
end end
get_local $0
i32.const 1
i32.shr_u
i32.const 0 i32.const 0
get_local $0 get_local $1
i32.const 1 i32.const 1
i32.and i32.and
i32.sub i32.sub
get_local $1
i32.const 1
i32.shr_u
i32.xor i32.xor
call $assembly/pson/onInteger call $assembly/pson/onInteger
end end

View File

@ -68,36 +68,32 @@
(local $3 i32) (local $3 i32)
get_global $assembly/index/off get_global $assembly/index/off
set_local $0 set_local $0
block $break|0 loop $continue|0
loop $continue|0 get_local $0
get_local $0 tee_local $1
tee_local $1 i32.const 1
i32.const 1 i32.add
i32.add set_local $0
set_local $0 get_local $1
get_local $2 i32.load8_u
get_local $1 tee_local $1
i32.load8_u i32.const 127
tee_local $1 i32.and
i32.const 127 get_local $3
i32.and i32.shl
get_local $3 get_local $2
i32.shl i32.or
i32.or set_local $2
set_local $2 get_local $1
get_local $1 i32.const 128
i32.const 128 i32.and
i32.and if
i32.eqz
br_if $break|0
get_local $3 get_local $3
i32.const 7 i32.const 7
i32.add i32.add
set_local $3 set_local $3
br $continue|0 br $continue|0
unreachable
end end
unreachable
end end
get_local $0 get_local $0
set_global $assembly/index/off set_global $assembly/index/off
@ -117,7 +113,6 @@
i32.const 1 i32.const 1
i32.add i32.add
set_local $2 set_local $2
get_local $3
get_local $4 get_local $4
i32.load8_u i32.load8_u
tee_local $5 tee_local $5
@ -125,6 +120,7 @@
i32.and i32.and
get_local $1 get_local $1
i32.shl i32.shl
get_local $3
i32.or i32.or
set_local $3 set_local $3
get_local $1 get_local $1
@ -138,10 +134,10 @@
end end
get_local $2 get_local $2
set_global $assembly/index/off set_global $assembly/index/off
get_local $3
i32.const -1 i32.const -1
get_local $1 get_local $1
i32.shl i32.shl
get_local $3
i32.or i32.or
set_local $2 set_local $2
get_local $1 get_local $1
@ -176,7 +172,6 @@
i32.const 1 i32.const 1
i32.add i32.add
set_local $3 set_local $3
get_local $1
get_local $2 get_local $2
i64.load8_u i64.load8_u
tee_local $4 tee_local $4
@ -184,6 +179,7 @@
i64.and i64.and
get_local $0 get_local $0
i64.shl i64.shl
get_local $1
i64.or i64.or
set_local $1 set_local $1
get_local $0 get_local $0
@ -199,10 +195,10 @@
end end
get_local $3 get_local $3
set_global $assembly/index/off set_global $assembly/index/off
get_local $1
i64.const -1 i64.const -1
get_local $0 get_local $0
i64.shl i64.shl
get_local $1
i64.or i64.or
set_local $5 set_local $5
get_local $0 get_local $0
@ -225,38 +221,38 @@
(func $assembly/index/skipInitExpr (; 22 ;) (type $v) (func $assembly/index/skipInitExpr (; 22 ;) (type $v)
(local $0 i32) (local $0 i32)
(local $1 i32) (local $1 i32)
get_global $assembly/index/off
tee_local $1
i32.load8_u
set_local $0
get_local $1
i32.const 1
i32.add
set_global $assembly/index/off
block $break|0 block $break|0
block $case5|0 block $case5|0
block $case4|0 block $case4|0
block $case3|0 block $case3|0
block $case2|0 block $case2|0
block $case1|0 block $case1|0
get_global $assembly/index/off
tee_local $1
i32.load8_u
set_local $0
get_local $1
i32.const 1
i32.add
set_global $assembly/index/off
get_local $0
get_global $src/common/Opcode.i32_const get_global $src/common/Opcode.i32_const
get_local $0
i32.ne i32.ne
if if
get_local $0
get_global $src/common/Opcode.i64_const get_global $src/common/Opcode.i64_const
get_local $0
i32.eq i32.eq
br_if $case1|0 br_if $case1|0
get_local $0
get_global $src/common/Opcode.f32_const get_global $src/common/Opcode.f32_const
get_local $0
i32.eq i32.eq
br_if $case2|0 br_if $case2|0
get_local $0
get_global $src/common/Opcode.f64_const get_global $src/common/Opcode.f64_const
get_local $0
i32.eq i32.eq
br_if $case3|0 br_if $case3|0
get_local $0
get_global $src/common/Opcode.get_global get_global $src/common/Opcode.get_global
get_local $0
i32.eq i32.eq
br_if $case4|0 br_if $case4|0
br $case5|0 br $case5|0
@ -304,8 +300,8 @@
i32.const 1 i32.const 1
i32.add i32.add
set_global $assembly/index/off set_global $assembly/index/off
get_local $0
get_global $src/common/Opcode.end get_global $src/common/Opcode.end
get_local $0
i32.ne i32.ne
if if
unreachable unreachable
@ -328,28 +324,28 @@
get_local $0 get_local $0
set_global $assembly/index/off set_global $assembly/index/off
get_global $assembly/index/off get_global $assembly/index/off
tee_local $6 tee_local $0
i32.load i32.load
set_local $0 set_local $6
get_local $6 get_local $0
i32.const 4 i32.const 4
i32.add i32.add
set_global $assembly/index/off set_global $assembly/index/off
get_local $0 get_local $6
i32.const 1836278016 i32.const 1836278016
i32.ne i32.ne
if if
unreachable unreachable
end end
get_global $assembly/index/off get_global $assembly/index/off
tee_local $6 tee_local $0
i32.load i32.load
set_local $0 set_local $6
get_local $6 get_local $0
i32.const 4 i32.const 4
i32.add i32.add
set_global $assembly/index/off set_global $assembly/index/off
get_local $0 get_local $6
i32.const 1 i32.const 1
i32.ne i32.ne
if if
@ -365,7 +361,7 @@
call $assembly/index/readVaruint call $assembly/index/readVaruint
set_local $8 set_local $8
i32.const 0 i32.const 0
set_local $5 set_local $4
i32.const 0 i32.const 0
set_local $0 set_local $0
get_local $2 get_local $2
@ -377,32 +373,28 @@
unreachable unreachable
end end
else else
get_global $assembly/index/off
set_local $4
call $assembly/index/readVaruint
set_local $0
get_global $assembly/index/off get_global $assembly/index/off
set_local $5 set_local $5
call $assembly/index/readVaruint
tee_local $0
get_global $assembly/index/off get_global $assembly/index/off
get_local $0 tee_local $4
i32.add i32.add
set_global $assembly/index/off set_global $assembly/index/off
get_local $8 get_local $8
get_global $assembly/index/off get_global $assembly/index/off
get_local $4 get_local $5
i32.sub i32.sub
i32.sub i32.sub
set_local $8 set_local $8
end end
get_local $2 get_local $2
get_global $assembly/index/off get_global $assembly/index/off
tee_local $4 tee_local $5
get_local $8 get_local $8
get_local $5 get_local $4
get_local $0 get_local $0
call $assembly/options/onSection call $assembly/options/onSection
i32.const 1
i32.and
if if
block $break|1 block $break|1
block $case12|1 block $case12|1
@ -415,66 +407,65 @@
block $case3|1 block $case3|1
block $case2|1 block $case2|1
block $case1|1 block $case1|1
get_local $2
get_global $src/common/SectionId.Type get_global $src/common/SectionId.Type
get_local $2
i32.ne i32.ne
if if
get_local $2
get_global $src/common/SectionId.Import get_global $src/common/SectionId.Import
get_local $2
i32.eq i32.eq
br_if $case1|1 br_if $case1|1
get_local $2
get_global $src/common/SectionId.Function get_global $src/common/SectionId.Function
get_local $2
i32.eq i32.eq
br_if $case2|1 br_if $case2|1
get_local $2
get_global $src/common/SectionId.Table get_global $src/common/SectionId.Table
get_local $2
i32.eq i32.eq
br_if $case3|1 br_if $case3|1
get_local $2
get_global $src/common/SectionId.Memory get_global $src/common/SectionId.Memory
get_local $2
i32.eq i32.eq
br_if $case4|1 br_if $case4|1
get_local $2
get_global $src/common/SectionId.Global get_global $src/common/SectionId.Global
get_local $2
i32.eq i32.eq
br_if $case5|1 br_if $case5|1
get_local $2
get_global $src/common/SectionId.Export get_global $src/common/SectionId.Export
get_local $2
i32.eq i32.eq
br_if $case6|1 br_if $case6|1
get_local $2
get_global $src/common/SectionId.Start get_global $src/common/SectionId.Start
get_local $2
i32.eq i32.eq
br_if $case7|1 br_if $case7|1
get_local $2
get_global $src/common/SectionId.Custom get_global $src/common/SectionId.Custom
get_local $2
i32.eq i32.eq
br_if $case8|1 br_if $case8|1
get_local $2
get_global $src/common/SectionId.Element get_global $src/common/SectionId.Element
get_local $2
i32.eq i32.eq
br_if $case11|1 br_if $case11|1
get_local $2
get_global $src/common/SectionId.Code get_global $src/common/SectionId.Code
get_local $2
i32.eq i32.eq
br_if $case11|1 br_if $case11|1
get_local $2
get_global $src/common/SectionId.Data get_global $src/common/SectionId.Data
get_local $2
i32.eq i32.eq
br_if $case11|1 br_if $case11|1
br $case12|1 br $case12|1
end end
call $assembly/index/readVaruint call $assembly/index/readVaruint
set_local $2 set_local $2
block $break|2 i32.const 0
i32.const 0 set_local $3
set_local $3 loop $repeat|2
loop $repeat|2 get_local $3
get_local $3 get_local $2
get_local $2 i32.lt_u
i32.ge_u if
br_if $break|2
get_local $3 get_local $3
i32.const 7 i32.const 7
call $assembly/index/readVarint call $assembly/index/readVarint
@ -482,15 +473,14 @@
i32.and i32.and
call $assembly/options/onType call $assembly/options/onType
call $assembly/index/readVaruint call $assembly/index/readVaruint
set_local $4 set_local $5
block $break|3 i32.const 0
i32.const 0 set_local $7
set_local $7 loop $repeat|3
loop $repeat|3 get_local $7
get_local $7 get_local $5
get_local $4 i32.lt_u
i32.ge_u if
br_if $break|3
get_local $3 get_local $3
get_local $7 get_local $7
i32.const 7 i32.const 7
@ -503,71 +493,61 @@
i32.add i32.add
set_local $7 set_local $7
br $repeat|3 br $repeat|3
unreachable
end end
unreachable
end end
call $assembly/index/readVaruint call $assembly/index/readVaruint
set_local $7 set_local $7
block $break|4 i32.const 0
i32.const 0 set_local $4
set_local $5 loop $repeat|4
loop $repeat|4 get_local $4
get_local $5 get_local $7
get_local $7 i32.lt_u
i32.ge_u if
br_if $break|4
get_local $3 get_local $3
get_local $5 get_local $4
i32.const 7 i32.const 7
call $assembly/index/readVarint call $assembly/index/readVarint
i32.const 127 i32.const 127
i32.and i32.and
call $assembly/options/onTypeReturn call $assembly/options/onTypeReturn
get_local $5 get_local $4
i32.const 1 i32.const 1
i32.add i32.add
set_local $5 set_local $4
br $repeat|4 br $repeat|4
unreachable
end end
unreachable
end end
get_local $3 get_local $3
i32.const 1 i32.const 1
i32.add i32.add
set_local $3 set_local $3
br $repeat|2 br $repeat|2
unreachable
end end
unreachable
end end
br $break|1 br $break|1
end end
call $assembly/index/readVaruint call $assembly/index/readVaruint
set_local $2 set_local $2
block $break|5 i32.const 0
i32.const 0 set_local $3
set_local $3 loop $repeat|5
loop $repeat|5 get_local $3
get_local $3 get_local $2
get_local $2 i32.lt_u
i32.ge_u if
br_if $break|5
call $assembly/index/readVaruint call $assembly/index/readVaruint
set_local $7 set_local $7
get_global $assembly/index/off
set_local $4
get_global $assembly/index/off
get_local $7 get_local $7
get_global $assembly/index/off
tee_local $5
i32.add i32.add
set_global $assembly/index/off set_global $assembly/index/off
call $assembly/index/readVaruint call $assembly/index/readVaruint
set_local $9 set_local $9
get_global $assembly/index/off
set_local $5
get_global $assembly/index/off
get_local $9 get_local $9
get_global $assembly/index/off
tee_local $4
i32.add i32.add
set_global $assembly/index/off set_global $assembly/index/off
get_global $assembly/index/off get_global $assembly/index/off
@ -580,9 +560,9 @@
set_global $assembly/index/off set_global $assembly/index/off
get_local $3 get_local $3
get_local $0 get_local $0
get_local $4
get_local $7
get_local $5 get_local $5
get_local $7
get_local $4
get_local $9 get_local $9
call $assembly/options/onImport call $assembly/options/onImport
block $break|6 block $break|6
@ -595,16 +575,16 @@
get_global $src/common/ExternalKind.Function get_global $src/common/ExternalKind.Function
i32.ne i32.ne
if if
get_local $6
get_global $src/common/ExternalKind.Table get_global $src/common/ExternalKind.Table
get_local $6
i32.eq i32.eq
br_if $case1|6 br_if $case1|6
get_local $6
get_global $src/common/ExternalKind.Memory get_global $src/common/ExternalKind.Memory
get_local $6
i32.eq i32.eq
br_if $case2|6 br_if $case2|6
get_local $6
get_global $src/common/ExternalKind.Global get_global $src/common/ExternalKind.Global
get_local $6
i32.eq i32.eq
br_if $case3|6 br_if $case3|6
br $case4|6 br $case4|6
@ -634,7 +614,6 @@
get_local $0 get_local $0
get_local $6 get_local $6
call $assembly/index/readVaruint call $assembly/index/readVaruint
tee_local $4
get_local $10 get_local $10
i32.const 1 i32.const 1
i32.and i32.and
@ -643,7 +622,6 @@
else else
i32.const -1 i32.const -1
end end
tee_local $8
get_local $10 get_local $10
call $assembly/options/onTableImport call $assembly/options/onTableImport
br $break|6 br $break|6
@ -657,7 +635,6 @@
set_local $13 set_local $13
get_local $6 get_local $6
call $assembly/index/readVaruint call $assembly/index/readVaruint
tee_local $0
get_local $8 get_local $8
i32.const 1 i32.const 1
i32.and i32.and
@ -666,7 +643,6 @@
else else
i32.const 65535 i32.const 65535
end end
tee_local $10
get_local $8 get_local $8
call $assembly/options/onMemoryImport call $assembly/options/onMemoryImport
br $break|6 br $break|6
@ -692,28 +668,25 @@
i32.add i32.add
set_local $3 set_local $3
br $repeat|5 br $repeat|5
unreachable
end end
unreachable
end end
br $break|1 br $break|1
end end
call $assembly/index/readVaruint call $assembly/index/readVaruint
set_local $2 set_local $2
block $break|7 i32.const 0
i32.const 0 set_local $3
set_local $3 loop $repeat|7
loop $repeat|7 get_local $3
get_local $3 get_local $2
get_local $2 i32.lt_u
i32.ge_u if
br_if $break|7
get_local $11 get_local $11
tee_local $5 tee_local $4
i32.const 1 i32.const 1
i32.add i32.add
set_local $11 set_local $11
get_local $5 get_local $4
call $assembly/index/readVaruint call $assembly/index/readVaruint
call $assembly/options/onFunction call $assembly/options/onFunction
get_local $3 get_local $3
@ -721,28 +694,25 @@
i32.add i32.add
set_local $3 set_local $3
br $repeat|7 br $repeat|7
unreachable
end end
unreachable
end end
br $break|1 br $break|1
end end
call $assembly/index/readVaruint call $assembly/index/readVaruint
set_local $2 set_local $2
block $break|8 i32.const 0
i32.const 0 set_local $3
set_local $3 loop $repeat|8
loop $repeat|8 get_local $3
get_local $3 get_local $2
get_local $2 i32.lt_u
i32.ge_u if
br_if $break|8
call $assembly/index/readVaruint call $assembly/index/readVaruint
i32.const 127 i32.const 127
i32.and i32.and
set_local $0 set_local $0
call $assembly/index/readVaruint call $assembly/index/readVaruint
set_local $5 set_local $4
get_local $12 get_local $12
tee_local $7 tee_local $7
i32.const 1 i32.const 1
@ -751,8 +721,7 @@
get_local $7 get_local $7
get_local $0 get_local $0
call $assembly/index/readVaruint call $assembly/index/readVaruint
tee_local $6 get_local $4
get_local $5
i32.const 1 i32.const 1
i32.and i32.and
if (result i32) if (result i32)
@ -760,32 +729,28 @@
else else
i32.const -1 i32.const -1
end end
tee_local $4 get_local $4
get_local $5
call $assembly/options/onTable call $assembly/options/onTable
get_local $3 get_local $3
i32.const 1 i32.const 1
i32.add i32.add
set_local $3 set_local $3
br $repeat|8 br $repeat|8
unreachable
end end
unreachable
end end
br $break|1 br $break|1
end end
call $assembly/index/readVaruint call $assembly/index/readVaruint
set_local $2 set_local $2
block $break|9 i32.const 0
i32.const 0 set_local $3
set_local $3 loop $repeat|9
loop $repeat|9 get_local $3
get_local $3 get_local $2
get_local $2 i32.lt_u
i32.ge_u if
br_if $break|9
call $assembly/index/readVaruint call $assembly/index/readVaruint
set_local $4 set_local $5
get_local $13 get_local $13
tee_local $0 tee_local $0
i32.const 1 i32.const 1
@ -793,8 +758,7 @@
set_local $13 set_local $13
get_local $0 get_local $0
call $assembly/index/readVaruint call $assembly/index/readVaruint
tee_local $6 get_local $5
get_local $4
i32.const 1 i32.const 1
i32.and i32.and
if (result i32) if (result i32)
@ -802,45 +766,41 @@
else else
i32.const 65535 i32.const 65535
end end
tee_local $5 get_local $5
get_local $4
call $assembly/options/onMemory call $assembly/options/onMemory
get_local $3 get_local $3
i32.const 1 i32.const 1
i32.add i32.add
set_local $3 set_local $3
br $repeat|9 br $repeat|9
unreachable
end end
unreachable
end end
br $break|1 br $break|1
end end
call $assembly/index/readVaruint call $assembly/index/readVaruint
set_local $2 set_local $2
block $break|10 i32.const 0
i32.const 0 set_local $3
set_local $3 loop $repeat|10
loop $repeat|10 get_local $3
get_local $3 get_local $2
get_local $2 i32.lt_u
i32.ge_u if
br_if $break|10
i32.const 7 i32.const 7
call $assembly/index/readVarint call $assembly/index/readVarint
i32.const 127 i32.const 127
i32.and i32.and
set_local $5 set_local $4
call $assembly/index/readVaruint call $assembly/index/readVaruint
set_local $9 set_local $9
call $assembly/index/skipInitExpr call $assembly/index/skipInitExpr
get_local $14 get_local $14
tee_local $4 tee_local $5
i32.const 1 i32.const 1
i32.add i32.add
set_local $14 set_local $14
get_local $4
get_local $5 get_local $5
get_local $4
get_local $9 get_local $9
call $assembly/options/onGlobal call $assembly/options/onGlobal
get_local $3 get_local $3
@ -848,42 +808,38 @@
i32.add i32.add
set_local $3 set_local $3
br $repeat|10 br $repeat|10
unreachable
end end
unreachable
end end
br $break|1 br $break|1
end end
call $assembly/index/readVaruint call $assembly/index/readVaruint
set_local $2 set_local $2
block $break|11 i32.const 0
i32.const 0 set_local $3
set_local $3 loop $repeat|11
loop $repeat|11 get_local $3
get_local $3 get_local $2
get_local $2 i32.lt_u
i32.ge_u if
br_if $break|11
call $assembly/index/readVaruint call $assembly/index/readVaruint
set_local $9 set_local $9
get_global $assembly/index/off
set_local $5
get_global $assembly/index/off
get_local $9 get_local $9
get_global $assembly/index/off
tee_local $4
i32.add i32.add
set_global $assembly/index/off set_global $assembly/index/off
get_global $assembly/index/off get_global $assembly/index/off
tee_local $6 tee_local $0
i32.load8_u i32.load8_u
set_local $0 set_local $6
get_local $6 get_local $0
i32.const 1 i32.const 1
i32.add i32.add
set_global $assembly/index/off set_global $assembly/index/off
get_local $3 get_local $3
get_local $0 get_local $6
call $assembly/index/readVaruint call $assembly/index/readVaruint
get_local $5 get_local $4
get_local $9 get_local $9
call $assembly/options/onExport call $assembly/options/onExport
get_local $3 get_local $3
@ -891,9 +847,7 @@
i32.add i32.add
set_local $3 set_local $3
br $repeat|11 br $repeat|11
unreachable
end end
unreachable
end end
br $break|1 br $break|1
end end
@ -905,14 +859,14 @@
i32.const 4 i32.const 4
i32.eq i32.eq
tee_local $2 tee_local $2
if if (result i32)
get_local $5 get_local $4
i32.load i32.load
i32.const 1701667182 i32.const 1701667182
i32.eq i32.eq
set_local $2 else
get_local $2
end end
get_local $2
if if
call $assembly/index/readVaruint call $assembly/index/readVaruint
set_local $2 set_local $2
@ -925,92 +879,84 @@
block $case2|12 block $case2|12
block $case1|12 block $case1|12
get_local $2 get_local $2
tee_local $4 tee_local $5
get_global $src/common/NameType.Module get_global $src/common/NameType.Module
i32.ne i32.ne
if if
get_local $4
get_global $src/common/NameType.Function get_global $src/common/NameType.Function
get_local $5
i32.eq i32.eq
br_if $case1|12 br_if $case1|12
get_local $4
get_global $src/common/NameType.Local get_global $src/common/NameType.Local
get_local $5
i32.eq i32.eq
br_if $case2|12 br_if $case2|12
br $case3|12 br $case3|12
end end
call $assembly/index/readVaruint call $assembly/index/readVaruint
set_local $4 set_local $5
get_global $assembly/index/off get_global $assembly/index/off
get_local $4 get_local $5
call $assembly/options/onModuleName call $assembly/options/onModuleName
br $break|12 br $break|12
end end
call $assembly/index/readVaruint call $assembly/index/readVaruint
set_local $4
i32.const 0
set_local $5 set_local $5
block $break|13 loop $repeat|13
i32.const 0 get_local $5
set_local $4 get_local $4
loop $repeat|13 i32.lt_u
get_local $4 if
get_local $5
i32.ge_u
br_if $break|13
call $assembly/index/readVaruint call $assembly/index/readVaruint
set_local $9 set_local $9
call $assembly/index/readVaruint call $assembly/index/readVaruint
set_local $7 set_local $7
get_global $assembly/index/off
set_local $2
get_global $assembly/index/off
get_local $7 get_local $7
get_global $assembly/index/off
tee_local $2
i32.add i32.add
set_global $assembly/index/off set_global $assembly/index/off
get_local $9 get_local $9
get_local $2 get_local $2
get_local $7 get_local $7
call $assembly/options/onFunctionName call $assembly/options/onFunctionName
get_local $4 get_local $5
i32.const 1 i32.const 1
i32.add i32.add
set_local $4 set_local $5
br $repeat|13 br $repeat|13
unreachable
end end
unreachable
end end
br $break|12 br $break|12
end end
call $assembly/index/readVaruint call $assembly/index/readVaruint
set_local $4
i32.const 0
set_local $5 set_local $5
block $break|14 loop $repeat|14
i32.const 0 get_local $5
set_local $4 get_local $4
loop $repeat|14 i32.lt_u
get_local $4 if
get_local $5
i32.ge_u
br_if $break|14
call $assembly/index/readVaruint call $assembly/index/readVaruint
set_local $2 set_local $2
call $assembly/index/readVaruint call $assembly/index/readVaruint
set_local $7 set_local $7
block $break|15 i32.const 0
i32.const 0 set_local $9
set_local $9 loop $repeat|15
loop $repeat|15 get_local $9
get_local $9 get_local $7
get_local $7 i32.lt_u
i32.ge_u if
br_if $break|15
call $assembly/index/readVaruint call $assembly/index/readVaruint
set_local $10 set_local $10
call $assembly/index/readVaruint call $assembly/index/readVaruint
set_local $8 tee_local $8
get_global $assembly/index/off get_global $assembly/index/off
set_local $6 tee_local $6
get_global $assembly/index/off
get_local $8
i32.add i32.add
set_global $assembly/index/off set_global $assembly/index/off
get_local $2 get_local $2
@ -1023,18 +969,14 @@
i32.add i32.add
set_local $9 set_local $9
br $repeat|15 br $repeat|15
unreachable
end end
unreachable
end end
get_local $4 get_local $5
i32.const 1 i32.const 1
i32.add i32.add
set_local $4 set_local $5
br $repeat|14 br $repeat|14
unreachable
end end
unreachable
end end
br $break|12 br $break|12
end end
@ -1046,35 +988,35 @@
set_global $assembly/index/off set_global $assembly/index/off
br $break|1 br $break|1
else else
get_local $0 block (result i32)
i32.const 16 get_local $0
i32.eq i32.const 16
tee_local $0 i32.eq
if tee_local $0
get_local $5 if
i64.load get_local $4
i64.const 7011371672682196851 i64.load
i64.eq i64.const 7011371672682196851
set_local $0 i64.eq
set_local $0
end
get_local $0
end end
get_local $0 if (result i32)
if get_local $4
get_local $5
i32.const 8 i32.const 8
i32.add i32.add
i64.load i64.load
i64.const 5499551997695193200 i64.const 5499551997695193200
i64.eq i64.eq
set_local $0 else
get_local $0
end end
get_local $0
if if
call $assembly/index/readVaruint call $assembly/index/readVaruint
set_local $0 tee_local $0
get_global $assembly/index/off get_global $assembly/index/off
set_local $3 tee_local $3
get_global $assembly/index/off
get_local $0
i32.add i32.add
set_global $assembly/index/off set_global $assembly/index/off
get_local $3 get_local $3
@ -1082,7 +1024,7 @@
call $assembly/options/onSourceMappingURL call $assembly/options/onSourceMappingURL
end end
end end
get_local $4 get_local $5
get_local $8 get_local $8
i32.add i32.add
set_global $assembly/index/off set_global $assembly/index/off

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

685
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@ -12,22 +12,22 @@
}, },
"dependencies": { "dependencies": {
"@protobufjs/utf8": "^1.1.0", "@protobufjs/utf8": "^1.1.0",
"binaryen": "55.0.0-nightly.20181130", "binaryen": "63.0.0-nightly.20190107",
"glob": "^7.1.3", "glob": "^7.1.3",
"long": "^4.0.0" "long": "^4.0.0"
}, },
"devDependencies": { "devDependencies": {
"@types/node": "^10.12.3", "@types/node": "^10.12.18",
"browser-process-hrtime": "^1.0.0", "browser-process-hrtime": "^1.0.0",
"diff": "^3.5.0", "diff": "^4.0.1",
"ts-loader": "^5.2.1", "ts-loader": "^5.3.3",
"ts-node": "^6.2.0", "ts-node": "^6.2.0",
"tslint": "^5.11.0", "tslint": "^5.12.0",
"typedoc": "^0.13.0", "typedoc": "^0.13.0",
"typedoc-plugin-external-module-name": "^1.1.3", "typedoc-plugin-external-module-name": "^1.1.3",
"typescript": "^3.1.6", "typescript": "^3.2.2",
"webpack": "^4.25.1", "webpack": "^4.28.1",
"webpack-cli": "^3.1.2" "webpack-cli": "^3.2.1"
}, },
"main": "index.js", "main": "index.js",
"types": "index.d.ts", "types": "index.d.ts",

View File

@ -24,43 +24,49 @@
tee_local $2 tee_local $2
i32.wrap/i64 i32.wrap/i64
set_local $3 set_local $3
get_local $2 block (result i32)
i64.const 32 block (result i32)
i64.shr_u block (result i32)
i32.wrap/i64 get_local $2
tee_local $4 i64.const 32
i32.const 2147483647 i64.shr_u
i32.and i32.wrap/i64
tee_local $5 tee_local $4
i32.const 2146435072 i32.const 2147483647
i32.gt_s i32.and
tee_local $1 tee_local $5
i32.eqz i32.const 2146435072
if i32.gt_s
get_local $5 tee_local $1
i32.const 2146435072 i32.eqz
i32.eq if
tee_local $1 get_local $5
i32.const 2146435072
i32.eq
tee_local $1
if
get_local $3
i32.const 0
i32.ne
set_local $1
end
end
get_local $1
i32.eqz
end
if
i32.const 0
set_local $1
end
get_local $1
i32.eqz
end
if if
get_local $3
i32.const 0 i32.const 0
i32.ne
set_local $1 set_local $1
end end
get_local $1
end end
get_local $1
i32.eqz
if
i32.const 0
set_local $1
end
get_local $1
i32.eqz
if
i32.const 0
set_local $1
end
get_local $1
if if
get_local $0 get_local $0
f64.const 1 f64.const 1
@ -90,12 +96,11 @@
i32.const 255 i32.const 255
i32.eq i32.eq
tee_local $3 tee_local $3
i32.eqz if (result i32)
if get_local $3
else
i32.const 0 i32.const 0
set_local $3
end end
get_local $3
if if
get_local $0 get_local $0
get_local $0 get_local $0
@ -188,7 +193,6 @@
tee_local $3 tee_local $3
i32.shl i32.shl
set_local $1 set_local $1
get_local $4
get_local $2 get_local $2
get_local $3 get_local $3
i32.sub i32.sub
@ -210,7 +214,7 @@
i32.sub i32.sub
i32.shr_u i32.shr_u
end end
tee_local $1 get_local $4
i32.or i32.or
f32.reinterpret/i32 f32.reinterpret/i32
return return
@ -219,12 +223,39 @@
get_local $0 get_local $0
f32.mul f32.mul
) )
(func $~lib/math/NativeMath.mod (; 2 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64) (func $~lib/math/NativeMathf.pow (; 2 ;) (type $FUNCSIG$ff) (param $0 f32) (result f32)
(local $1 i32)
(local $2 i32)
block (result i32)
get_local $0
i32.reinterpret/f32
tee_local $2
i32.const 2147483647
i32.and
i32.const 2139095040
i32.gt_s
tee_local $1
i32.eqz
if
i32.const 0
set_local $1
end
get_local $1
end
if
get_local $0
f32.const 1
f32.add
return
end
get_local $0
)
(func $~lib/math/NativeMath.mod (; 3 ;) (type $FUNCSIG$dd) (param $0 f64) (result f64)
(local $1 i64) (local $1 i64)
(local $2 i64) (local $2 i64)
(local $3 i64) (local $3 i64)
(local $4 i32) (local $4 i64)
(local $5 i64) (local $5 i32)
get_local $0 get_local $0
i64.reinterpret/f64 i64.reinterpret/f64
tee_local $1 tee_local $1
@ -236,17 +267,16 @@
get_local $1 get_local $1
i64.const 63 i64.const 63
i64.shr_u i64.shr_u
set_local $5 set_local $4
get_local $2 get_local $2
i64.const 2047 i64.const 2047
i64.eq i64.eq
tee_local $4 tee_local $5
i32.eqz if (result i32)
if get_local $5
else
i32.const 0 i32.const 0
set_local $4
end end
get_local $4
if if
get_local $0 get_local $0
get_local $0 get_local $0
@ -365,8 +395,7 @@
i64.add i64.add
i64.shr_u i64.shr_u
end end
tee_local $1 get_local $4
get_local $5
i64.const 63 i64.const 63
i64.shl i64.shl
i64.or i64.or
@ -377,42 +406,46 @@
get_local $0 get_local $0
f64.mul f64.mul
) )
(func $start (; 3 ;) (type $v) (func $start (; 4 ;) (type $v)
(local $0 f32) (local $0 i32)
(local $1 i32) (local $1 i64)
(local $2 f32)
(local $3 f64)
(local $4 i32)
get_global $binary/i get_global $binary/i
tee_local $0
i32.const 1 i32.const 1
i32.rem_s i32.rem_s
drop drop
get_global $binary/i get_local $0
f64.convert_s/i32 f64.convert_s/i32
call $~lib/math/NativeMath.pow call $~lib/math/NativeMath.pow
drop drop
get_global $binary/i get_global $binary/i
tee_local $0
i32.const 1 i32.const 1
i32.lt_s i32.lt_s
set_global $binary/b set_global $binary/b
get_global $binary/i get_local $0
i32.const 1 i32.const 1
i32.gt_s i32.gt_s
set_global $binary/b set_global $binary/b
get_global $binary/i get_local $0
i32.const 1 i32.const 1
i32.le_s i32.le_s
set_global $binary/b set_global $binary/b
get_global $binary/i get_local $0
i32.const 1 i32.const 1
i32.ge_s i32.ge_s
set_global $binary/b set_global $binary/b
get_global $binary/i get_local $0
i32.const 1 i32.const 1
i32.eq i32.eq
tee_local $4
set_global $binary/b set_global $binary/b
get_global $binary/i get_local $4
i32.const 1
i32.eq
set_global $binary/b set_global $binary/b
get_global $binary/i get_local $0
i32.const 1 i32.const 1
i32.add i32.add
set_global $binary/i set_global $binary/i
@ -490,38 +523,39 @@
i32.xor i32.xor
set_global $binary/i set_global $binary/i
get_global $binary/I get_global $binary/I
tee_local $1
i64.const 1 i64.const 1
i64.rem_s i64.rem_s
drop drop
get_global $binary/I get_local $1
f64.convert_s/i64 f64.convert_s/i64
call $~lib/math/NativeMath.pow call $~lib/math/NativeMath.pow
drop drop
get_global $binary/I get_global $binary/I
tee_local $1
i64.const 1 i64.const 1
i64.lt_s i64.lt_s
set_global $binary/b set_global $binary/b
get_global $binary/I get_local $1
i64.const 1 i64.const 1
i64.gt_s i64.gt_s
set_global $binary/b set_global $binary/b
get_global $binary/I get_local $1
i64.const 1 i64.const 1
i64.le_s i64.le_s
set_global $binary/b set_global $binary/b
get_global $binary/I get_local $1
i64.const 1 i64.const 1
i64.ge_s i64.ge_s
set_global $binary/b set_global $binary/b
get_global $binary/I get_local $1
i64.const 1 i64.const 1
i64.eq i64.eq
tee_local $0
set_global $binary/b set_global $binary/b
get_global $binary/I get_local $0
i64.const 1
i64.eq
set_global $binary/b set_global $binary/b
get_global $binary/I get_local $1
i64.const 1 i64.const 1
i64.add i64.add
set_global $binary/I set_global $binary/I
@ -602,47 +636,33 @@
call $~lib/math/NativeMathf.mod call $~lib/math/NativeMathf.mod
drop drop
get_global $binary/f get_global $binary/f
tee_local $0 call $~lib/math/NativeMathf.pow
i32.reinterpret/f32 drop
i32.const 2147483647
i32.and
i32.const 2139095040
i32.gt_s
tee_local $1
i32.eqz
if
i32.const 0
set_local $1
end
block $__inlined_func$~lib/math/NativeMathf.pow
get_local $1
br_if $__inlined_func$~lib/math/NativeMathf.pow
end
get_global $binary/f get_global $binary/f
tee_local $2
f32.const 1 f32.const 1
f32.lt f32.lt
set_global $binary/b set_global $binary/b
get_global $binary/f get_local $2
f32.const 1 f32.const 1
f32.gt f32.gt
set_global $binary/b set_global $binary/b
get_global $binary/f get_local $2
f32.const 1 f32.const 1
f32.le f32.le
set_global $binary/b set_global $binary/b
get_global $binary/f get_local $2
f32.const 1 f32.const 1
f32.ge f32.ge
set_global $binary/b set_global $binary/b
get_global $binary/f get_local $2
f32.const 1 f32.const 1
f32.eq f32.eq
tee_local $0
set_global $binary/b set_global $binary/b
get_global $binary/f get_local $0
f32.const 1
f32.eq
set_global $binary/b set_global $binary/b
get_global $binary/f get_local $2
f32.const 1 f32.const 1
f32.add f32.add
set_global $binary/f set_global $binary/f
@ -654,26 +674,7 @@
call $~lib/math/NativeMathf.mod call $~lib/math/NativeMathf.mod
set_global $binary/f set_global $binary/f
get_global $binary/f get_global $binary/f
tee_local $0 call $~lib/math/NativeMathf.pow
i32.reinterpret/f32
i32.const 2147483647
i32.and
i32.const 2139095040
i32.gt_s
tee_local $1
i32.eqz
if
i32.const 0
set_local $1
end
get_local $1
if
get_local $0
f32.const 1
f32.add
set_local $0
end
get_local $0
set_global $binary/f set_global $binary/f
get_global $binary/f get_global $binary/f
f32.const 1 f32.const 1
@ -687,26 +688,7 @@
call $~lib/math/NativeMathf.mod call $~lib/math/NativeMathf.mod
set_global $binary/f set_global $binary/f
get_global $binary/f get_global $binary/f
tee_local $0 call $~lib/math/NativeMathf.pow
i32.reinterpret/f32
i32.const 2147483647
i32.and
i32.const 2139095040
i32.gt_s
tee_local $1
i32.eqz
if
i32.const 0
set_local $1
end
get_local $1
if
get_local $0
f32.const 1
f32.add
set_local $0
end
get_local $0
set_global $binary/f set_global $binary/f
get_global $binary/F get_global $binary/F
call $~lib/math/NativeMath.mod call $~lib/math/NativeMath.mod
@ -715,30 +697,30 @@
call $~lib/math/NativeMath.pow call $~lib/math/NativeMath.pow
drop drop
get_global $binary/F get_global $binary/F
tee_local $3
f64.const 1 f64.const 1
f64.lt f64.lt
set_global $binary/b set_global $binary/b
get_global $binary/F get_local $3
f64.const 1 f64.const 1
f64.gt f64.gt
set_global $binary/b set_global $binary/b
get_global $binary/F get_local $3
f64.const 1 f64.const 1
f64.le f64.le
set_global $binary/b set_global $binary/b
get_global $binary/F get_local $3
f64.const 1 f64.const 1
f64.ge f64.ge
set_global $binary/b set_global $binary/b
get_global $binary/F get_local $3
f64.const 1 f64.const 1
f64.eq f64.eq
tee_local $0
set_global $binary/b set_global $binary/b
get_global $binary/F get_local $0
f64.const 1
f64.eq
set_global $binary/b set_global $binary/b
get_global $binary/F get_local $3
f64.const 1 f64.const 1
f64.add f64.add
set_global $binary/F set_global $binary/F
@ -767,7 +749,7 @@
call $~lib/math/NativeMath.pow call $~lib/math/NativeMath.pow
set_global $binary/F set_global $binary/F
) )
(func $null (; 4 ;) (type $v) (func $null (; 5 ;) (type $v)
nop nop
) )
) )

View File

@ -45,8 +45,9 @@
i32.add i32.add
set_global $comma/a set_global $comma/a
get_global $comma/a get_global $comma/a
tee_local $0
set_global $comma/b set_global $comma/b
get_global $comma/a get_local $0
i32.const 2 i32.const 2
i32.ne i32.ne
if if
@ -77,8 +78,9 @@
i32.add i32.add
set_global $comma/a set_global $comma/a
get_global $comma/a get_global $comma/a
tee_local $0
set_global $comma/b set_global $comma/b
get_global $comma/a get_local $0
i32.const 1 i32.const 1
i32.ne i32.ne
if if

View File

@ -14,12 +14,10 @@
(export "ifThenElseBlock" (func $if/ifThenElse)) (export "ifThenElseBlock" (func $if/ifThenElse))
(export "ifAlwaysReturns" (func $if/ifAlwaysReturns)) (export "ifAlwaysReturns" (func $if/ifAlwaysReturns))
(func $if/ifThenElse (; 1 ;) (type $ii) (param $0 i32) (result i32) (func $if/ifThenElse (; 1 ;) (type $ii) (param $0 i32) (result i32)
i32.const 1
i32.const 0
get_local $0 get_local $0
if (result i32) select
i32.const 1
else
i32.const 0
end
) )
(func $if/ifThen (; 2 ;) (type $ii) (param $0 i32) (result i32) (func $if/ifThen (; 2 ;) (type $ii) (param $0 i32) (result i32)
get_local $0 get_local $0

View File

@ -190,8 +190,8 @@
(local $4 f64) (local $4 f64)
(local $5 f64) (local $5 f64)
(local $6 f64) (local $6 f64)
(local $7 f64) (local $7 i32)
(local $8 i32) (local $8 f64)
(local $9 f64) (local $9 f64)
(local $10 f64) (local $10 f64)
(local $11 f64) (local $11 f64)
@ -201,40 +201,40 @@
tee_local $6 tee_local $6
f64.const 1.6 f64.const 1.6
f64.div f64.div
set_local $11 set_local $12
get_local $0
f64.convert_u/i32
get_local $2
f64.convert_u/i32
tee_local $4
f64.const 2
f64.div
tee_local $7
f64.sub
f64.const 10 f64.const 10
f64.const 3 f64.const 3
get_local $6 get_local $6
f64.mul f64.mul
f64.const 4 f64.const 4
get_local $4 get_local $2
f64.convert_u/i32
tee_local $4
f64.mul f64.mul
f64.min f64.min
f64.div f64.div
tee_local $12
f64.mul
set_local $9 set_local $9
get_local $0
f64.convert_u/i32
get_local $4
f64.const 2
f64.div
f64.sub
get_local $9
f64.mul
set_local $10
loop $repeat|0 loop $repeat|0
get_local $8 get_local $7
get_local $1 get_local $1
i32.lt_u i32.lt_u
if if
get_local $8 get_local $7
f64.convert_u/i32 f64.convert_u/i32
get_local $11
f64.sub
get_local $12 get_local $12
f64.sub
get_local $9
f64.mul f64.mul
set_local $10 set_local $11
f64.const 0 f64.const 0
set_local $4 set_local $4
f64.const 0 f64.const 0
@ -249,7 +249,7 @@
get_local $5 get_local $5
get_local $5 get_local $5
f64.mul f64.mul
tee_local $7 tee_local $8
f64.add f64.add
f64.const 4 f64.const 4
f64.le f64.le
@ -260,13 +260,13 @@
f64.mul f64.mul
get_local $5 get_local $5
f64.mul f64.mul
get_local $9 get_local $10
f64.add f64.add
set_local $5 set_local $5
get_local $6 get_local $6
get_local $7 get_local $8
f64.sub f64.sub
get_local $10 get_local $11
f64.add f64.add
set_local $4 set_local $4
get_local $2 get_local $2
@ -299,18 +299,18 @@
get_local $5 get_local $5
f64.mul f64.mul
f64.sub f64.sub
get_local $10 get_local $11
f64.add f64.add
set_local $7 set_local $8
f64.const 2 f64.const 2
get_local $4 get_local $4
f64.mul f64.mul
get_local $5 get_local $5
f64.mul f64.mul
get_local $9 get_local $10
f64.add f64.add
set_local $5 set_local $5
get_local $7 get_local $8
set_local $4 set_local $4
get_local $2 get_local $2
i32.const 1 i32.const 1
@ -322,7 +322,7 @@
get_local $0 get_local $0
get_local $1 get_local $1
i32.mul i32.mul
get_local $8 get_local $7
i32.add i32.add
i32.const 1 i32.const 1
i32.shl i32.shl
@ -363,12 +363,11 @@
else else
i32.const 2047 i32.const 2047
end end
tee_local $2
i32.store16 i32.store16
get_local $8 get_local $7
i32.const 1 i32.const 1
i32.add i32.add
set_local $8 set_local $7
br $repeat|0 br $repeat|0
end end
end end

View File

@ -20,15 +20,12 @@
get_local $0 get_local $0
set_local $6 set_local $6
loop $continue|0 loop $continue|0
get_local $1
i32.const 3
i32.and
get_local $2 get_local $2
if (result i32) get_local $2
get_local $1 select
i32.const 3
i32.and
else
get_local $2
end
tee_local $3
if if
get_local $0 get_local $0
tee_local $4 tee_local $4
@ -120,14 +117,14 @@
i32.add i32.add
i32.load i32.load
i32.store i32.store
get_local $0
i32.const 8
i32.add
set_local $0
get_local $1 get_local $1
i32.const 8 i32.const 8
i32.add i32.add
set_local $1 set_local $1
get_local $0
i32.const 8
i32.add
set_local $0
end end
get_local $2 get_local $2
i32.const 4 i32.const 4
@ -137,14 +134,14 @@
get_local $1 get_local $1
i32.load i32.load
i32.store i32.store
get_local $0
i32.const 4
i32.add
set_local $0
get_local $1 get_local $1
i32.const 4 i32.const 4
i32.add i32.add
set_local $1 set_local $1
get_local $0
i32.const 4
i32.add
set_local $0
end end
get_local $2 get_local $2
i32.const 2 i32.const 2
@ -154,21 +151,19 @@
get_local $1 get_local $1
i32.load16_u i32.load16_u
i32.store16 i32.store16
get_local $0
i32.const 2
i32.add
set_local $0
get_local $1 get_local $1
i32.const 2 i32.const 2
i32.add i32.add
set_local $1 set_local $1
get_local $0
i32.const 2
i32.add
set_local $0
end end
get_local $2 get_local $2
i32.const 1 i32.const 1
i32.and i32.and
if if
get_local $1
set_local $3
get_local $0 get_local $0
get_local $1 get_local $1
i32.load8_u i32.load8_u
@ -912,8 +907,6 @@
i32.const 1 i32.const 1
i32.and i32.and
if if
get_local $1
set_local $3
get_local $0 get_local $0
get_local $1 get_local $1
i32.load8_u i32.load8_u

View File

@ -16,12 +16,12 @@
(local $4 i32) (local $4 i32)
(local $5 i32) (local $5 i32)
get_local $0 get_local $0
set_local $4 set_local $3
get_local $0 get_local $0
get_local $1 get_local $1
i32.eq i32.eq
if if
get_local $4 get_local $3
return return
end end
get_local $0 get_local $0
@ -44,7 +44,7 @@
get_local $2 get_local $2
i32.eqz i32.eqz
if if
get_local $4 get_local $3
return return
end end
get_local $2 get_local $2
@ -52,18 +52,17 @@
i32.sub i32.sub
set_local $2 set_local $2
get_local $0 get_local $0
tee_local $5 tee_local $4
tee_local $3
i32.const 1 i32.const 1
i32.add i32.add
set_local $0 set_local $0
get_local $1 get_local $1
tee_local $3 tee_local $5
i32.const 1 i32.const 1
i32.add i32.add
set_local $1 set_local $1
get_local $4
get_local $5 get_local $5
get_local $3
i32.load8_u i32.load8_u
i32.store8 i32.store8
br $continue|0 br $continue|0
@ -98,18 +97,17 @@
get_local $2 get_local $2
if if
get_local $0 get_local $0
tee_local $5 tee_local $4
tee_local $3
i32.const 1 i32.const 1
i32.add i32.add
set_local $0 set_local $0
get_local $1 get_local $1
tee_local $3 tee_local $5
i32.const 1 i32.const 1
i32.add i32.add
set_local $1 set_local $1
get_local $4
get_local $5 get_local $5
get_local $3
i32.load8_u i32.load8_u
i32.store8 i32.store8
get_local $2 get_local $2
@ -138,7 +136,7 @@
get_local $2 get_local $2
i32.eqz i32.eqz
if if
get_local $4 get_local $3
return return
end end
get_local $2 get_local $2
@ -193,7 +191,7 @@
end end
end end
end end
get_local $4 get_local $3
) )
(func $start (; 2 ;) (type $v) (func $start (; 2 ;) (type $v)
i32.const 8 i32.const 8

View File

@ -349,32 +349,28 @@
) )
(func $~lib/internal/string/compareUnsafe (; 6 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (func $~lib/internal/string/compareUnsafe (; 6 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
(local $3 i32) (local $3 i32)
(local $4 i32)
get_local $0
set_local $3
loop $continue|0 loop $continue|0
get_local $2 get_local $2
if (result i32) if (result i32)
get_local $3 get_local $0
i32.load16_u offset=4 i32.load16_u offset=4
get_local $1 get_local $1
i32.load16_u offset=4 i32.load16_u offset=4
i32.sub i32.sub
tee_local $4 tee_local $3
i32.eqz i32.eqz
else else
get_local $2 get_local $2
end end
tee_local $0
if if
get_local $2 get_local $2
i32.const 1 i32.const 1
i32.sub i32.sub
set_local $2 set_local $2
get_local $3 get_local $0
i32.const 2 i32.const 2
i32.add i32.add
set_local $3 set_local $0
get_local $1 get_local $1
i32.const 2 i32.const 2
i32.add i32.add
@ -382,7 +378,7 @@
br $continue|0 br $continue|0
end end
end end
get_local $4 get_local $3
) )
(func $~lib/string/String.__eq (; 7 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/string/String.__eq (; 7 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
@ -749,88 +745,85 @@
i64.and i64.and
tee_local $1 tee_local $1
get_local $5 get_local $5
i64.lt_u i64.ge_u
if (result i32) br_if $continue|3
get_global $~lib/internal/number/_K get_global $~lib/internal/number/_K
get_local $9 get_local $9
i32.add i32.add
set_global $~lib/internal/number/_K set_global $~lib/internal/number/_K
get_local $12 get_local $12
i32.const 0 i32.const 0
get_local $9 get_local $9
i32.sub i32.sub
i32.const 2 i32.const 2
i32.shl i32.shl
i32.add i32.add
i64.load32_u offset=8 i64.load32_u offset=8
get_local $8
i64.mul
set_local $8
get_local $6
i32.const 1
i32.sub
i32.const 1
i32.shl
get_local $0
i32.add
tee_local $7
i32.load16_u offset=4
set_local $4
loop $continue|4
get_local $1
get_local $8 get_local $8
i64.mul i64.lt_u
set_local $8 tee_local $2
get_local $6 if
i32.const 1 get_local $5
i32.sub
i32.const 1
i32.shl
get_local $0
i32.add
tee_local $7
i32.load16_u offset=4
set_local $4
loop $continue|4
get_local $1 get_local $1
i64.sub
get_local $10
i64.ge_u
set_local $2
end
get_local $2
if
get_local $1
get_local $10
i64.add
get_local $8 get_local $8
i64.lt_u i64.lt_u
tee_local $2 tee_local $2
i32.eqz
if if
get_local $5 get_local $8
get_local $1 get_local $1
i64.sub i64.sub
get_local $10
i64.ge_u
set_local $2
end
get_local $2
if
get_local $1 get_local $1
get_local $10 get_local $10
i64.add i64.add
get_local $8 get_local $8
i64.lt_u i64.sub
tee_local $2 i64.gt_u
i32.eqz set_local $2
if
get_local $8
get_local $1
i64.sub
get_local $1
get_local $10
i64.add
get_local $8
i64.sub
i64.gt_u
set_local $2
end
end
get_local $2
if
get_local $4
i32.const 1
i32.sub
set_local $4
get_local $1
get_local $10
i64.add
set_local $1
br $continue|4
end end
end end
get_local $7 get_local $2
get_local $4 if
i32.store16 offset=4 get_local $4
get_local $6 i32.const 1
else i32.sub
br $continue|3 set_local $4
get_local $1
get_local $10
i64.add
set_local $1
br $continue|4
end
end end
get_local $7
get_local $4
i32.store16 offset=4
get_local $6
end end
) )
(func $~lib/internal/memory/memcpy (; 9 ;) (type $iiiv) (param $0 i32) (param $1 i32) (param $2 i32) (func $~lib/internal/memory/memcpy (; 9 ;) (type $iiiv) (param $0 i32) (param $1 i32) (param $2 i32)
@ -838,15 +831,12 @@
(local $4 i32) (local $4 i32)
(local $5 i32) (local $5 i32)
loop $continue|0 loop $continue|0
get_local $1
i32.const 3
i32.and
get_local $2 get_local $2
if (result i32) get_local $2
get_local $1 select
i32.const 3
i32.and
else
get_local $2
end
tee_local $3
if if
get_local $0 get_local $0
tee_local $4 tee_local $4
@ -938,14 +928,14 @@
i32.add i32.add
i32.load i32.load
i32.store i32.store
get_local $0
i32.const 8
i32.add
set_local $0
get_local $1 get_local $1
i32.const 8 i32.const 8
i32.add i32.add
set_local $1 set_local $1
get_local $0
i32.const 8
i32.add
set_local $0
end end
get_local $2 get_local $2
i32.const 4 i32.const 4
@ -955,14 +945,14 @@
get_local $1 get_local $1
i32.load i32.load
i32.store i32.store
get_local $0
i32.const 4
i32.add
set_local $0
get_local $1 get_local $1
i32.const 4 i32.const 4
i32.add i32.add
set_local $1 set_local $1
get_local $0
i32.const 4
i32.add
set_local $0
end end
get_local $2 get_local $2
i32.const 2 i32.const 2
@ -972,21 +962,19 @@
get_local $1 get_local $1
i32.load16_u i32.load16_u
i32.store16 i32.store16
get_local $0
i32.const 2
i32.add
set_local $0
get_local $1 get_local $1
i32.const 2 i32.const 2
i32.add i32.add
set_local $1 set_local $1
get_local $0
i32.const 2
i32.add
set_local $0
end end
get_local $2 get_local $2
i32.const 1 i32.const 1
i32.and i32.and
if if
get_local $1
set_local $3
get_local $0 get_local $0
get_local $1 get_local $1
i32.load8_u i32.load8_u
@ -1729,8 +1717,6 @@
i32.const 1 i32.const 1
i32.and i32.and
if if
get_local $1
set_local $3
get_local $0 get_local $0
get_local $1 get_local $1
i32.load8_u i32.load8_u
@ -1797,7 +1783,6 @@
set_local $2 set_local $2
get_local $0 get_local $0
tee_local $4 tee_local $4
tee_local $3
i32.const 1 i32.const 1
i32.add i32.add
set_local $0 set_local $0
@ -1843,7 +1828,6 @@
if if
get_local $0 get_local $0
tee_local $4 tee_local $4
tee_local $3
i32.const 1 i32.const 1
i32.add i32.add
set_local $0 set_local $0
@ -1940,6 +1924,7 @@
(func $~lib/internal/number/prettify (; 11 ;) (type $iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (func $~lib/internal/number/prettify (; 11 ;) (type $iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
(local $5 i32)
get_local $2 get_local $2
i32.eqz i32.eqz
if if
@ -1959,11 +1944,11 @@
get_local $1 get_local $1
get_local $2 get_local $2
i32.add i32.add
tee_local $4 tee_local $5
i32.le_s i32.le_s
tee_local $3 tee_local $3
if if
get_local $4 get_local $5
i32.const 21 i32.const 21
i32.le_s i32.le_s
set_local $3 set_local $3
@ -1975,7 +1960,7 @@
loop $repeat|0 loop $repeat|0
block $break|0 block $break|0
get_local $3 get_local $3
get_local $4 get_local $5
i32.ge_s i32.ge_s
br_if $break|0 br_if $break|0
get_local $3 get_local $3
@ -1992,40 +1977,41 @@
br $repeat|0 br $repeat|0
end end
end end
get_local $4 get_local $5
i32.const 1 i32.const 1
i32.shl i32.shl
get_local $0 get_local $0
i32.add i32.add
i32.const 3145774 i32.const 3145774
i32.store offset=4 i32.store offset=4
get_local $4 get_local $5
i32.const 2 i32.const 2
i32.add i32.add
else else
get_local $4 get_local $5
i32.const 0 i32.const 0
i32.gt_s i32.gt_s
tee_local $3 tee_local $3
if if
get_local $4 get_local $5
i32.const 21 i32.const 21
i32.le_s i32.le_s
set_local $3 set_local $3
end end
get_local $3 get_local $3
if (result i32) if (result i32)
get_local $4 get_local $5
i32.const 1 i32.const 1
i32.shl i32.shl
get_local $0 get_local $0
i32.add i32.add
tee_local $3 tee_local $3
i32.const 6
i32.add
get_local $3
i32.const 4 i32.const 4
i32.add i32.add
tee_local $0
i32.const 2
i32.add
get_local $0
i32.const 0 i32.const 0
get_local $2 get_local $2
i32.sub i32.sub
@ -2040,11 +2026,11 @@
i32.add i32.add
else else
i32.const -6 i32.const -6
get_local $4 get_local $5
i32.lt_s i32.lt_s
tee_local $3 tee_local $3
if if
get_local $4 get_local $5
i32.const 0 i32.const 0
i32.le_s i32.le_s
set_local $3 set_local $3
@ -2054,16 +2040,15 @@
get_local $0 get_local $0
i32.const 4 i32.const 4
i32.add i32.add
tee_local $2
i32.const 2 i32.const 2
get_local $4 get_local $5
i32.sub i32.sub
tee_local $3 tee_local $3
i32.const 1 i32.const 1
i32.shl i32.shl
i32.add i32.add
get_local $0 get_local $2
i32.const 4
i32.add
get_local $1 get_local $1
i32.const 1 i32.const 1
i32.shl i32.shl
@ -2072,24 +2057,24 @@
i32.const 3014704 i32.const 3014704
i32.store offset=4 i32.store offset=4
i32.const 2 i32.const 2
set_local $2 set_local $4
loop $repeat|1 loop $repeat|1
block $break|1 block $break|1
get_local $2 get_local $4
get_local $3 get_local $3
i32.ge_s i32.ge_s
br_if $break|1 br_if $break|1
get_local $2 get_local $4
i32.const 1 i32.const 1
i32.shl i32.shl
get_local $0 get_local $0
i32.add i32.add
i32.const 48 i32.const 48
i32.store16 offset=4 i32.store16 offset=4
get_local $2 get_local $4
i32.const 1 i32.const 1
i32.add i32.add
set_local $2 set_local $4
br $repeat|1 br $repeat|1
end end
end end
@ -2107,48 +2092,52 @@
get_local $0 get_local $0
i32.const 4 i32.const 4
i32.add i32.add
set_local $3 tee_local $3
get_local $4 block (result i32)
i32.const 1 get_local $5
i32.sub i32.const 1
tee_local $2
i32.const 0
i32.lt_s
tee_local $0
if
i32.const 0
get_local $2
i32.sub i32.sub
set_local $2 tee_local $4
i32.const 0
i32.lt_s
tee_local $2
if
i32.const 0
get_local $4
i32.sub
set_local $4
end
get_local $4
end end
get_local $3 get_local $4
get_local $2
get_local $2
call $~lib/internal/number/decimalCount32 call $~lib/internal/number/decimalCount32
i32.const 1 i32.const 1
i32.add i32.add
tee_local $2 tee_local $4
call $~lib/internal/number/utoa32_lut call $~lib/internal/number/utoa32_lut
get_local $3 get_local $3
i32.const 45 i32.const 45
i32.const 43 i32.const 43
get_local $0 get_local $2
select select
i32.store16 offset=4 i32.store16 offset=4
get_local $2 get_local $4
i32.const 2 i32.const 2
i32.add i32.add
else else
get_local $0 get_local $0
i32.const 8 i32.const 4
i32.add i32.add
get_local $0 tee_local $3
i32.const 6 i32.const 4
i32.add
get_local $3
i32.const 2
i32.add i32.add
get_local $1 get_local $1
i32.const 1 i32.const 1
i32.shl i32.shl
tee_local $2 tee_local $4
i32.const 2 i32.const 2
i32.sub i32.sub
call $~lib/internal/memory/memmove call $~lib/internal/memory/memmove
@ -2156,7 +2145,7 @@
i32.const 46 i32.const 46
i32.store16 offset=6 i32.store16 offset=6
get_local $0 get_local $0
get_local $2 get_local $4
i32.add i32.add
tee_local $0 tee_local $0
i32.const 101 i32.const 101
@ -2164,36 +2153,37 @@
get_local $0 get_local $0
i32.const 4 i32.const 4
i32.add i32.add
set_local $3 tee_local $3
get_local $4 block (result i32)
i32.const 1 get_local $5
i32.sub i32.const 1
tee_local $2
i32.const 0
i32.lt_s
tee_local $0
if
i32.const 0
get_local $2
i32.sub i32.sub
set_local $2 tee_local $4
i32.const 0
i32.lt_s
tee_local $2
if
i32.const 0
get_local $4
i32.sub
set_local $4
end
get_local $4
end end
get_local $3 get_local $4
get_local $2
get_local $2
call $~lib/internal/number/decimalCount32 call $~lib/internal/number/decimalCount32
i32.const 1 i32.const 1
i32.add i32.add
tee_local $2 tee_local $0
call $~lib/internal/number/utoa32_lut call $~lib/internal/number/utoa32_lut
get_local $3 get_local $3
i32.const 45 i32.const 45
i32.const 43 i32.const 43
get_local $0 get_local $2
select select
i32.store16 offset=4 i32.store16 offset=4
get_local $0
get_local $1 get_local $1
get_local $2
i32.add i32.add
i32.const 2 i32.const 2
i32.add i32.add
@ -2206,8 +2196,8 @@
(local $2 i64) (local $2 i64)
(local $3 i64) (local $3 i64)
(local $4 i32) (local $4 i32)
(local $5 i32) (local $5 i64)
(local $6 i64) (local $6 i32)
(local $7 i64) (local $7 i64)
(local $8 i32) (local $8 i32)
(local $9 i64) (local $9 i64)
@ -2221,15 +2211,15 @@
f64.const 0 f64.const 0
f64.lt f64.lt
tee_local $13 tee_local $13
if if (result f64)
get_local $1
f64.neg
set_local $1
get_local $0 get_local $0
i32.const 45 i32.const 45
i32.store16 offset=4 i32.store16 offset=4
get_local $1
f64.neg
else
get_local $1
end end
get_local $1
i64.reinterpret/f64 i64.reinterpret/f64
tee_local $2 tee_local $2
i64.const 9218868437227405312 i64.const 9218868437227405312
@ -2244,7 +2234,7 @@
get_local $8 get_local $8
i32.const 0 i32.const 0
i32.ne i32.ne
tee_local $5 tee_local $6
i64.extend_u/i32 i64.extend_u/i32
i64.const 52 i64.const 52
i64.shl i64.shl
@ -2252,24 +2242,24 @@
set_local $2 set_local $2
get_local $8 get_local $8
i32.const 1 i32.const 1
get_local $5 get_local $6
select select
i32.const 1075 i32.const 1075
i32.sub i32.sub
tee_local $8 tee_local $8
i32.const 1 i32.const 1
i32.sub i32.sub
set_local $5 set_local $6
get_local $2 get_local $2
i64.const 1 i64.const 1
i64.shl i64.shl
i64.const 1 i64.const 1
i64.add i64.add
tee_local $6 tee_local $5
i64.clz i64.clz
i32.wrap/i64 i32.wrap/i64
set_local $4 set_local $4
get_local $6 get_local $5
get_local $4 get_local $4
i64.extend_s/i32 i64.extend_s/i32
i64.shl i64.shl
@ -2288,15 +2278,15 @@
get_local $8 get_local $8
get_local $14 get_local $14
i32.sub i32.sub
get_local $5 get_local $6
get_local $4 get_local $4
i32.sub i32.sub
tee_local $5 tee_local $6
i32.sub i32.sub
i64.extend_s/i32 i64.extend_s/i32
i64.shl i64.shl
set_global $~lib/internal/number/_frc_minus set_global $~lib/internal/number/_frc_minus
get_local $5 get_local $6
set_global $~lib/internal/number/_exp set_global $~lib/internal/number/_exp
i32.const 348 i32.const 348
i32.const -61 i32.const -61
@ -2319,7 +2309,7 @@
i32.shr_s i32.shr_s
i32.const 1 i32.const 1
i32.add i32.add
tee_local $5 tee_local $6
i32.const 3 i32.const 3
i32.shl i32.shl
i32.sub i32.sub
@ -2329,14 +2319,14 @@
set_local $4 set_local $4
i32.const 1728 i32.const 1728
i32.load i32.load
get_local $5 get_local $6
i32.const 3 i32.const 3
i32.shl i32.shl
i32.add i32.add
i64.load offset=8 i64.load offset=8
set_global $~lib/internal/number/_frc_pow set_global $~lib/internal/number/_frc_pow
get_local $4 get_local $4
get_local $5 get_local $6
i32.const 1 i32.const 1
i32.shl i32.shl
i32.add i32.add
@ -2354,13 +2344,13 @@
i64.and i64.and
tee_local $7 tee_local $7
get_global $~lib/internal/number/_frc_pow get_global $~lib/internal/number/_frc_pow
tee_local $6 tee_local $5
i64.const 4294967295 i64.const 4294967295
i64.and i64.and
tee_local $9 tee_local $9
i64.mul i64.mul
set_local $10 set_local $10
get_local $6 get_local $5
i64.const 32 i64.const 32
i64.shr_u i64.shr_u
tee_local $11 tee_local $11
@ -2380,7 +2370,6 @@
i64.const 4294967295 i64.const 4294967295
i64.and i64.and
i64.add i64.add
tee_local $2
i64.const 2147483647 i64.const 2147483647
i64.add i64.add
i64.const 32 i64.const 32
@ -2394,7 +2383,7 @@
i64.add i64.add
i64.add i64.add
set_local $2 set_local $2
get_local $6 get_local $5
i64.const 4294967295 i64.const 4294967295
i64.and i64.and
tee_local $11 tee_local $11
@ -2406,7 +2395,7 @@
i64.mul i64.mul
set_local $7 set_local $7
get_local $10 get_local $10
get_local $6 get_local $5
i64.const 32 i64.const 32
i64.shr_u i64.shr_u
tee_local $9 tee_local $9
@ -2425,7 +2414,6 @@
i64.const 4294967295 i64.const 4294967295
i64.and i64.and
i64.add i64.add
tee_local $7
i64.const 2147483647 i64.const 2147483647
i64.add i64.add
i64.const 32 i64.const 32
@ -2444,13 +2432,13 @@
i64.const 4294967295 i64.const 4294967295
i64.and i64.and
tee_local $7 tee_local $7
get_local $6 get_local $5
i64.const 4294967295 i64.const 4294967295
i64.and i64.and
tee_local $9 tee_local $9
i64.mul i64.mul
set_local $10 set_local $10
get_local $6 get_local $5
i64.const 32 i64.const 32
i64.shr_u i64.shr_u
tee_local $11 tee_local $11
@ -2470,7 +2458,7 @@
i64.const 4294967295 i64.const 4294967295
i64.and i64.and
i64.add i64.add
set_local $6 set_local $5
get_local $15 get_local $15
i64.const 1 i64.const 1
i64.sub i64.sub
@ -2482,7 +2470,7 @@
i64.const 32 i64.const 32
i64.shr_u i64.shr_u
i64.add i64.add
get_local $6 get_local $5
i64.const 2147483647 i64.const 2147483647
i64.add i64.add
i64.const 32 i64.const 32
@ -2507,7 +2495,6 @@
i32.add i32.add
i32.const -64 i32.const -64
i32.sub i32.sub
tee_local $5
get_local $7 get_local $7
get_local $4 get_local $4
get_global $~lib/internal/number/_exp get_global $~lib/internal/number/_exp

View File

@ -80,32 +80,28 @@
) )
(func $~lib/internal/string/compareUnsafe (; 2 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (func $~lib/internal/string/compareUnsafe (; 2 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
(local $3 i32) (local $3 i32)
(local $4 i32)
get_local $0
set_local $3
loop $continue|0 loop $continue|0
get_local $2 get_local $2
if (result i32) if (result i32)
get_local $3 get_local $0
i32.load16_u offset=4 i32.load16_u offset=4
get_local $1 get_local $1
i32.load16_u offset=4 i32.load16_u offset=4
i32.sub i32.sub
tee_local $4 tee_local $3
i32.eqz i32.eqz
else else
get_local $2 get_local $2
end end
tee_local $0
if if
get_local $2 get_local $2
i32.const 1 i32.const 1
i32.sub i32.sub
set_local $2 set_local $2
get_local $3 get_local $0
i32.const 2 i32.const 2
i32.add i32.add
set_local $3 set_local $0
get_local $1 get_local $1
i32.const 2 i32.const 2
i32.add i32.add
@ -113,7 +109,7 @@
br $continue|0 br $continue|0
end end
end end
get_local $4 get_local $3
) )
(func $~lib/string/String.__eq (; 3 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32) (func $~lib/string/String.__eq (; 3 ;) (type $FUNCSIG$ii) (param $0 i32) (result i32)
(local $1 i32) (local $1 i32)
@ -127,12 +123,11 @@
get_local $0 get_local $0
i32.eqz i32.eqz
tee_local $1 tee_local $1
i32.eqz if (result i32)
if get_local $1
else
i32.const 0 i32.const 0
set_local $1
end end
get_local $1
if if
i32.const 0 i32.const 0
return return

View File

@ -267,15 +267,12 @@
(local $4 i32) (local $4 i32)
(local $5 i32) (local $5 i32)
loop $continue|0 loop $continue|0
get_local $1
i32.const 3
i32.and
get_local $2 get_local $2
if (result i32) get_local $2
get_local $1 select
i32.const 3
i32.and
else
get_local $2
end
tee_local $3
if if
get_local $0 get_local $0
tee_local $4 tee_local $4
@ -367,14 +364,14 @@
i32.add i32.add
i32.load i32.load
i32.store i32.store
get_local $0
i32.const 8
i32.add
set_local $0
get_local $1 get_local $1
i32.const 8 i32.const 8
i32.add i32.add
set_local $1 set_local $1
get_local $0
i32.const 8
i32.add
set_local $0
end end
get_local $2 get_local $2
i32.const 4 i32.const 4
@ -384,14 +381,14 @@
get_local $1 get_local $1
i32.load i32.load
i32.store i32.store
get_local $0
i32.const 4
i32.add
set_local $0
get_local $1 get_local $1
i32.const 4 i32.const 4
i32.add i32.add
set_local $1 set_local $1
get_local $0
i32.const 4
i32.add
set_local $0
end end
get_local $2 get_local $2
i32.const 2 i32.const 2
@ -401,21 +398,19 @@
get_local $1 get_local $1
i32.load16_u i32.load16_u
i32.store16 i32.store16
get_local $0
i32.const 2
i32.add
set_local $0
get_local $1 get_local $1
i32.const 2 i32.const 2
i32.add i32.add
set_local $1 set_local $1
get_local $0
i32.const 2
i32.add
set_local $0
end end
get_local $2 get_local $2
i32.const 1 i32.const 1
i32.and i32.and
if if
get_local $1
set_local $3
get_local $0 get_local $0
get_local $1 get_local $1
i32.load8_u i32.load8_u
@ -1158,8 +1153,6 @@
i32.const 1 i32.const 1
i32.and i32.and
if if
get_local $1
set_local $3
get_local $0 get_local $0
get_local $1 get_local $1
i32.load8_u i32.load8_u
@ -1184,16 +1177,15 @@
get_local $0 get_local $0
i32.le_u i32.le_u
tee_local $3 tee_local $3
i32.eqz if (result i32)
if get_local $3
else
get_local $0 get_local $0
i32.const 42 i32.const 42
i32.add i32.add
get_local $1 get_local $1
i32.le_u i32.le_u
set_local $3
end end
get_local $3
if if
get_local $0 get_local $0
get_local $1 get_local $1
@ -1229,7 +1221,6 @@
set_local $2 set_local $2
get_local $0 get_local $0
tee_local $4 tee_local $4
tee_local $3
i32.const 1 i32.const 1
i32.add i32.add
set_local $0 set_local $0
@ -1275,7 +1266,6 @@
if if
get_local $0 get_local $0
tee_local $4 tee_local $4
tee_local $3
i32.const 1 i32.const 1
i32.add i32.add
set_local $0 set_local $0
@ -1386,15 +1376,15 @@
i32.const 0 i32.const 0
i32.ne i32.ne
tee_local $3 tee_local $3
if if (result i32)
get_local $0 get_local $0
i32.load8_u i32.load8_u
get_local $1 get_local $1
i32.load8_u i32.load8_u
i32.eq i32.eq
set_local $3 else
get_local $3
end end
get_local $3
if if
get_local $2 get_local $2
i32.const 1 i32.const 1
@ -1421,7 +1411,6 @@
else else
i32.const 0 i32.const 0
end end
tee_local $0
) )
(func $start (; 6 ;) (type $v) (func $start (; 6 ;) (type $v)
i32.const 56 i32.const 56

View File

@ -33,7 +33,6 @@
else else
unreachable unreachable
end end
tee_local $0
i32.load i32.load
tee_local $0 tee_local $0
i32.load i32.load
@ -48,7 +47,6 @@
else else
unreachable unreachable
end end
tee_local $0
) )
(func $std/array-access/stringArrayPropertyAccess (; 2 ;) (type $ii) (param $0 i32) (result i32) (func $std/array-access/stringArrayPropertyAccess (; 2 ;) (type $ii) (param $0 i32) (result i32)
i32.const 0 i32.const 0
@ -65,7 +63,6 @@
else else
unreachable unreachable
end end
tee_local $0
i32.load i32.load
) )
(func $~lib/internal/string/compareUnsafe (; 3 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32) (func $~lib/internal/string/compareUnsafe (; 3 ;) (type $FUNCSIG$iiiii) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (result i32)
@ -89,7 +86,6 @@
else else
get_local $3 get_local $3
end end
tee_local $0
if if
get_local $3 get_local $3
i32.const 1 i32.const 1
@ -163,7 +159,6 @@
else else
unreachable unreachable
end end
tee_local $0
call $~lib/string/String#startsWith call $~lib/string/String#startsWith
) )
(func $std/array-access/stringArrayArrayPropertyAccess (; 6 ;) (type $ii) (param $0 i32) (result i32) (func $std/array-access/stringArrayArrayPropertyAccess (; 6 ;) (type $ii) (param $0 i32) (result i32)
@ -182,7 +177,6 @@
else else
unreachable unreachable
end end
tee_local $0
i32.load i32.load
tee_local $0 tee_local $0
i32.load i32.load
@ -197,7 +191,6 @@
else else
unreachable unreachable
end end
tee_local $0
i32.load i32.load
) )
(func $std/array-access/stringArrayArrayMethodCall (; 7 ;) (type $ii) (param $0 i32) (result i32) (func $std/array-access/stringArrayArrayMethodCall (; 7 ;) (type $ii) (param $0 i32) (result i32)
@ -216,7 +209,6 @@
else else
unreachable unreachable
end end
tee_local $0
i32.load i32.load
tee_local $0 tee_local $0
i32.load i32.load
@ -231,7 +223,6 @@
else else
unreachable unreachable
end end
tee_local $0
call $~lib/string/String#startsWith call $~lib/string/String#startsWith
) )
(func $null (; 8 ;) (type $v) (func $null (; 8 ;) (type $v)

View File

@ -422,7 +422,6 @@
else else
unreachable unreachable
end end
tee_local $0
i32.const 255 i32.const 255
i32.and i32.and
if if
@ -447,7 +446,6 @@
else else
unreachable unreachable
end end
tee_local $0
i32.const 255 i32.const 255
i32.and i32.and
i32.const 1 i32.const 1
@ -474,7 +472,6 @@
else else
unreachable unreachable
end end
tee_local $0
i32.const 255 i32.const 255
i32.and i32.and
i32.const 2 i32.const 2
@ -513,7 +510,6 @@
else else
unreachable unreachable
end end
tee_local $0
if if
i32.const 0 i32.const 0
i32.const 32 i32.const 32
@ -538,7 +534,6 @@
else else
unreachable unreachable
end end
tee_local $0
i32.const 1 i32.const 1
i32.ne i32.ne
if if
@ -565,7 +560,6 @@
else else
unreachable unreachable
end end
tee_local $0
i32.const 2 i32.const 2
i32.ne i32.ne
if if
@ -590,8 +584,9 @@
tee_local $0 tee_local $0
i32.load i32.load
get_global $std/array-literal/i get_global $std/array-literal/i
tee_local $1
i32.store8 offset=8 i32.store8 offset=8
get_global $std/array-literal/i get_local $1
i32.const 1 i32.const 1
i32.add i32.add
set_global $std/array-literal/i set_global $std/array-literal/i
@ -600,8 +595,9 @@
i32.const 1 i32.const 1
i32.add i32.add
get_global $std/array-literal/i get_global $std/array-literal/i
tee_local $1
i32.store8 offset=8 i32.store8 offset=8
get_global $std/array-literal/i get_local $1
i32.const 1 i32.const 1
i32.add i32.add
set_global $std/array-literal/i set_global $std/array-literal/i
@ -637,7 +633,6 @@
else else
unreachable unreachable
end end
tee_local $0
i32.const 255 i32.const 255
i32.and i32.and
if if
@ -662,7 +657,6 @@
else else
unreachable unreachable
end end
tee_local $0
i32.const 255 i32.const 255
i32.and i32.and
i32.const 1 i32.const 1
@ -689,7 +683,6 @@
else else
unreachable unreachable
end end
tee_local $0
i32.const 255 i32.const 255
i32.and i32.and
i32.const 2 i32.const 2
@ -708,8 +701,9 @@
tee_local $0 tee_local $0
i32.load i32.load
get_global $std/array-literal/i get_global $std/array-literal/i
tee_local $1
i32.store offset=8 i32.store offset=8
get_global $std/array-literal/i get_local $1
i32.const 1 i32.const 1
i32.add i32.add
set_global $std/array-literal/i set_global $std/array-literal/i
@ -718,8 +712,9 @@
i32.const 4 i32.const 4
i32.add i32.add
get_global $std/array-literal/i get_global $std/array-literal/i
tee_local $1
i32.store offset=8 i32.store offset=8
get_global $std/array-literal/i get_local $1
i32.const 1 i32.const 1
i32.add i32.add
set_global $std/array-literal/i set_global $std/array-literal/i
@ -757,7 +752,6 @@
else else
unreachable unreachable
end end
tee_local $0
if if
i32.const 0 i32.const 0
i32.const 32 i32.const 32
@ -782,7 +776,6 @@
else else
unreachable unreachable
end end
tee_local $0
i32.const 1 i32.const 1
i32.ne i32.ne
if if
@ -809,7 +802,6 @@
else else
unreachable unreachable
end end
tee_local $0
i32.const 2 i32.const 2
i32.ne i32.ne
if if

File diff suppressed because it is too large Load Diff

View File

@ -334,15 +334,12 @@
(local $4 i32) (local $4 i32)
(local $5 i32) (local $5 i32)
loop $continue|0 loop $continue|0
get_local $1
i32.const 3
i32.and
get_local $2 get_local $2
if (result i32) get_local $2
get_local $1 select
i32.const 3
i32.and
else
get_local $2
end
tee_local $3
if if
get_local $0 get_local $0
tee_local $4 tee_local $4
@ -434,14 +431,14 @@
i32.add i32.add
i32.load i32.load
i32.store i32.store
get_local $0
i32.const 8
i32.add
set_local $0
get_local $1 get_local $1
i32.const 8 i32.const 8
i32.add i32.add
set_local $1 set_local $1
get_local $0
i32.const 8
i32.add
set_local $0
end end
get_local $2 get_local $2
i32.const 4 i32.const 4
@ -451,14 +448,14 @@
get_local $1 get_local $1
i32.load i32.load
i32.store i32.store
get_local $0
i32.const 4
i32.add
set_local $0
get_local $1 get_local $1
i32.const 4 i32.const 4
i32.add i32.add
set_local $1 set_local $1
get_local $0
i32.const 4
i32.add
set_local $0
end end
get_local $2 get_local $2
i32.const 2 i32.const 2
@ -468,21 +465,19 @@
get_local $1 get_local $1
i32.load16_u i32.load16_u
i32.store16 i32.store16
get_local $0
i32.const 2
i32.add
set_local $0
get_local $1 get_local $1
i32.const 2 i32.const 2
i32.add i32.add
set_local $1 set_local $1
get_local $0
i32.const 2
i32.add
set_local $0
end end
get_local $2 get_local $2
i32.const 1 i32.const 1
i32.and i32.and
if if
get_local $1
set_local $3
get_local $0 get_local $0
get_local $1 get_local $1
i32.load8_u i32.load8_u
@ -1225,8 +1220,6 @@
i32.const 1 i32.const 1
i32.and i32.and
if if
get_local $1
set_local $3
get_local $0 get_local $0
get_local $1 get_local $1
i32.load8_u i32.load8_u
@ -1293,7 +1286,6 @@
set_local $2 set_local $2
get_local $0 get_local $0
tee_local $4 tee_local $4
tee_local $3
i32.const 1 i32.const 1
i32.add i32.add
set_local $0 set_local $0
@ -1339,7 +1331,6 @@
if if
get_local $0 get_local $0
tee_local $4 tee_local $4
tee_local $3
i32.const 1 i32.const 1
i32.add i32.add
set_local $0 set_local $0
@ -1454,7 +1445,6 @@
select select
else else
get_local $1 get_local $1
tee_local $4
get_local $3 get_local $3
get_local $1 get_local $1
get_local $3 get_local $3
@ -1477,14 +1467,12 @@
select select
else else
get_local $2 get_local $2
tee_local $4
get_local $3 get_local $3
get_local $2 get_local $2
get_local $3 get_local $3
i32.lt_s i32.lt_s
select select
end end
tee_local $2
get_local $1 get_local $1
i32.sub i32.sub
tee_local $4 tee_local $4
@ -1498,7 +1486,6 @@
tee_local $3 tee_local $3
i32.const 8 i32.const 8
i32.add i32.add
tee_local $4
get_local $0 get_local $0
i32.const 8 i32.const 8
i32.add i32.add

View File

@ -135,27 +135,28 @@
i32.const 0 i32.const 0
call $~lib/allocator/arena/__memory_allocate call $~lib/allocator/arena/__memory_allocate
end end
tee_local $0
set_global $std/constructor/ctorConditionallyReturns set_global $std/constructor/ctorConditionallyReturns
i32.const 0 i32.const 0
call $~lib/allocator/arena/__memory_allocate call $~lib/allocator/arena/__memory_allocate
set_global $std/constructor/ctorAllocates set_global $std/constructor/ctorAllocates
i32.const 0 i32.const 0
set_local $0 set_local $0
get_global $std/constructor/b block (result i32)
if get_global $std/constructor/b
if
i32.const 0
call $~lib/allocator/arena/__memory_allocate
set_local $0
end
get_local $0
i32.eqz
end
if (result i32)
i32.const 0 i32.const 0
call $~lib/allocator/arena/__memory_allocate call $~lib/allocator/arena/__memory_allocate
set_local $0 else
get_local $0
end end
get_local $0
i32.eqz
if
i32.const 0
call $~lib/allocator/arena/__memory_allocate
set_local $0
end
get_local $0
set_global $std/constructor/ctorConditionallyAllocates set_global $std/constructor/ctorConditionallyAllocates
) )
(func $null (; 2 ;) (type $v) (func $null (; 2 ;) (type $v)

View File

@ -460,21 +460,20 @@
(local $4 i32) (local $4 i32)
get_local $0 get_local $0
i32.load offset=8 i32.load offset=8
set_local $4 set_local $3
get_local $1 get_local $1
i32.const 1073741816 i32.const 1073741816
i32.gt_u i32.gt_u
tee_local $3 tee_local $4
i32.eqz if (result i32)
if get_local $4
else
get_local $1 get_local $1
i32.const 4 i32.const 4
i32.add i32.add
get_local $4 get_local $3
i32.gt_s i32.gt_s
set_local $3
end end
get_local $3
if if
i32.const 0 i32.const 0
i32.const 136 i32.const 136
@ -617,21 +616,20 @@
(local $4 i32) (local $4 i32)
get_local $0 get_local $0
i32.load offset=8 i32.load offset=8
set_local $4 set_local $3
get_local $1 get_local $1
i32.const 1073741816 i32.const 1073741816
i32.gt_u i32.gt_u
tee_local $3 tee_local $4
i32.eqz if (result i32)
if get_local $4
else
get_local $1 get_local $1
i32.const 2 i32.const 2
i32.add i32.add
get_local $4 get_local $3
i32.gt_s i32.gt_s
set_local $3
end end
get_local $3
if if
i32.const 0 i32.const 0
i32.const 136 i32.const 136
@ -650,8 +648,9 @@
i32.load16_s offset=8 i32.load16_s offset=8
set_local $0 set_local $0
get_local $2 get_local $2
i32.eqz if (result i32)
if get_local $0
else
get_local $0 get_local $0
i32.const 16 i32.const 16
i32.shl i32.shl
@ -663,30 +662,27 @@
i32.const 8 i32.const 8
i32.shl i32.shl
i32.or i32.or
set_local $0
end end
get_local $0
) )
(func $~lib/dataview/DataView#getInt32 (; 12 ;) (type $iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (func $~lib/dataview/DataView#getInt32 (; 12 ;) (type $iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
(local $3 i32) (local $3 i32)
(local $4 i32) (local $4 i32)
get_local $0 get_local $0
i32.load offset=8 i32.load offset=8
set_local $4 set_local $3
get_local $1 get_local $1
i32.const 1073741816 i32.const 1073741816
i32.gt_u i32.gt_u
tee_local $3 tee_local $4
i32.eqz if (result i32)
if get_local $4
else
get_local $1 get_local $1
i32.const 4 i32.const 4
i32.add i32.add
get_local $4 get_local $3
i32.gt_s i32.gt_s
set_local $3
end end
get_local $3
if if
i32.const 0 i32.const 0
i32.const 136 i32.const 136
@ -705,8 +701,9 @@
i32.load offset=8 i32.load offset=8
set_local $0 set_local $0
get_local $2 get_local $2
i32.eqz if (result i32)
if get_local $0
else
get_local $0 get_local $0
i32.const -16711936 i32.const -16711936
i32.and i32.and
@ -718,9 +715,7 @@
i32.const 8 i32.const 8
i32.rotr i32.rotr
i32.or i32.or
set_local $0
end end
get_local $0
) )
(func $~lib/dataview/DataView#getInt64 (; 13 ;) (type $FUNCSIG$jii) (param $0 i32) (param $1 i32) (result i64) (func $~lib/dataview/DataView#getInt64 (; 13 ;) (type $FUNCSIG$jii) (param $0 i32) (param $1 i32) (result i64)
(local $2 i64) (local $2 i64)
@ -744,13 +739,12 @@
i64.load offset=8 i64.load offset=8
set_local $2 set_local $2
get_local $1 get_local $1
i32.eqz if (result i64)
if get_local $2
else
get_local $2 get_local $2
call $~lib/polyfills/bswap<u64> call $~lib/polyfills/bswap<u64>
set_local $2
end end
get_local $2
) )
(func $~lib/dataview/DataView#getUint8 (; 14 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/dataview/DataView#getUint8 (; 14 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
@ -794,21 +788,20 @@
(local $4 i32) (local $4 i32)
get_local $0 get_local $0
i32.load offset=8 i32.load offset=8
set_local $4 set_local $3
get_local $1 get_local $1
i32.const 1073741816 i32.const 1073741816
i32.gt_u i32.gt_u
tee_local $3 tee_local $4
i32.eqz if (result i32)
if get_local $4
else
get_local $1 get_local $1
i32.const 2 i32.const 2
i32.add i32.add
get_local $4 get_local $3
i32.gt_s i32.gt_s
set_local $3
end end
get_local $3
if if
i32.const 0 i32.const 0
i32.const 136 i32.const 136
@ -827,8 +820,9 @@
i32.load16_u offset=8 i32.load16_u offset=8
set_local $0 set_local $0
get_local $2 get_local $2
i32.eqz if (result i32)
if get_local $0
else
get_local $0 get_local $0
i32.const 8 i32.const 8
i32.shl i32.shl
@ -838,9 +832,7 @@
i32.const 8 i32.const 8
i32.shr_u i32.shr_u
i32.or i32.or
set_local $0
end end
get_local $0
) )
(func $~lib/dataview/DataView#setFloat32 (; 16 ;) (type $FUNCSIG$vifi) (param $0 i32) (param $1 f32) (param $2 i32) (func $~lib/dataview/DataView#setFloat32 (; 16 ;) (type $FUNCSIG$vifi) (param $0 i32) (param $1 f32) (param $2 i32)
(local $3 i32) (local $3 i32)
@ -1038,16 +1030,13 @@
get_local $0 get_local $0
i32.load offset=4 i32.load offset=4
i32.add i32.add
set_local $0
get_local $2 get_local $2
i32.eqz if (result i64)
if get_local $1
else
get_local $1 get_local $1
call $~lib/polyfills/bswap<u64> call $~lib/polyfills/bswap<u64>
set_local $1
end end
get_local $0
get_local $1
i64.store offset=8 i64.store offset=8
) )
(func $~lib/dataview/DataView#setUint16 (; 22 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32) (func $~lib/dataview/DataView#setUint16 (; 22 ;) (type $FUNCSIG$viii) (param $0 i32) (param $1 i32) (param $2 i32)
@ -1088,6 +1077,7 @@
i32.store16 offset=8 i32.store16 offset=8
) )
(func $start (; 23 ;) (type $v) (func $start (; 23 ;) (type $v)
(local $0 i32)
i32.const 216 i32.const 216
set_global $~lib/allocator/arena/startOffset set_global $~lib/allocator/arena/startOffset
get_global $~lib/allocator/arena/startOffset get_global $~lib/allocator/arena/startOffset
@ -1127,10 +1117,11 @@
i32.const 95 i32.const 95
call $~lib/internal/typedarray/TypedArray<u8>#__set call $~lib/internal/typedarray/TypedArray<u8>#__set
get_global $std/dataview/array get_global $std/dataview/array
tee_local $0
i32.load i32.load
get_global $std/dataview/array get_local $0
i32.load offset=4 i32.load offset=4
get_global $std/dataview/array get_local $0
i32.load offset=8 i32.load offset=8
call $~lib/dataview/DataView#constructor call $~lib/dataview/DataView#constructor
set_global $std/dataview/view set_global $std/dataview/view

View File

@ -183,15 +183,15 @@
unreachable unreachable
end end
get_global $std/date/date get_global $std/date/date
tee_local $0
get_global $std/date/creationTime get_global $std/date/creationTime
i64.const 1 i64.const 1
i64.add i64.add
tee_local $1
i64.store i64.store
get_global $std/date/date get_local $0
i64.load i64.load
get_global $std/date/creationTime get_local $1
i64.const 1
i64.add
i64.ne i64.ne
if if
i32.const 0 i32.const 0

View File

@ -238,10 +238,10 @@
call $~lib/allocator/arena/__memory_allocate call $~lib/allocator/arena/__memory_allocate
set_global $~lib/collector/itcm/fromSpace set_global $~lib/collector/itcm/fromSpace
get_global $~lib/collector/itcm/fromSpace get_global $~lib/collector/itcm/fromSpace
tee_local $0
i32.const -1 i32.const -1
i32.store offset=8 i32.store offset=8
get_global $~lib/collector/itcm/fromSpace get_local $0
tee_local $0
get_local $0 get_local $0
i32.store i32.store
get_local $0 get_local $0
@ -251,10 +251,10 @@
call $~lib/allocator/arena/__memory_allocate call $~lib/allocator/arena/__memory_allocate
set_global $~lib/collector/itcm/toSpace set_global $~lib/collector/itcm/toSpace
get_global $~lib/collector/itcm/toSpace get_global $~lib/collector/itcm/toSpace
tee_local $0
i32.const -1 i32.const -1
i32.store offset=8 i32.store offset=8
get_global $~lib/collector/itcm/toSpace get_local $0
tee_local $0
get_local $0 get_local $0
i32.store i32.store
get_local $0 get_local $0
@ -443,15 +443,12 @@
(local $4 i32) (local $4 i32)
(local $5 i32) (local $5 i32)
loop $continue|0 loop $continue|0
get_local $1
i32.const 3
i32.and
get_local $2 get_local $2
if (result i32) get_local $2
get_local $1 select
i32.const 3
i32.and
else
get_local $2
end
tee_local $3
if if
get_local $0 get_local $0
tee_local $4 tee_local $4
@ -543,14 +540,14 @@
i32.add i32.add
i32.load i32.load
i32.store i32.store
get_local $0
i32.const 8
i32.add
set_local $0
get_local $1 get_local $1
i32.const 8 i32.const 8
i32.add i32.add
set_local $1 set_local $1
get_local $0
i32.const 8
i32.add
set_local $0
end end
get_local $2 get_local $2
i32.const 4 i32.const 4
@ -560,14 +557,14 @@
get_local $1 get_local $1
i32.load i32.load
i32.store i32.store
get_local $0
i32.const 4
i32.add
set_local $0
get_local $1 get_local $1
i32.const 4 i32.const 4
i32.add i32.add
set_local $1 set_local $1
get_local $0
i32.const 4
i32.add
set_local $0
end end
get_local $2 get_local $2
i32.const 2 i32.const 2
@ -577,21 +574,19 @@
get_local $1 get_local $1
i32.load16_u i32.load16_u
i32.store16 i32.store16
get_local $0
i32.const 2
i32.add
set_local $0
get_local $1 get_local $1
i32.const 2 i32.const 2
i32.add i32.add
set_local $1 set_local $1
get_local $0
i32.const 2
i32.add
set_local $0
end end
get_local $2 get_local $2
i32.const 1 i32.const 1
i32.and i32.and
if if
get_local $1
set_local $3
get_local $0 get_local $0
get_local $1 get_local $1
i32.load8_u i32.load8_u
@ -1334,8 +1329,6 @@
i32.const 1 i32.const 1
i32.and i32.and
if if
get_local $1
set_local $3
get_local $0 get_local $0
get_local $1 get_local $1
i32.load8_u i32.load8_u
@ -1402,7 +1395,6 @@
set_local $2 set_local $2
get_local $0 get_local $0
tee_local $4 tee_local $4
tee_local $3
i32.const 1 i32.const 1
i32.add i32.add
set_local $0 set_local $0
@ -1448,7 +1440,6 @@
if if
get_local $0 get_local $0
tee_local $4 tee_local $4
tee_local $3
i32.const 1 i32.const 1
i32.add i32.add
set_local $0 set_local $0
@ -1856,7 +1847,7 @@
i32.and i32.and
i32.eq i32.eq
tee_local $0 tee_local $0
if if (result i32)
get_global $~lib/collector/itcm/white get_global $~lib/collector/itcm/white
get_local $1 get_local $1
i32.const 16 i32.const 16
@ -1865,9 +1856,9 @@
i32.const 3 i32.const 3
i32.and i32.and
i32.eq i32.eq
set_local $0 else
get_local $0
end end
get_local $0
if if
get_local $2 get_local $2
call $~lib/collector/itcm/ManagedObject#makeGray call $~lib/collector/itcm/ManagedObject#makeGray

View File

@ -195,10 +195,10 @@
call $~lib/allocator/arena/__memory_allocate call $~lib/allocator/arena/__memory_allocate
set_global $~lib/collector/itcm/fromSpace set_global $~lib/collector/itcm/fromSpace
get_global $~lib/collector/itcm/fromSpace get_global $~lib/collector/itcm/fromSpace
tee_local $0
i32.const -1 i32.const -1
i32.store offset=8 i32.store offset=8
get_global $~lib/collector/itcm/fromSpace get_local $0
tee_local $0
get_local $0 get_local $0
i32.store i32.store
get_local $0 get_local $0
@ -208,10 +208,10 @@
call $~lib/allocator/arena/__memory_allocate call $~lib/allocator/arena/__memory_allocate
set_global $~lib/collector/itcm/toSpace set_global $~lib/collector/itcm/toSpace
get_global $~lib/collector/itcm/toSpace get_global $~lib/collector/itcm/toSpace
tee_local $0
i32.const -1 i32.const -1
i32.store offset=8 i32.store offset=8
get_global $~lib/collector/itcm/toSpace get_local $0
tee_local $0
get_local $0 get_local $0
i32.store i32.store
get_local $0 get_local $0
@ -398,36 +398,39 @@
call $~lib/collector/itcm/__gc_allocate call $~lib/collector/itcm/__gc_allocate
set_global $std/gc-basics/obj set_global $std/gc-basics/obj
get_global $std/gc-basics/obj get_global $std/gc-basics/obj
tee_local $0
i32.const 123 i32.const 123
i32.store i32.store
get_global $std/gc-basics/obj get_local $0
i32.const 16 i32.const 16
i32.sub i32.sub
tee_local $0 tee_local $1
i32.load offset=4 i32.load offset=4
set_local $2 set_local $2
get_local $0 block (result i32)
i32.load get_local $1
i32.const -4 i32.load
i32.and i32.const -4
tee_local $3 i32.and
i32.const 0 tee_local $3
i32.ne
tee_local $1
if
get_local $2
i32.const 0 i32.const 0
i32.ne i32.ne
set_local $1 tee_local $0
if
get_local $2
i32.const 0
i32.ne
set_local $0
end
get_local $0
end end
get_local $1 if (result i32)
if
get_local $2 get_local $2
get_local $3 get_local $3
i32.eq i32.eq
set_local $1 else
get_local $0
end end
get_local $1
i32.eqz i32.eqz
if if
i32.const 0 i32.const 0
@ -437,7 +440,7 @@
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
end end
get_local $0 get_local $1
i32.load offset=8 i32.load offset=8
i32.const 1 i32.const 1
i32.ne i32.ne
@ -449,7 +452,7 @@
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
end end
get_local $0 get_local $1
i32.load offset=12 i32.load offset=12
if if
i32.const 0 i32.const 0
@ -459,7 +462,7 @@
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
end end
get_local $0 get_local $1
i32.load offset=16 i32.load offset=16
i32.const 123 i32.const 123
i32.ne i32.ne

View File

@ -187,10 +187,10 @@
call $~lib/allocator/arena/__memory_allocate call $~lib/allocator/arena/__memory_allocate
set_global $~lib/collector/itcm/fromSpace set_global $~lib/collector/itcm/fromSpace
get_global $~lib/collector/itcm/fromSpace get_global $~lib/collector/itcm/fromSpace
tee_local $0
i32.const -1 i32.const -1
i32.store offset=8 i32.store offset=8
get_global $~lib/collector/itcm/fromSpace get_local $0
tee_local $0
get_local $0 get_local $0
i32.store i32.store
get_local $0 get_local $0
@ -200,10 +200,10 @@
call $~lib/allocator/arena/__memory_allocate call $~lib/allocator/arena/__memory_allocate
set_global $~lib/collector/itcm/toSpace set_global $~lib/collector/itcm/toSpace
get_global $~lib/collector/itcm/toSpace get_global $~lib/collector/itcm/toSpace
tee_local $0
i32.const -1 i32.const -1
i32.store offset=8 i32.store offset=8
get_global $~lib/collector/itcm/toSpace get_local $0
tee_local $0
get_local $0 get_local $0
i32.store i32.store
get_local $0 get_local $0
@ -404,7 +404,8 @@
set_global $std/gc-object/obj set_global $std/gc-object/obj
call $~lib/collector/itcm/__gc_collect call $~lib/collector/itcm/__gc_collect
get_global $std/gc-object/obj get_global $std/gc-object/obj
get_global $std/gc-object/obj tee_local $0
get_local $0
i32.store i32.store
call $~lib/collector/itcm/__gc_collect call $~lib/collector/itcm/__gc_collect
i32.const 0 i32.const 0

File diff suppressed because it is too large Load Diff

View File

@ -640,7 +640,6 @@
i32.const 1 i32.const 1
i32.or i32.or
end end
tee_local $3
call $~lib/map/Map<i8,i32>#rehash call $~lib/map/Map<i8,i32>#rehash
end end
get_local $0 get_local $0
@ -760,7 +759,7 @@
select select
i32.ge_u i32.ge_u
tee_local $1 tee_local $1
if if (result i32)
get_local $0 get_local $0
i32.load offset=20 i32.load offset=20
get_local $0 get_local $0
@ -770,9 +769,9 @@
f64.mul f64.mul
i32.trunc_s/f64 i32.trunc_s/f64
i32.lt_s i32.lt_s
set_local $1 else
get_local $1
end end
get_local $1
if if
get_local $0 get_local $0
get_local $2 get_local $2
@ -1300,7 +1299,6 @@
i32.const 1 i32.const 1
i32.or i32.or
end end
tee_local $3
call $~lib/map/Map<u8,i32>#rehash call $~lib/map/Map<u8,i32>#rehash
end end
get_local $0 get_local $0
@ -1416,7 +1414,7 @@
select select
i32.ge_u i32.ge_u
tee_local $1 tee_local $1
if if (result i32)
get_local $0 get_local $0
i32.load offset=20 i32.load offset=20
get_local $0 get_local $0
@ -1426,9 +1424,9 @@
f64.mul f64.mul
i32.trunc_s/f64 i32.trunc_s/f64
i32.lt_s i32.lt_s
set_local $1 else
get_local $1
end end
get_local $1
if if
get_local $0 get_local $0
get_local $2 get_local $2
@ -2019,7 +2017,6 @@
i32.const 1 i32.const 1
i32.or i32.or
end end
tee_local $3
call $~lib/map/Map<i16,i32>#rehash call $~lib/map/Map<i16,i32>#rehash
end end
get_local $0 get_local $0
@ -2098,7 +2095,6 @@
else else
unreachable unreachable
end end
tee_local $0
) )
(func $~lib/map/Map<i16,i32>#delete (; 25 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/map/Map<i16,i32>#delete (; 25 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
@ -2158,7 +2154,7 @@
select select
i32.ge_u i32.ge_u
tee_local $1 tee_local $1
if if (result i32)
get_local $0 get_local $0
i32.load offset=20 i32.load offset=20
get_local $0 get_local $0
@ -2168,9 +2164,9 @@
f64.mul f64.mul
i32.trunc_s/f64 i32.trunc_s/f64
i32.lt_s i32.lt_s
set_local $1 else
get_local $1
end end
get_local $1
if if
get_local $0 get_local $0
get_local $2 get_local $2
@ -2726,7 +2722,6 @@
i32.const 1 i32.const 1
i32.or i32.or
end end
tee_local $3
call $~lib/map/Map<u16,i32>#rehash call $~lib/map/Map<u16,i32>#rehash
end end
get_local $0 get_local $0
@ -2803,7 +2798,6 @@
else else
unreachable unreachable
end end
tee_local $0
) )
(func $~lib/map/Map<u16,i32>#delete (; 31 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/map/Map<u16,i32>#delete (; 31 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
@ -2861,7 +2855,7 @@
select select
i32.ge_u i32.ge_u
tee_local $1 tee_local $1
if if (result i32)
get_local $0 get_local $0
i32.load offset=20 i32.load offset=20
get_local $0 get_local $0
@ -2871,9 +2865,9 @@
f64.mul f64.mul
i32.trunc_s/f64 i32.trunc_s/f64
i32.lt_s i32.lt_s
set_local $1 else
get_local $1
end end
get_local $1
if if
get_local $0 get_local $0
get_local $2 get_local $2
@ -3446,7 +3440,6 @@
i32.const 1 i32.const 1
i32.or i32.or
end end
tee_local $3
call $~lib/map/Map<i32,i32>#rehash call $~lib/map/Map<i32,i32>#rehash
end end
get_local $0 get_local $0
@ -3509,7 +3502,6 @@
else else
unreachable unreachable
end end
tee_local $0
) )
(func $~lib/map/Map<i32,i32>#delete (; 39 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/map/Map<i32,i32>#delete (; 39 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
@ -4527,7 +4519,6 @@
i32.const 1 i32.const 1
i32.or i32.or
end end
tee_local $3
call $~lib/map/Map<i64,i32>#rehash call $~lib/map/Map<i64,i32>#rehash
end end
get_local $0 get_local $0
@ -4590,7 +4581,6 @@
else else
unreachable unreachable
end end
tee_local $0
) )
(func $~lib/map/Map<i64,i32>#delete (; 50 ;) (type $iIi) (param $0 i32) (param $1 i64) (result i32) (func $~lib/map/Map<i64,i32>#delete (; 50 ;) (type $iIi) (param $0 i32) (param $1 i64) (result i32)
(local $2 i32) (local $2 i32)
@ -5510,7 +5500,6 @@
i32.const 1 i32.const 1
i32.or i32.or
end end
tee_local $3
call $~lib/map/Map<f32,i32>#rehash call $~lib/map/Map<f32,i32>#rehash
end end
get_local $0 get_local $0
@ -5574,7 +5563,6 @@
else else
unreachable unreachable
end end
tee_local $0
) )
(func $~lib/map/Map<f32,i32>#delete (; 58 ;) (type $ifi) (param $0 i32) (param $1 f32) (result i32) (func $~lib/map/Map<f32,i32>#delete (; 58 ;) (type $ifi) (param $0 i32) (param $1 f32) (result i32)
(local $2 i32) (local $2 i32)
@ -6170,7 +6158,6 @@
i32.const 1 i32.const 1
i32.or i32.or
end end
tee_local $3
call $~lib/map/Map<f64,i32>#rehash call $~lib/map/Map<f64,i32>#rehash
end end
get_local $0 get_local $0
@ -6234,7 +6221,6 @@
else else
unreachable unreachable
end end
tee_local $0
) )
(func $~lib/map/Map<f64,i32>#delete (; 65 ;) (type $iFi) (param $0 i32) (param $1 f64) (result i32) (func $~lib/map/Map<f64,i32>#delete (; 65 ;) (type $iFi) (param $0 i32) (param $1 f64) (result i32)
(local $2 i32) (local $2 i32)

File diff suppressed because it is too large Load Diff

View File

@ -149,7 +149,7 @@
get_local $2 get_local $2
get_local $3 get_local $3
i64.ge_u i64.ge_u
if if (result i64)
get_local $2 get_local $2
get_local $3 get_local $3
i64.eq i64.eq
@ -157,9 +157,9 @@
get_local $2 get_local $2
get_local $3 get_local $3
i64.sub i64.sub
set_local $2 else
get_local $2
end end
get_local $2
i64.const 1 i64.const 1
i64.shl i64.shl
set_local $2 set_local $2
@ -214,7 +214,6 @@
i64.add i64.add
i64.shr_u i64.shr_u
end end
tee_local $2
get_local $8 get_local $8
i64.const 63 i64.const 63
i64.shl i64.shl
@ -395,7 +394,7 @@
get_local $2 get_local $2
get_local $4 get_local $4
i32.ge_u i32.ge_u
if if (result i32)
get_local $2 get_local $2
get_local $4 get_local $4
i32.eq i32.eq
@ -403,9 +402,9 @@
get_local $2 get_local $2
get_local $4 get_local $4
i32.sub i32.sub
set_local $2 else
get_local $2
end end
get_local $2
i32.const 1 i32.const 1
i32.shl i32.shl
set_local $2 set_local $2
@ -437,7 +436,6 @@
tee_local $5 tee_local $5
i32.shl i32.shl
set_local $2 set_local $2
get_local $8
get_local $3 get_local $3
get_local $5 get_local $5
i32.sub i32.sub
@ -459,7 +457,7 @@
i32.sub i32.sub
i32.shr_u i32.shr_u
end end
tee_local $2 get_local $8
i32.or i32.or
f32.reinterpret/i32 f32.reinterpret/i32
return return

File diff suppressed because it is too large Load Diff

View File

@ -67,15 +67,12 @@
(local $4 i32) (local $4 i32)
(local $5 i32) (local $5 i32)
loop $continue|0 loop $continue|0
get_local $1
i32.const 3
i32.and
get_local $2 get_local $2
if (result i32) get_local $2
get_local $1 select
i32.const 3
i32.and
else
get_local $2
end
tee_local $3
if if
get_local $0 get_local $0
tee_local $4 tee_local $4
@ -167,14 +164,14 @@
i32.add i32.add
i32.load i32.load
i32.store i32.store
get_local $0
i32.const 8
i32.add
set_local $0
get_local $1 get_local $1
i32.const 8 i32.const 8
i32.add i32.add
set_local $1 set_local $1
get_local $0
i32.const 8
i32.add
set_local $0
end end
get_local $2 get_local $2
i32.const 4 i32.const 4
@ -184,14 +181,14 @@
get_local $1 get_local $1
i32.load i32.load
i32.store i32.store
get_local $0
i32.const 4
i32.add
set_local $0
get_local $1 get_local $1
i32.const 4 i32.const 4
i32.add i32.add
set_local $1 set_local $1
get_local $0
i32.const 4
i32.add
set_local $0
end end
get_local $2 get_local $2
i32.const 2 i32.const 2
@ -201,21 +198,19 @@
get_local $1 get_local $1
i32.load16_u i32.load16_u
i32.store16 i32.store16
get_local $0
i32.const 2
i32.add
set_local $0
get_local $1 get_local $1
i32.const 2 i32.const 2
i32.add i32.add
set_local $1 set_local $1
get_local $0
i32.const 2
i32.add
set_local $0
end end
get_local $2 get_local $2
i32.const 1 i32.const 1
i32.and i32.and
if if
get_local $1
set_local $3
get_local $0 get_local $0
get_local $1 get_local $1
i32.load8_u i32.load8_u
@ -958,8 +953,6 @@
i32.const 1 i32.const 1
i32.and i32.and
if if
get_local $1
set_local $3
get_local $0 get_local $0
get_local $1 get_local $1
i32.load8_u i32.load8_u
@ -984,16 +977,15 @@
get_local $0 get_local $0
i32.le_u i32.le_u
tee_local $3 tee_local $3
i32.eqz if (result i32)
if get_local $3
else
get_local $0 get_local $0
i32.const 8 i32.const 8
i32.add i32.add
get_local $1 get_local $1
i32.le_u i32.le_u
set_local $3
end end
get_local $3
if if
get_local $0 get_local $0
get_local $1 get_local $1
@ -1029,7 +1021,6 @@
set_local $2 set_local $2
get_local $0 get_local $0
tee_local $4 tee_local $4
tee_local $3
i32.const 1 i32.const 1
i32.add i32.add
set_local $0 set_local $0
@ -1075,7 +1066,6 @@
if if
get_local $0 get_local $0
tee_local $4 tee_local $4
tee_local $3
i32.const 1 i32.const 1
i32.add i32.add
set_local $0 set_local $0
@ -1199,12 +1189,13 @@
unreachable unreachable
end end
get_global $std/pointer/one get_global $std/pointer/one
tee_local $0
i32.const 1 i32.const 1
i32.store i32.store
get_global $std/pointer/one get_local $0
i32.const 2 i32.const 2
i32.store offset=4 i32.store offset=4
get_global $std/pointer/one get_local $0
i32.load i32.load
i32.const 1 i32.const 1
i32.ne i32.ne
@ -1274,9 +1265,10 @@
i32.add i32.add
set_global $std/pointer/one set_global $std/pointer/one
get_global $std/pointer/one get_global $std/pointer/one
tee_local $0
set_global $std/pointer/nextOne set_global $std/pointer/nextOne
get_global $std/pointer/nextOne get_global $std/pointer/nextOne
get_global $std/pointer/one get_local $0
i32.ne i32.ne
if if
i32.const 0 i32.const 0
@ -1485,11 +1477,12 @@
unreachable unreachable
end end
get_global $std/pointer/buf get_global $std/pointer/buf
tee_local $0
i32.const 8 i32.const 8
i32.add i32.add
f32.const 1.2999999523162842 f32.const 1.2999999523162842
f32.store f32.store
get_global $std/pointer/buf get_local $0
i32.const 8 i32.const 8
i32.add i32.add
f32.load f32.load

View File

@ -633,7 +633,6 @@
i32.const 1 i32.const 1
i32.or i32.or
end end
tee_local $2
call $~lib/set/Set<i8>#rehash call $~lib/set/Set<i8>#rehash
end end
get_local $0 get_local $0
@ -729,7 +728,7 @@
select select
i32.ge_u i32.ge_u
tee_local $1 tee_local $1
if if (result i32)
get_local $0 get_local $0
i32.load offset=20 i32.load offset=20
get_local $0 get_local $0
@ -739,9 +738,9 @@
f64.mul f64.mul
i32.trunc_s/f64 i32.trunc_s/f64
i32.lt_s i32.lt_s
set_local $1 else
get_local $1
end end
get_local $1
if if
get_local $0 get_local $0
get_local $2 get_local $2
@ -1162,7 +1161,6 @@
i32.const 1 i32.const 1
i32.or i32.or
end end
tee_local $2
call $~lib/set/Set<u8>#rehash call $~lib/set/Set<u8>#rehash
end end
get_local $0 get_local $0
@ -1256,7 +1254,7 @@
select select
i32.ge_u i32.ge_u
tee_local $1 tee_local $1
if if (result i32)
get_local $0 get_local $0
i32.load offset=20 i32.load offset=20
get_local $0 get_local $0
@ -1266,9 +1264,9 @@
f64.mul f64.mul
i32.trunc_s/f64 i32.trunc_s/f64
i32.lt_s i32.lt_s
set_local $1 else
get_local $1
end end
get_local $1
if if
get_local $0 get_local $0
get_local $2 get_local $2
@ -1766,7 +1764,6 @@
i32.const 1 i32.const 1
i32.or i32.or
end end
tee_local $2
call $~lib/set/Set<i16>#rehash call $~lib/set/Set<i16>#rehash
end end
get_local $0 get_local $0
@ -1871,7 +1868,7 @@
select select
i32.ge_u i32.ge_u
tee_local $1 tee_local $1
if if (result i32)
get_local $0 get_local $0
i32.load offset=20 i32.load offset=20
get_local $0 get_local $0
@ -1881,9 +1878,9 @@
f64.mul f64.mul
i32.trunc_s/f64 i32.trunc_s/f64
i32.lt_s i32.lt_s
set_local $1 else
get_local $1
end end
get_local $1
if if
get_local $0 get_local $0
get_local $2 get_local $2
@ -2332,7 +2329,6 @@
i32.const 1 i32.const 1
i32.or i32.or
end end
tee_local $2
call $~lib/set/Set<u16>#rehash call $~lib/set/Set<u16>#rehash
end end
get_local $0 get_local $0
@ -2435,7 +2431,7 @@
select select
i32.ge_u i32.ge_u
tee_local $1 tee_local $1
if if (result i32)
get_local $0 get_local $0
i32.load offset=20 i32.load offset=20
get_local $0 get_local $0
@ -2445,9 +2441,9 @@
f64.mul f64.mul
i32.trunc_s/f64 i32.trunc_s/f64
i32.lt_s i32.lt_s
set_local $1 else
get_local $1
end end
get_local $1
if if
get_local $0 get_local $0
get_local $2 get_local $2
@ -2929,7 +2925,6 @@
i32.const 1 i32.const 1
i32.or i32.or
end end
tee_local $2
call $~lib/set/Set<i32>#rehash call $~lib/set/Set<i32>#rehash
end end
get_local $0 get_local $0
@ -3844,7 +3839,6 @@
i32.const 1 i32.const 1
i32.or i32.or
end end
tee_local $2
call $~lib/set/Set<i64>#rehash call $~lib/set/Set<i64>#rehash
end end
get_local $0 get_local $0
@ -4648,7 +4642,6 @@
i32.const 1 i32.const 1
i32.or i32.or
end end
tee_local $2
call $~lib/set/Set<f32>#rehash call $~lib/set/Set<f32>#rehash
end end
get_local $0 get_local $0
@ -5206,7 +5199,6 @@
i32.const 1 i32.const 1
i32.or i32.or
end end
tee_local $2
call $~lib/set/Set<f64>#rehash call $~lib/set/Set<f64>#rehash
end end
get_local $0 get_local $0

View File

@ -122,15 +122,12 @@
(local $4 i32) (local $4 i32)
(local $5 i32) (local $5 i32)
loop $continue|0 loop $continue|0
get_local $1
i32.const 3
i32.and
get_local $2 get_local $2
if (result i32) get_local $2
get_local $1 select
i32.const 3
i32.and
else
get_local $2
end
tee_local $3
if if
get_local $0 get_local $0
tee_local $4 tee_local $4
@ -222,14 +219,14 @@
i32.add i32.add
i32.load i32.load
i32.store i32.store
get_local $0
i32.const 8
i32.add
set_local $0
get_local $1 get_local $1
i32.const 8 i32.const 8
i32.add i32.add
set_local $1 set_local $1
get_local $0
i32.const 8
i32.add
set_local $0
end end
get_local $2 get_local $2
i32.const 4 i32.const 4
@ -239,14 +236,14 @@
get_local $1 get_local $1
i32.load i32.load
i32.store i32.store
get_local $0
i32.const 4
i32.add
set_local $0
get_local $1 get_local $1
i32.const 4 i32.const 4
i32.add i32.add
set_local $1 set_local $1
get_local $0
i32.const 4
i32.add
set_local $0
end end
get_local $2 get_local $2
i32.const 2 i32.const 2
@ -256,21 +253,19 @@
get_local $1 get_local $1
i32.load16_u i32.load16_u
i32.store16 i32.store16
get_local $0
i32.const 2
i32.add
set_local $0
get_local $1 get_local $1
i32.const 2 i32.const 2
i32.add i32.add
set_local $1 set_local $1
get_local $0
i32.const 2
i32.add
set_local $0
end end
get_local $2 get_local $2
i32.const 1 i32.const 1
i32.and i32.and
if if
get_local $1
set_local $3
get_local $0 get_local $0
get_local $1 get_local $1
i32.load8_u i32.load8_u
@ -1013,8 +1008,6 @@
i32.const 1 i32.const 1
i32.and i32.and
if if
get_local $1
set_local $3
get_local $0 get_local $0
get_local $1 get_local $1
i32.load8_u i32.load8_u
@ -1081,7 +1074,6 @@
set_local $2 set_local $2
get_local $0 get_local $0
tee_local $4 tee_local $4
tee_local $3
i32.const 1 i32.const 1
i32.add i32.add
set_local $0 set_local $0
@ -1127,7 +1119,6 @@
if if
get_local $0 get_local $0
tee_local $4 tee_local $4
tee_local $3
i32.const 1 i32.const 1
i32.add i32.add
set_local $0 set_local $0
@ -1654,7 +1645,6 @@
else else
unreachable unreachable
end end
tee_local $0
i32.const 1 i32.const 1
i32.ne i32.ne
if if
@ -1681,7 +1671,6 @@
else else
unreachable unreachable
end end
tee_local $0
i32.const 2 i32.const 2
i32.ne i32.ne
if if
@ -1707,7 +1696,6 @@
else else
unreachable unreachable
end end
tee_local $0
i32.const 2 i32.const 2
i32.ne i32.ne
if if

View File

@ -423,15 +423,12 @@
(local $4 i32) (local $4 i32)
(local $5 i32) (local $5 i32)
loop $continue|0 loop $continue|0
get_local $1
i32.const 3
i32.and
get_local $2 get_local $2
if (result i32) get_local $2
get_local $1 select
i32.const 3
i32.and
else
get_local $2
end
tee_local $3
if if
get_local $0 get_local $0
tee_local $4 tee_local $4
@ -523,14 +520,14 @@
i32.add i32.add
i32.load i32.load
i32.store i32.store
get_local $0
i32.const 8
i32.add
set_local $0
get_local $1 get_local $1
i32.const 8 i32.const 8
i32.add i32.add
set_local $1 set_local $1
get_local $0
i32.const 8
i32.add
set_local $0
end end
get_local $2 get_local $2
i32.const 4 i32.const 4
@ -540,14 +537,14 @@
get_local $1 get_local $1
i32.load i32.load
i32.store i32.store
get_local $0
i32.const 4
i32.add
set_local $0
get_local $1 get_local $1
i32.const 4 i32.const 4
i32.add i32.add
set_local $1 set_local $1
get_local $0
i32.const 4
i32.add
set_local $0
end end
get_local $2 get_local $2
i32.const 2 i32.const 2
@ -557,21 +554,19 @@
get_local $1 get_local $1
i32.load16_u i32.load16_u
i32.store16 i32.store16
get_local $0
i32.const 2
i32.add
set_local $0
get_local $1 get_local $1
i32.const 2 i32.const 2
i32.add i32.add
set_local $1 set_local $1
get_local $0
i32.const 2
i32.add
set_local $0
end end
get_local $2 get_local $2
i32.const 1 i32.const 1
i32.and i32.and
if if
get_local $1
set_local $3
get_local $0 get_local $0
get_local $1 get_local $1
i32.load8_u i32.load8_u
@ -1314,8 +1309,6 @@
i32.const 1 i32.const 1
i32.and i32.and
if if
get_local $1
set_local $3
get_local $0 get_local $0
get_local $1 get_local $1
i32.load8_u i32.load8_u
@ -1382,7 +1375,6 @@
set_local $2 set_local $2
get_local $0 get_local $0
tee_local $4 tee_local $4
tee_local $3
i32.const 1 i32.const 1
i32.add i32.add
set_local $0 set_local $0
@ -1428,7 +1420,6 @@
if if
get_local $0 get_local $0
tee_local $4 tee_local $4
tee_local $3
i32.const 1 i32.const 1
i32.add i32.add
set_local $0 set_local $0
@ -1539,7 +1530,7 @@
i32.const 1 i32.const 1
i32.shl i32.shl
call $~lib/allocator/arena/__memory_allocate call $~lib/allocator/arena/__memory_allocate
set_local $6 set_local $5
loop $continue|0 loop $continue|0
get_local $2 get_local $2
get_local $1 get_local $1
@ -1557,27 +1548,24 @@
tee_local $3 tee_local $3
i32.const 128 i32.const 128
i32.lt_u i32.lt_u
if (result i32) if
get_local $4 get_local $4
get_local $6 get_local $5
i32.add i32.add
get_local $3 get_local $3
i32.store16 i32.store16
get_local $4
i32.const 2
i32.add
else else
get_local $3 get_local $3
i32.const 191 i32.const 191
i32.gt_u i32.gt_u
tee_local $5 tee_local $6
if if (result i32)
get_local $3 get_local $3
i32.const 224 i32.const 224
i32.lt_u i32.lt_u
set_local $5 else
get_local $6
end end
get_local $5
if if
get_local $2 get_local $2
i32.const 1 i32.const 1
@ -1593,15 +1581,15 @@
unreachable unreachable
end end
get_local $2 get_local $2
tee_local $5 tee_local $6
i32.const 1 i32.const 1
i32.add i32.add
set_local $2 set_local $2
get_local $4 get_local $4
get_local $6 get_local $5
i32.add i32.add
get_local $0 get_local $0
get_local $5 get_local $6
i32.add i32.add
i32.load8_u i32.load8_u
i32.const 63 i32.const 63
@ -1617,14 +1605,14 @@
get_local $3 get_local $3
i32.const 239 i32.const 239
i32.gt_u i32.gt_u
tee_local $5 tee_local $6
if if (result i32)
get_local $3 get_local $3
i32.const 365 i32.const 365
i32.lt_u i32.lt_u
set_local $5 else
get_local $6
end end
get_local $5
if if
get_local $2 get_local $2
i32.const 3 i32.const 3
@ -1640,16 +1628,15 @@
unreachable unreachable
end end
get_local $4 get_local $4
get_local $6 get_local $5
i32.add i32.add
get_local $3 get_local $3
i32.const 7 i32.const 7
i32.and i32.and
i32.const 18 i32.const 18
i32.shl i32.shl
get_local $2
tee_local $5
get_local $0 get_local $0
get_local $2
i32.add i32.add
i32.load8_u i32.load8_u
i32.const 63 i32.const 63
@ -1669,7 +1656,6 @@
i32.const 6 i32.const 6
i32.shl i32.shl
i32.or i32.or
tee_local $3
get_local $2 get_local $2
i32.const 1 i32.const 1
i32.add i32.add
@ -1688,7 +1674,7 @@
i32.const 55296 i32.const 55296
i32.add i32.add
i32.store16 i32.store16
get_local $6 get_local $5
get_local $4 get_local $4
i32.const 2 i32.const 2
i32.add i32.add
@ -1715,16 +1701,15 @@
unreachable unreachable
end end
get_local $4 get_local $4
get_local $6 get_local $5
i32.add i32.add
get_local $3 get_local $3
i32.const 15 i32.const 15
i32.and i32.and
i32.const 12 i32.const 12
i32.shl i32.shl
get_local $2
tee_local $5
get_local $0 get_local $0
get_local $2
i32.add i32.add
i32.load8_u i32.load8_u
i32.const 63 i32.const 63
@ -1732,7 +1717,6 @@
i32.const 6 i32.const 6
i32.shl i32.shl
i32.or i32.or
tee_local $3
get_local $2 get_local $2
i32.const 1 i32.const 1
i32.add i32.add
@ -1750,10 +1734,10 @@
i32.add i32.add
set_local $2 set_local $2
end end
get_local $4
i32.const 2
i32.add
end end
get_local $4
i32.const 2
i32.add
set_local $4 set_local $4
br $continue|0 br $continue|0
end end
@ -1776,39 +1760,35 @@
tee_local $0 tee_local $0
i32.const 4 i32.const 4
i32.add i32.add
get_local $6 get_local $5
get_local $4 get_local $4
call $~lib/internal/memory/memmove call $~lib/internal/memory/memmove
get_local $0 get_local $0
) )
(func $~lib/internal/string/compareUnsafe (; 8 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (func $~lib/internal/string/compareUnsafe (; 8 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
(local $3 i32) (local $3 i32)
(local $4 i32)
get_local $0
set_local $3
loop $continue|0 loop $continue|0
get_local $2 get_local $2
if (result i32) if (result i32)
get_local $3 get_local $0
i32.load16_u offset=4 i32.load16_u offset=4
get_local $1 get_local $1
i32.load16_u offset=4 i32.load16_u offset=4
i32.sub i32.sub
tee_local $4 tee_local $3
i32.eqz i32.eqz
else else
get_local $2 get_local $2
end end
tee_local $0
if if
get_local $2 get_local $2
i32.const 1 i32.const 1
i32.sub i32.sub
set_local $2 set_local $2
get_local $3 get_local $0
i32.const 2 i32.const 2
i32.add i32.add
set_local $3 set_local $0
get_local $1 get_local $1
i32.const 2 i32.const 2
i32.add i32.add
@ -1816,7 +1796,7 @@
br $continue|0 br $continue|0
end end
end end
get_local $4 get_local $3
) )
(func $~lib/string/String.__eq (; 9 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/string/String.__eq (; 9 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)

File diff suppressed because it is too large Load Diff

View File

@ -480,32 +480,28 @@
) )
(func $~lib/internal/string/compareUnsafe (; 8 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32) (func $~lib/internal/string/compareUnsafe (; 8 ;) (type $FUNCSIG$iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
(local $3 i32) (local $3 i32)
(local $4 i32)
get_local $0
set_local $3
loop $continue|0 loop $continue|0
get_local $2 get_local $2
if (result i32) if (result i32)
get_local $3 get_local $0
i32.load16_u offset=4 i32.load16_u offset=4
get_local $1 get_local $1
i32.load16_u offset=4 i32.load16_u offset=4
i32.sub i32.sub
tee_local $4 tee_local $3
i32.eqz i32.eqz
else else
get_local $2 get_local $2
end end
tee_local $0
if if
get_local $2 get_local $2
i32.const 1 i32.const 1
i32.sub i32.sub
set_local $2 set_local $2
get_local $3 get_local $0
i32.const 2 i32.const 2
i32.add i32.add
set_local $3 set_local $0
get_local $1 get_local $1
i32.const 2 i32.const 2
i32.add i32.add
@ -513,7 +509,7 @@
br $continue|0 br $continue|0
end end
end end
get_local $4 get_local $3
) )
(func $~lib/string/String.__eq (; 9 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/string/String.__eq (; 9 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
(local $2 i32) (local $2 i32)
@ -747,7 +743,6 @@
i32.const 1 i32.const 1
i32.or i32.or
end end
tee_local $3
call $~lib/map/Map<String,usize>#rehash call $~lib/map/Map<String,usize>#rehash
end end
get_local $0 get_local $0
@ -1021,7 +1016,6 @@
i32.const 1 i32.const 1
i32.or i32.or
end end
tee_local $3
call $~lib/map/Map<usize,String>#rehash call $~lib/map/Map<usize,String>#rehash
end end
get_local $0 get_local $0
@ -1093,7 +1087,6 @@
else else
unreachable unreachable
end end
tee_local $0
return return
end end
else else
@ -1144,7 +1137,6 @@
else else
unreachable unreachable
end end
tee_local $0
) )
(func $~lib/symbol/Symbol.keyFor (; 20 ;) (type $ii) (param $0 i32) (result i32) (func $~lib/symbol/Symbol.keyFor (; 20 ;) (type $ii) (param $0 i32) (result i32)
(local $1 i32) (local $1 i32)
@ -1166,7 +1158,6 @@
else else
i32.const 0 i32.const 0
end end
tee_local $0
) )
(func $~lib/internal/string/allocateUnsafe (; 21 ;) (type $ii) (param $0 i32) (result i32) (func $~lib/internal/string/allocateUnsafe (; 21 ;) (type $ii) (param $0 i32) (result i32)
(local $1 i32) (local $1 i32)
@ -1206,15 +1197,12 @@
(local $4 i32) (local $4 i32)
(local $5 i32) (local $5 i32)
loop $continue|0 loop $continue|0
get_local $1
i32.const 3
i32.and
get_local $2 get_local $2
if (result i32) get_local $2
get_local $1 select
i32.const 3
i32.and
else
get_local $2
end
tee_local $3
if if
get_local $0 get_local $0
tee_local $4 tee_local $4
@ -1306,14 +1294,14 @@
i32.add i32.add
i32.load i32.load
i32.store i32.store
get_local $0
i32.const 8
i32.add
set_local $0
get_local $1 get_local $1
i32.const 8 i32.const 8
i32.add i32.add
set_local $1 set_local $1
get_local $0
i32.const 8
i32.add
set_local $0
end end
get_local $2 get_local $2
i32.const 4 i32.const 4
@ -1323,14 +1311,14 @@
get_local $1 get_local $1
i32.load i32.load
i32.store i32.store
get_local $0
i32.const 4
i32.add
set_local $0
get_local $1 get_local $1
i32.const 4 i32.const 4
i32.add i32.add
set_local $1 set_local $1
get_local $0
i32.const 4
i32.add
set_local $0
end end
get_local $2 get_local $2
i32.const 2 i32.const 2
@ -1340,21 +1328,19 @@
get_local $1 get_local $1
i32.load16_u i32.load16_u
i32.store16 i32.store16
get_local $0
i32.const 2
i32.add
set_local $0
get_local $1 get_local $1
i32.const 2 i32.const 2
i32.add i32.add
set_local $1 set_local $1
get_local $0
i32.const 2
i32.add
set_local $0
end end
get_local $2 get_local $2
i32.const 1 i32.const 1
i32.and i32.and
if if
get_local $1
set_local $3
get_local $0 get_local $0
get_local $1 get_local $1
i32.load8_u i32.load8_u
@ -2097,8 +2083,6 @@
i32.const 1 i32.const 1
i32.and i32.and
if if
get_local $1
set_local $3
get_local $0 get_local $0
get_local $1 get_local $1
i32.load8_u i32.load8_u
@ -2165,7 +2149,6 @@
set_local $2 set_local $2
get_local $0 get_local $0
tee_local $4 tee_local $4
tee_local $3
i32.const 1 i32.const 1
i32.add i32.add
set_local $0 set_local $0
@ -2211,7 +2194,6 @@
if if
get_local $0 get_local $0
tee_local $4 tee_local $4
tee_local $3
i32.const 1 i32.const 1
i32.add i32.add
set_local $0 set_local $0
@ -2335,16 +2317,14 @@
call $~lib/env/abort call $~lib/env/abort
unreachable unreachable
end end
get_local $1
i32.eqz
if
i32.const 488
set_local $1
end
get_local $0 get_local $0
i32.load i32.load
tee_local $3 tee_local $3
get_local $1 get_local $1
i32.const 488
get_local $1
select
tee_local $1
i32.load i32.load
tee_local $4 tee_local $4
i32.add i32.add
@ -2370,12 +2350,9 @@
) )
(func $~lib/string/String.__concat (; 26 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32) (func $~lib/string/String.__concat (; 26 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
get_local $0 get_local $0
i32.eqz i32.const 488
if
i32.const 488
set_local $0
end
get_local $0 get_local $0
select
get_local $1 get_local $1
call $~lib/string/String#concat call $~lib/string/String#concat
) )
@ -2383,8 +2360,9 @@
(local $1 i32) (local $1 i32)
(local $2 i32) (local $2 i32)
i32.const 168 i32.const 168
set_local $1 set_local $2
block $break|0 i32.const 464
block $break|0 (result i32)
block $case11|0 block $case11|0
block $case10|0 block $case10|0
block $case9|0 block $case9|0
@ -2397,79 +2375,67 @@
block $case2|0 block $case2|0
block $case1|0 block $case1|0
get_local $0 get_local $0
tee_local $2 tee_local $1
i32.const 1 i32.const 1
i32.ne i32.ne
if if
get_local $2 get_local $1
i32.const 2 i32.const 2
i32.sub i32.sub
br_table $case1|0 $case2|0 $case3|0 $case4|0 $case5|0 $case6|0 $case7|0 $case8|0 $case9|0 $case10|0 $case11|0 br_table $case1|0 $case2|0 $case3|0 $case4|0 $case5|0 $case6|0 $case7|0 $case8|0 $case9|0 $case10|0 $case11|0
end end
i32.const 176 i32.const 176
set_local $1
br $break|0 br $break|0
end end
i32.const 208 i32.const 208
set_local $1
br $break|0 br $break|0
end end
i32.const 248 i32.const 248
set_local $1
br $break|0 br $break|0
end end
i32.const 272 i32.const 272
set_local $1
br $break|0 br $break|0
end end
i32.const 288 i32.const 288
set_local $1
br $break|0 br $break|0
end end
i32.const 312 i32.const 312
set_local $1
br $break|0 br $break|0
end end
i32.const 328 i32.const 328
set_local $1
br $break|0 br $break|0
end end
i32.const 352 i32.const 352
set_local $1
br $break|0 br $break|0
end end
i32.const 368 i32.const 368
set_local $1
br $break|0 br $break|0
end end
i32.const 400 i32.const 400
set_local $1
br $break|0 br $break|0
end end
i32.const 432 i32.const 432
set_local $1
br $break|0 br $break|0
end end
get_global $~lib/symbol/idToString get_global $~lib/symbol/idToString
i32.const 0 i32.const 0
i32.ne i32.ne
tee_local $2 tee_local $1
if if
get_global $~lib/symbol/idToString get_global $~lib/symbol/idToString
get_local $0 get_local $0
call $~lib/map/Map<usize,String>#has call $~lib/map/Map<usize,String>#has
set_local $2 set_local $1
end end
get_local $2 get_local $1
if if (result i32)
get_global $~lib/symbol/idToString get_global $~lib/symbol/idToString
get_local $0 get_local $0
call $~lib/map/Map<usize,String>#get call $~lib/map/Map<usize,String>#get
set_local $1 else
i32.const 168
end end
end end
i32.const 464
get_local $1
call $~lib/string/String.__concat call $~lib/string/String.__concat
i32.const 592 i32.const 592
call $~lib/string/String.__concat call $~lib/string/String.__concat

View File

@ -1178,42 +1178,42 @@
get_local $1 get_local $1
i32.lt_s i32.lt_s
select select
set_local $2 set_local $3
i32.const 6 i32.const 6
get_local $1 get_local $1
i32.const 6 i32.const 6
get_local $1 get_local $1
i32.lt_s i32.lt_s
select select
tee_local $1 tee_local $2
get_local $2 get_local $3
get_local $1
get_local $2 get_local $2
get_local $3
i32.gt_s i32.gt_s
select select
set_local $3 set_local $1
i32.const 12 i32.const 12
call $~lib/allocator/arena/__memory_allocate call $~lib/allocator/arena/__memory_allocate
tee_local $1 tee_local $2
get_local $0 get_local $0
i32.load i32.load
i32.store i32.store
get_local $1 get_local $2
get_local $0 get_local $0
i32.load offset=4 i32.load offset=4
get_local $2 get_local $3
i32.const 3 i32.const 3
i32.shl i32.shl
i32.add i32.add
i32.store offset=4 i32.store offset=4
get_local $2
get_local $1 get_local $1
get_local $3 get_local $3
get_local $2
i32.sub i32.sub
i32.const 3 i32.const 3
i32.shl i32.shl
i32.store offset=8 i32.store offset=8
get_local $1 get_local $2
) )
(func $~lib/internal/sort/insertionSort<f64> (; 14 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (func $~lib/internal/sort/insertionSort<f64> (; 14 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(local $4 i32) (local $4 i32)
@ -1817,7 +1817,6 @@
select select
else else
get_local $2 get_local $2
tee_local $5
get_local $4 get_local $4
get_local $2 get_local $2
get_local $4 get_local $4
@ -1840,7 +1839,6 @@
select select
else else
get_local $3 get_local $3
tee_local $5
get_local $4 get_local $4
get_local $3 get_local $3
get_local $4 get_local $4
@ -1902,10 +1900,10 @@
end end
get_local $0 get_local $0
i32.load offset=8 i32.load offset=8
set_local $4 set_local $3
loop $repeat|0 loop $repeat|0
get_local $2 get_local $2
get_local $4 get_local $3
i32.lt_s i32.lt_s
if if
get_local $0 get_local $0
@ -1916,18 +1914,17 @@
get_local $2 get_local $2
get_local $1 get_local $1
i32.load i32.load
tee_local $3 tee_local $4
i32.load i32.load
i32.lt_u i32.lt_u
if (result i32) if (result i32)
get_local $2 get_local $2
get_local $3 get_local $4
i32.add i32.add
i32.load8_s offset=8 i32.load8_s offset=8
else else
unreachable unreachable
end end
tee_local $3
i32.const 255 i32.const 255
i32.and i32.and
i32.ne i32.ne
@ -2061,7 +2058,6 @@
select select
else else
get_local $2 get_local $2
tee_local $5
get_local $4 get_local $4
get_local $2 get_local $2
get_local $4 get_local $4
@ -2084,7 +2080,6 @@
select select
else else
get_local $3 get_local $3
tee_local $5
get_local $4 get_local $4
get_local $3 get_local $3
get_local $4 get_local $4
@ -2135,10 +2130,10 @@
i32.load offset=8 i32.load offset=8
i32.const 2 i32.const 2
i32.shr_u i32.shr_u
set_local $4 set_local $3
loop $repeat|0 loop $repeat|0
get_local $2 get_local $2
get_local $4 get_local $3
i32.lt_s i32.lt_s
if if
get_local $0 get_local $0
@ -2147,7 +2142,7 @@
get_local $2 get_local $2
get_local $1 get_local $1
i32.load i32.load
tee_local $3 tee_local $4
i32.load i32.load
i32.const 2 i32.const 2
i32.shr_u i32.shr_u
@ -2156,13 +2151,12 @@
get_local $2 get_local $2
i32.const 2 i32.const 2
i32.shl i32.shl
get_local $3 get_local $4
i32.add i32.add
i32.load offset=8 i32.load offset=8
else else
unreachable unreachable
end end
tee_local $3
i32.ne i32.ne
if if
i32.const 0 i32.const 0
@ -5256,39 +5250,43 @@
get_local $0 get_local $0
call $~lib/typedarray/Float64Array#sort call $~lib/typedarray/Float64Array#sort
drop drop
get_global $std/typedarray/af64 block (result i32)
i32.const 0 block (result i32)
call $~lib/internal/typedarray/TypedArray<f64>#__get get_global $std/typedarray/af64
f64.const 4 i32.const 0
f64.eq call $~lib/internal/typedarray/TypedArray<f64>#__get
tee_local $0 f64.const 4
if f64.eq
get_global $std/typedarray/af64 tee_local $0
i32.const 1 if
call $~lib/internal/typedarray/TypedArray<f64>#__get get_global $std/typedarray/af64
f64.const 5 i32.const 1
f64.eq call $~lib/internal/typedarray/TypedArray<f64>#__get
set_local $0 f64.const 5
f64.eq
set_local $0
end
get_local $0
end
if
get_global $std/typedarray/af64
i32.const 2
call $~lib/internal/typedarray/TypedArray<f64>#__get
f64.const 6
f64.eq
set_local $0
end
get_local $0
end end
get_local $0 if (result i32)
if
get_global $std/typedarray/af64
i32.const 2
call $~lib/internal/typedarray/TypedArray<f64>#__get
f64.const 6
f64.eq
set_local $0
end
get_local $0
if
get_global $std/typedarray/af64 get_global $std/typedarray/af64
i32.const 3 i32.const 3
call $~lib/internal/typedarray/TypedArray<f64>#__get call $~lib/internal/typedarray/TypedArray<f64>#__get
f64.const 7 f64.const 7
f64.eq f64.eq
set_local $0 else
get_local $0
end end
get_local $0
i32.eqz i32.eqz
if if
i32.const 0 i32.const 0

View File

@ -11,10 +11,10 @@
(export "table" (table $0)) (export "table" (table $0))
(start $start) (start $start)
(func $start (; 0 ;) (type $v) (func $start (; 0 ;) (type $v)
(local $0 i32) (local $0 f32)
(local $1 i64) (local $1 f64)
(local $2 f32) (local $2 i32)
(local $3 f64) (local $3 i64)
get_global $unary/i get_global $unary/i
i32.const 1 i32.const 1
i32.add i32.add
@ -59,18 +59,18 @@
i32.sub i32.sub
set_global $unary/i set_global $unary/i
get_global $unary/i get_global $unary/i
tee_local $0 tee_local $2
i32.const 1 i32.const 1
i32.add i32.add
set_global $unary/i set_global $unary/i
get_local $0 get_local $2
set_global $unary/i set_global $unary/i
get_global $unary/i get_global $unary/i
tee_local $0 tee_local $2
i32.const 1 i32.const 1
i32.sub i32.sub
set_global $unary/i set_global $unary/i
get_local $0 get_local $2
set_global $unary/i set_global $unary/i
get_global $unary/I get_global $unary/I
i64.const 1 i64.const 1
@ -117,18 +117,18 @@
i64.sub i64.sub
set_global $unary/I set_global $unary/I
get_global $unary/I get_global $unary/I
tee_local $1 tee_local $3
i64.const 1 i64.const 1
i64.add i64.add
set_global $unary/I set_global $unary/I
get_local $1 get_local $3
set_global $unary/I set_global $unary/I
get_global $unary/I get_global $unary/I
tee_local $1 tee_local $3
i64.const 1 i64.const 1
i64.sub i64.sub
set_global $unary/I set_global $unary/I
get_local $1 get_local $3
set_global $unary/I set_global $unary/I
get_global $unary/f get_global $unary/f
f32.const 1 f32.const 1
@ -156,10 +156,11 @@
f32.neg f32.neg
set_global $unary/f set_global $unary/f
get_global $unary/f get_global $unary/f
tee_local $0
f32.const 0 f32.const 0
f32.eq f32.eq
set_global $unary/i set_global $unary/i
get_global $unary/f get_local $0
f32.const 1 f32.const 1
f32.add f32.add
set_global $unary/f set_global $unary/f
@ -168,18 +169,18 @@
f32.sub f32.sub
set_global $unary/f set_global $unary/f
get_global $unary/f get_global $unary/f
tee_local $2 tee_local $0
f32.const 1 f32.const 1
f32.add f32.add
set_global $unary/f set_global $unary/f
get_local $2 get_local $0
set_global $unary/f set_global $unary/f
get_global $unary/f get_global $unary/f
tee_local $2 tee_local $0
f32.const 1 f32.const 1
f32.sub f32.sub
set_global $unary/f set_global $unary/f
get_local $2 get_local $0
set_global $unary/f set_global $unary/f
get_global $unary/F get_global $unary/F
f64.const 1 f64.const 1
@ -207,11 +208,12 @@
f64.neg f64.neg
set_global $unary/F set_global $unary/F
get_global $unary/F get_global $unary/F
tee_local $1
f64.const 0 f64.const 0
f64.eq f64.eq
i64.extend_u/i32 i64.extend_u/i32
set_global $unary/I set_global $unary/I
get_global $unary/F get_local $1
f64.const 1 f64.const 1
f64.add f64.add
set_global $unary/F set_global $unary/F
@ -220,18 +222,18 @@
f64.sub f64.sub
set_global $unary/F set_global $unary/F
get_global $unary/F get_global $unary/F
tee_local $3 tee_local $1
f64.const 1 f64.const 1
f64.add f64.add
set_global $unary/F set_global $unary/F
get_local $3 get_local $1
set_global $unary/F set_global $unary/F
get_global $unary/F get_global $unary/F
tee_local $3 tee_local $1
f64.const 1 f64.const 1
f64.sub f64.sub
set_global $unary/F set_global $unary/F
get_local $3 get_local $1
set_global $unary/F set_global $unary/F
) )
(func $null (; 1 ;) (type $v) (func $null (; 1 ;) (type $v)