Use untouched/optimized naming scheme in tests as well

This commit is contained in:
dcodeIO
2018-02-17 11:14:41 +01:00
parent e50a23bf75
commit 31633899f9
49 changed files with 419 additions and 10437 deletions

View File

@ -10,10 +10,8 @@
(start $start)
(func $start (; 1 ;) (type $v)
(local $0 i32)
;;@ assert.ts:1:0
(if
(i32.eqz
;;@ assert.ts:1:7
(i32.const 1)
)
(block
@ -26,10 +24,8 @@
(unreachable)
)
)
;;@ assert.ts:2:0
(if
(i32.eqz
;;@ assert.ts:2:7
(i32.const 1)
)
(block
@ -42,13 +38,10 @@
(unreachable)
)
)
;;@ assert.ts:3:0
(if
(i32.eqz
;;@ assert.ts:3:7
(i32.gt_s
(i32.const 1)
;;@ assert.ts:3:11
(i32.const 0)
)
)
@ -62,10 +55,8 @@
(unreachable)
)
)
;;@ assert.ts:4:0
(if
(f64.eq
;;@ assert.ts:4:7
(f64.const 0.5)
(f64.const 0)
)
@ -79,13 +70,10 @@
(unreachable)
)
)
;;@ assert.ts:5:0
(if
(i32.eqz
;;@ assert.ts:5:7
(f64.gt
(f64.const 0.5)
;;@ assert.ts:5:13
(f64.const 0.4)
)
)
@ -99,10 +87,8 @@
(unreachable)
)
)
;;@ assert.ts:6:0
(if
(i64.eqz
;;@ assert.ts:6:7
(i64.const 4294967296)
)
(block
@ -115,13 +101,10 @@
(unreachable)
)
)
;;@ assert.ts:7:0
(if
(i32.eqz
;;@ assert.ts:7:7
(i64.gt_s
(i64.const 4294967296)
;;@ assert.ts:7:21
(i64.const 1)
)
)
@ -135,21 +118,16 @@
(unreachable)
)
)
;;@ assert.ts:10:0
(if
;;@ assert.ts:10:4
(i32.eqz
;;@ assert.ts:10:5
(if (result i32)
(i32.eqz
(tee_local $0
;;@ assert.ts:10:12
(i32.const 1)
)
)
(block
(call $abort
;;@ assert.ts:10:18
(i32.const 28)
(i32.const 4)
(i32.const 10)
@ -160,7 +138,6 @@
(get_local $0)
)
)
;;@ assert.ts:11:2
(unreachable)
)
)

View File

@ -5,28 +5,22 @@
(export "test" (func $class-extends/test))
(export "memory" (memory $0))
(func $class-extends/test (; 0 ;) (type $iv) (param $0 i32)
;;@ class-extends.ts:10:2
(drop
(i32.load
(get_local $0)
)
)
;;@ class-extends.ts:11:2
(drop
(i32.load16_s offset=4
(get_local $0)
)
)
;;@ class-extends.ts:12:2
(i32.store
(get_local $0)
;;@ class-extends.ts:12:8
(i32.const 2)
)
;;@ class-extends.ts:13:2
(i32.store16 offset=4
(get_local $0)
;;@ class-extends.ts:13:8
(i32.const 3)
)
)

View File

@ -15,31 +15,23 @@
(export "memory" (memory $0))
(start $start)
(func $class/Animal.add (; 1 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
;;@ class.ts:3:58
(return
;;@ class.ts:3:43
(i32.add
(i32.add
(get_local $0)
;;@ class.ts:3:47
(get_local $1)
)
;;@ class.ts:3:51
(get_global $class/Animal.ONE)
)
)
)
(func $class/Animal.sub<f32> (; 2 ;) (type $fff) (param $0 f32) (param $1 f32) (result f32)
;;@ class.ts:4:58
(return
;;@ class.ts:4:40
(f32.add
(f32.sub
(get_local $0)
;;@ class.ts:4:44
(get_local $1)
)
;;@ class.ts:4:48
(f32.convert_s/i32
(get_global $class/Animal.ONE)
)
@ -47,31 +39,23 @@
)
)
(func $class/Animal#instanceAdd (; 3 ;) (type $iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
;;@ class.ts:9:59
(return
;;@ class.ts:9:44
(i32.add
(i32.add
(get_local $1)
;;@ class.ts:9:48
(get_local $2)
)
;;@ class.ts:9:52
(get_global $class/Animal.ONE)
)
)
)
(func $class/Animal#instanceSub<f32> (; 4 ;) (type $ifff) (param $0 i32) (param $1 f32) (param $2 f32) (result f32)
;;@ class.ts:10:59
(return
;;@ class.ts:10:41
(f32.add
(f32.sub
(get_local $1)
;;@ class.ts:10:45
(get_local $2)
)
;;@ class.ts:10:49
(f32.convert_s/i32
(get_global $class/Animal.ONE)
)
@ -81,65 +65,48 @@
(func $class/test (; 5 ;) (type $ii) (param $0 i32) (result i32)
(local $1 i32)
(local $2 i32)
;;@ class.ts:20:9
(drop
(call $class/Animal#instanceAdd
;;@ class.ts:20:2
(get_local $0)
;;@ class.ts:20:21
(i32.const 1)
;;@ class.ts:20:24
(i32.const 2)
)
)
;;@ class.ts:21:9
(drop
(call $class/Animal#instanceSub<f32>
;;@ class.ts:21:2
(get_local $0)
;;@ class.ts:21:26
(f32.const 1)
;;@ class.ts:21:29
(f32.const 2)
)
)
;;@ class.ts:23:2
(drop
(i32.load
(get_local $0)
)
)
;;@ class.ts:24:2
(drop
(i32.load16_s offset=4
(get_local $0)
)
)
;;@ class.ts:25:2
(drop
(i32.load8_s offset=6
(get_local $0)
)
)
;;@ class.ts:27:2
(i32.store
(get_local $0)
;;@ class.ts:27:15
(i32.add
(i32.const 0)
;;@ class.ts:27:19
(i32.const 1)
)
)
;;@ class.ts:28:2
(i32.store16 offset=4
(get_local $0)
;;@ class.ts:28:15
(i32.shr_s
(i32.shl
(i32.add
(i32.const 1)
;;@ class.ts:28:19
(i32.const 1)
)
(i32.const 16)
@ -147,19 +114,15 @@
(i32.const 16)
)
)
;;@ class.ts:29:2
(i32.store8 offset=6
(get_local $0)
;;@ class.ts:29:17
(i32.shr_s
(i32.shl
(i32.add
(i32.add
(i32.const 1)
;;@ class.ts:29:21
(i32.const 1)
)
;;@ class.ts:29:25
(i32.const 1)
)
(i32.const 24)
@ -167,29 +130,21 @@
(i32.const 24)
)
)
;;@ class.ts:31:2
(set_local $1
;;@ class.ts:31:12
(get_local $0)
)
;;@ class.ts:32:2
(set_local $2
;;@ class.ts:32:12
(get_local $1)
)
;;@ class.ts:33:9
(return
(get_local $2)
)
)
(func $start (; 6 ;) (type $v)
;;@ class.ts:13:0
(if
(i32.eqz
;;@ class.ts:13:7
(i32.eq
(i32.const 4)
;;@ class.ts:13:32
(i32.const 4)
)
)
@ -203,25 +158,18 @@
(unreachable)
)
)
;;@ class.ts:15:0
(drop
(get_global $class/Animal.ONE)
)
;;@ class.ts:16:7
(drop
(call $class/Animal.add
;;@ class.ts:16:11
(i32.const 1)
;;@ class.ts:16:13
(i32.const 2)
)
)
;;@ class.ts:17:7
(drop
(call $class/Animal.sub<f32>
;;@ class.ts:17:16
(f32.const 1)
;;@ class.ts:17:19
(f32.const 2)
)
)

View File

@ -12,10 +12,8 @@
(func $start (; 1 ;) (type $v)
(local $0 i32)
(local $1 i32)
;;@ comma.ts:3:0
(block
(set_global $comma/b
;;@ comma.ts:3:4
(block (result i32)
(set_local $0
(get_global $comma/a)
@ -29,18 +27,14 @@
(get_local $0)
)
)
;;@ comma.ts:3:9
(drop
(get_global $comma/a)
)
)
;;@ comma.ts:4:0
(if
(i32.eqz
;;@ comma.ts:4:7
(i32.eq
(get_global $comma/a)
;;@ comma.ts:4:12
(i32.const 1)
)
)
@ -54,13 +48,10 @@
(unreachable)
)
)
;;@ comma.ts:5:0
(if
(i32.eqz
;;@ comma.ts:5:7
(i32.eq
(get_global $comma/b)
;;@ comma.ts:5:12
(i32.const 0)
)
)
@ -74,7 +65,6 @@
(unreachable)
)
)
;;@ comma.ts:7:0
(block
(set_global $comma/a
(i32.add
@ -82,19 +72,14 @@
(i32.const 1)
)
)
;;@ comma.ts:7:5
(set_global $comma/b
;;@ comma.ts:7:9
(get_global $comma/a)
)
)
;;@ comma.ts:8:0
(if
(i32.eqz
;;@ comma.ts:8:7
(i32.eq
(get_global $comma/a)
;;@ comma.ts:8:12
(i32.const 2)
)
)
@ -108,13 +93,10 @@
(unreachable)
)
)
;;@ comma.ts:9:0
(if
(i32.eqz
;;@ comma.ts:9:7
(i32.eq
(get_global $comma/b)
;;@ comma.ts:9:12
(i32.const 2)
)
)
@ -128,39 +110,29 @@
(unreachable)
)
)
;;@ comma.ts:11:0
(set_global $comma/a
;;@ comma.ts:11:4
(block (result i32)
(set_global $comma/b
;;@ comma.ts:11:8
(i32.const 0)
)
(get_global $comma/b)
)
)
;;@ comma.ts:13:0
(set_global $comma/b
;;@ comma.ts:13:4
(block (result i32)
;;@ comma.ts:13:5
(set_global $comma/a
(i32.add
(get_global $comma/a)
(i32.const 1)
)
)
;;@ comma.ts:13:10
(get_global $comma/a)
)
)
;;@ comma.ts:14:0
(if
(i32.eqz
;;@ comma.ts:14:7
(i32.eq
(get_global $comma/a)
;;@ comma.ts:14:12
(i32.const 1)
)
)
@ -174,13 +146,10 @@
(unreachable)
)
)
;;@ comma.ts:15:0
(if
(i32.eqz
;;@ comma.ts:15:7
(i32.eq
(get_global $comma/b)
;;@ comma.ts:15:12
(i32.const 1)
)
)
@ -194,34 +163,26 @@
(unreachable)
)
)
;;@ comma.ts:17:0
(set_global $comma/a
;;@ comma.ts:17:4
(block (result i32)
;;@ comma.ts:17:5
(set_global $comma/a
(i32.add
(get_global $comma/a)
(i32.const 1)
)
)
;;@ comma.ts:17:10
(block (result i32)
(set_global $comma/b
;;@ comma.ts:17:14
(get_global $comma/a)
)
(get_global $comma/b)
)
)
)
;;@ comma.ts:18:0
(if
(i32.eqz
;;@ comma.ts:18:7
(i32.eq
(get_global $comma/a)
;;@ comma.ts:18:12
(i32.const 2)
)
)
@ -235,13 +196,10 @@
(unreachable)
)
)
;;@ comma.ts:19:0
(if
(i32.eqz
;;@ comma.ts:19:7
(i32.eq
(get_global $comma/b)
;;@ comma.ts:19:12
(i32.const 2)
)
)
@ -255,25 +213,18 @@
(unreachable)
)
)
;;@ comma.ts:21:0
(block $break|0
;;@ comma.ts:21:5
(set_local $1
;;@ comma.ts:21:13
(i32.const 0)
)
(loop $continue|0
(if
;;@ comma.ts:21:16
(i32.lt_s
(get_local $1)
;;@ comma.ts:21:20
(get_global $comma/a)
)
(block
;;@ comma.ts:21:32
(nop)
;;@ comma.ts:21:23
(block
(set_global $comma/a
(i32.sub
@ -281,7 +232,6 @@
(i32.const 1)
)
)
;;@ comma.ts:21:28
(set_local $1
(i32.add
(get_local $1)
@ -294,13 +244,10 @@
)
)
)
;;@ comma.ts:22:0
(if
(i32.eqz
;;@ comma.ts:22:7
(i32.eq
(get_local $1)
;;@ comma.ts:22:12
(i32.const 1)
)
)
@ -314,16 +261,13 @@
(unreachable)
)
)
;;@ comma.ts:24:0
(block
(drop
(i32.const 1)
)
;;@ comma.ts:24:3
(drop
(i32.const 2)
)
;;@ comma.ts:24:6
(drop
(i32.const 3)
)

View File

@ -12,15 +12,11 @@
(export "memory" (memory $0))
(start $start)
(func $start (; 3 ;) (type $v)
;;@ declare.ts:4:0
(call $declare/externalFunction)
;;@ declare.ts:5:0
(if
(i32.eqz
;;@ declare.ts:5:7
(i32.eq
(get_global $declare/externalConstant)
;;@ declare.ts:5:27
(i32.const 1)
)
)
@ -34,15 +30,11 @@
(unreachable)
)
)
;;@ declare.ts:12:3
(call $declare/my.externalFunction)
;;@ declare.ts:13:0
(if
(i32.eqz
;;@ declare.ts:13:7
(i32.eq
(get_global $declare/my.externalConstant)
;;@ declare.ts:13:30
(i32.const 2)
)
)

View File

@ -12,19 +12,15 @@
(start $start)
(func $start (; 1 ;) (type $v)
(local $0 i32)
;;@ do.ts:3:0
(block $break|0
(loop $continue|0
;;@ do.ts:3:3
(block
;;@ do.ts:4:2
(set_global $do/n
(i32.sub
(get_global $do/n)
(i32.const 1)
)
)
;;@ do.ts:5:2
(set_global $do/m
(i32.add
(get_global $do/m)
@ -33,18 +29,14 @@
)
)
(br_if $continue|0
;;@ do.ts:6:9
(get_global $do/n)
)
)
)
;;@ do.ts:7:0
(if
(i32.eqz
;;@ do.ts:7:7
(i32.eq
(get_global $do/n)
;;@ do.ts:7:12
(i32.const 0)
)
)
@ -58,13 +50,10 @@
(unreachable)
)
)
;;@ do.ts:8:0
(if
(i32.eqz
;;@ do.ts:8:7
(i32.eq
(get_global $do/m)
;;@ do.ts:8:12
(i32.const 10)
)
)
@ -78,18 +67,13 @@
(unreachable)
)
)
;;@ do.ts:10:0
(set_global $do/n
;;@ do.ts:10:4
(i32.const 10)
)
;;@ do.ts:11:0
(block $break|1
(loop $continue|1
;;@ do.ts:11:2
(nop)
(br_if $continue|1
;;@ do.ts:11:10
(block (result i32)
(set_local $0
(get_global $do/n)
@ -105,13 +89,10 @@
)
)
)
;;@ do.ts:12:0
(if
(i32.eqz
;;@ do.ts:12:7
(i32.eq
(get_global $do/n)
;;@ do.ts:12:12
(i32.const -1)
)
)
@ -125,48 +106,36 @@
(unreachable)
)
)
;;@ do.ts:14:0
(set_global $do/n
;;@ do.ts:14:4
(i32.const 10)
)
;;@ do.ts:15:0
(set_global $do/m
;;@ do.ts:15:4
(i32.const 0)
)
;;@ do.ts:17:0
(block $break|2
(loop $continue|2
;;@ do.ts:17:3
(block
;;@ do.ts:18:2
(set_global $do/n
(i32.sub
(get_global $do/n)
(i32.const 1)
)
)
;;@ do.ts:19:2
(set_global $do/m
(i32.add
(get_global $do/m)
(i32.const 1)
)
)
;;@ do.ts:20:2
(block $break|3
(loop $continue|3
;;@ do.ts:20:5
(block
;;@ do.ts:21:4
(set_global $do/n
(i32.sub
(get_global $do/n)
(i32.const 1)
)
)
;;@ do.ts:22:4
(set_global $do/o
(i32.add
(get_global $do/o)
@ -175,18 +144,14 @@
)
)
(br_if $continue|3
;;@ do.ts:23:11
(get_global $do/n)
)
)
)
;;@ do.ts:24:2
(if
(i32.eqz
;;@ do.ts:24:9
(i32.eq
(get_global $do/n)
;;@ do.ts:24:14
(i32.const 0)
)
)
@ -200,13 +165,10 @@
(unreachable)
)
)
;;@ do.ts:25:2
(if
(i32.eqz
;;@ do.ts:25:9
(i32.eq
(get_global $do/o)
;;@ do.ts:25:14
(i32.const 9)
)
)
@ -222,18 +184,14 @@
)
)
(br_if $continue|2
;;@ do.ts:26:9
(get_global $do/n)
)
)
)
;;@ do.ts:27:0
(if
(i32.eqz
;;@ do.ts:27:7
(i32.eq
(get_global $do/n)
;;@ do.ts:27:12
(i32.const 0)
)
)
@ -247,13 +205,10 @@
(unreachable)
)
)
;;@ do.ts:28:0
(if
(i32.eqz
;;@ do.ts:28:7
(i32.eq
(get_global $do/m)
;;@ do.ts:28:12
(i32.const 1)
)
)
@ -267,13 +222,10 @@
(unreachable)
)
)
;;@ do.ts:29:0
(if
(i32.eqz
;;@ do.ts:29:7
(i32.eq
(get_global $do/o)
;;@ do.ts:29:12
(i32.const 9)
)
)

View File

@ -36,14 +36,12 @@
(export "memory" (memory $0))
(start $start)
(func $enum/getZero (; 0 ;) (type $i) (result i32)
;;@ enum.ts:23:9
(return
(i32.const 0)
)
)
(func $start (; 1 ;) (type $v)
(set_global $enum/NonConstant.ZERO
;;@ enum.ts:27:9
(call $enum/getZero)
)
(set_global $enum/NonConstant.ONE

View File

@ -15,34 +15,25 @@
(export "two" (func $export/ns.two))
(export "memory" (memory $0))
(func $export/add (; 0 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
;;@ export.ts:2:13
(return
;;@ export.ts:2:9
(i32.add
(get_local $0)
;;@ export.ts:2:13
(get_local $1)
)
)
)
(func $export/sub (; 1 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
;;@ export.ts:6:13
(return
;;@ export.ts:6:9
(i32.sub
(get_local $0)
;;@ export.ts:6:13
(get_local $1)
)
)
)
(func $export/mul (; 2 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
;;@ export.ts:12:13
(return
;;@ export.ts:12:9
(i32.mul
(get_local $0)
;;@ export.ts:12:13
(get_local $1)
)
)

File diff suppressed because it is too large Load Diff

View File

@ -10,30 +10,22 @@
(start $start)
(func $start (; 1 ;) (type $v)
(local $0 i32)
;;@ for.ts:2:0
(block $break|0
;;@ for.ts:2:5
(set_global $for/i
;;@ for.ts:2:9
(i32.const 0)
)
(loop $continue|0
(if
;;@ for.ts:2:12
(i32.lt_s
(get_global $for/i)
;;@ for.ts:2:16
(i32.const 10)
)
(block
(block
;;@ for.ts:3:2
(nop)
)
;;@ for.ts:2:20
(set_global $for/i
(i32.add
;;@ for.ts:2:22
(get_global $for/i)
(i32.const 1)
)
@ -43,13 +35,10 @@
)
)
)
;;@ for.ts:5:0
(if
(i32.eqz
;;@ for.ts:5:7
(i32.eq
(get_global $for/i)
;;@ for.ts:5:12
(i32.const 10)
)
)
@ -63,30 +52,22 @@
(unreachable)
)
)
;;@ for.ts:7:0
(block $break|1
;;@ for.ts:7:5
(set_local $0
;;@ for.ts:7:18
(i32.const 0)
)
(loop $continue|1
(if
;;@ for.ts:7:21
(i32.lt_s
(get_local $0)
;;@ for.ts:7:25
(i32.const 10)
)
(block
(block
;;@ for.ts:8:2
(nop)
)
;;@ for.ts:7:29
(set_local $0
(i32.add
;;@ for.ts:7:31
(get_local $0)
(i32.const 1)
)
@ -96,24 +77,18 @@
)
)
)
;;@ for.ts:11:0
(block $break|2
(nop)
(loop $continue|2
(if
;;@ for.ts:11:7
(i32.gt_s
(get_global $for/i)
;;@ for.ts:11:11
(i32.const 0)
)
(block
;;@ for.ts:11:18
(nop)
;;@ for.ts:11:14
(set_global $for/i
(i32.sub
;;@ for.ts:11:16
(get_global $for/i)
(i32.const 1)
)
@ -123,13 +98,10 @@
)
)
)
;;@ for.ts:12:0
(if
(i32.eqz
;;@ for.ts:12:7
(i32.eq
(get_global $for/i)
;;@ for.ts:12:12
(i32.const 0)
)
)
@ -143,28 +115,21 @@
(unreachable)
)
)
;;@ for.ts:14:0
(block $break|3
(nop)
(loop $continue|3
(if
(i32.const 1)
(block
;;@ for.ts:15:2
(if
;;@ for.ts:15:6
(i32.eq
(get_global $for/i)
;;@ for.ts:15:11
(i32.const 10)
)
;;@ for.ts:16:4
(br $break|3)
)
;;@ for.ts:14:8
(set_global $for/i
(i32.add
;;@ for.ts:14:10
(get_global $for/i)
(i32.const 1)
)
@ -174,31 +139,25 @@
)
)
)
;;@ for.ts:18:0
(block $break|4
(nop)
(loop $continue|4
(if
(i32.const 1)
(block
;;@ for.ts:19:2
(if
;;@ for.ts:19:6
(i32.eq
(block (result i32)
(set_global $for/i
(i32.sub
;;@ for.ts:19:8
(get_global $for/i)
(i32.const 1)
)
)
(get_global $for/i)
)
;;@ for.ts:19:13
(i32.const 0)
)
;;@ for.ts:20:4
(br $break|4)
)
(nop)

View File

@ -21,25 +21,21 @@
(func $function/v (; 0 ;) (type $v)
)
(func $function/i (; 1 ;) (type $i) (result i32)
;;@ function.ts:2:27
(return
(i32.const 0)
)
)
(func $function/I (; 2 ;) (type $I) (result i64)
;;@ function.ts:3:27
(return
(i64.const 0)
)
)
(func $function/f (; 3 ;) (type $f) (result f32)
;;@ function.ts:4:27
(return
(f32.const 0)
)
)
(func $function/F (; 4 ;) (type $F) (result f64)
;;@ function.ts:5:27
(return
(f64.const 0)
)
@ -47,25 +43,21 @@
(func $function/iv (; 5 ;) (type $iv) (param $0 i32)
)
(func $function/ii (; 6 ;) (type $ii) (param $0 i32) (result i32)
;;@ function.ts:14:34
(return
(get_local $0)
)
)
(func $function/II (; 7 ;) (type $II) (param $0 i64) (result i64)
;;@ function.ts:15:34
(return
(get_local $0)
)
)
(func $function/ff (; 8 ;) (type $ff) (param $0 f32) (result f32)
;;@ function.ts:16:34
(return
(get_local $0)
)
)
(func $function/FF (; 9 ;) (type $FF) (param $0 f64) (result f64)
;;@ function.ts:17:34
(return
(get_local $0)
)
@ -73,23 +65,17 @@
(func $function/iiv (; 10 ;) (type $iiv) (param $0 i32) (param $1 i32)
)
(func $function/iii (; 11 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
;;@ function.ts:26:47
(return
;;@ function.ts:26:43
(i32.add
(get_local $0)
;;@ function.ts:26:47
(get_local $1)
)
)
)
(func $function/III (; 12 ;) (type $IiI) (param $0 i64) (param $1 i32) (result i64)
;;@ function.ts:27:47
(return
;;@ function.ts:27:43
(i64.add
(get_local $0)
;;@ function.ts:27:47
(i64.extend_s/i32
(get_local $1)
)
@ -97,119 +83,83 @@
)
)
(func $function/fff (; 13 ;) (type $fff) (param $0 f32) (param $1 f32) (result f32)
;;@ function.ts:28:47
(return
;;@ function.ts:28:43
(f32.add
(get_local $0)
;;@ function.ts:28:47
(get_local $1)
)
)
)
(func $function/FFF (; 14 ;) (type $FFF) (param $0 f64) (param $1 f64) (result f64)
;;@ function.ts:29:47
(return
;;@ function.ts:29:43
(f64.add
(get_local $0)
;;@ function.ts:29:47
(get_local $1)
)
)
)
(func $start (; 15 ;) (type $v)
;;@ function.ts:7:0
(call $function/v)
;;@ function.ts:8:0
(drop
(call $function/i)
)
;;@ function.ts:9:0
(drop
(call $function/I)
)
;;@ function.ts:10:0
(drop
(call $function/f)
)
;;@ function.ts:11:0
(drop
(call $function/F)
)
;;@ function.ts:19:0
(call $function/iv
;;@ function.ts:19:3
(i32.const 0)
)
;;@ function.ts:20:0
(drop
(call $function/ii
;;@ function.ts:20:3
(i32.const 0)
)
)
;;@ function.ts:21:0
(drop
(call $function/II
;;@ function.ts:21:3
(i64.const 0)
)
)
;;@ function.ts:22:0
(drop
(call $function/ff
;;@ function.ts:22:3
(f32.const 0)
)
)
;;@ function.ts:23:0
(drop
(call $function/FF
;;@ function.ts:23:3
(f64.const 0)
)
)
;;@ function.ts:31:0
(call $function/iiv
;;@ function.ts:31:4
(i32.const 1)
;;@ function.ts:31:7
(i32.const 2)
)
;;@ function.ts:32:0
(drop
(call $function/iii
;;@ function.ts:32:4
(i32.const 1)
;;@ function.ts:32:7
(i32.const 2)
)
)
;;@ function.ts:33:0
(drop
(call $function/III
;;@ function.ts:33:4
(i64.const 1)
;;@ function.ts:33:7
(i32.const 2)
)
)
;;@ function.ts:34:0
(drop
(call $function/fff
;;@ function.ts:34:4
(f32.const 1)
;;@ function.ts:34:7
(f32.const 2)
)
)
;;@ function.ts:35:0
(drop
(call $function/FFF
;;@ function.ts:35:4
(f64.const 1)
;;@ function.ts:35:7
(f64.const 2)
)
)

View File

@ -0,0 +1,308 @@
(module
(type $iiv (func (param i32 i32)))
(type $v (func))
(global $../../examples/game-of-life/assembly/game-of-life/w (mut i32) (i32.const 0))
(global $../../examples/game-of-life/assembly/game-of-life/h (mut i32) (i32.const 0))
(global $../../examples/game-of-life/assembly/game-of-life/s (mut i32) (i32.const 0))
(global $HEAP_BASE i32 (i32.const 4))
(memory $0 1)
(export "init" (func $../../examples/game-of-life/assembly/game-of-life/init))
(export "step" (func $../../examples/game-of-life/assembly/game-of-life/step))
(export "memory" (memory $0))
(func $../../examples/game-of-life/assembly/game-of-life/init (; 0 ;) (type $iiv) (param $0 i32) (param $1 i32)
(set_global $../../examples/game-of-life/assembly/game-of-life/w
(get_local $0)
)
(set_global $../../examples/game-of-life/assembly/game-of-life/h
(get_local $1)
)
(set_global $../../examples/game-of-life/assembly/game-of-life/s
(i32.mul
(get_global $../../examples/game-of-life/assembly/game-of-life/w)
(get_global $../../examples/game-of-life/assembly/game-of-life/h)
)
)
)
(func $../../examples/game-of-life/assembly/game-of-life/step (; 1 ;) (type $v)
(local $0 i32)
(local $1 i32)
(local $2 i32)
(local $3 i32)
(local $4 i32)
(local $5 i32)
(local $6 i32)
(local $7 i32)
(local $8 i32)
(local $9 i32)
(block
(set_local $0
(i32.sub
(get_global $../../examples/game-of-life/assembly/game-of-life/h)
(i32.const 1)
)
)
(set_local $1
(i32.sub
(get_global $../../examples/game-of-life/assembly/game-of-life/w)
(i32.const 1)
)
)
)
(block $break|0
(set_local $2
(i32.const 0)
)
(loop $continue|0
(if
(i32.lt_u
(get_local $2)
(get_global $../../examples/game-of-life/assembly/game-of-life/h)
)
(block
(block
(block
(set_local $3
(select
(get_local $0)
(i32.sub
(get_local $2)
(i32.const 1)
)
(i32.eq
(get_local $2)
(i32.const 0)
)
)
)
(set_local $4
(select
(i32.const 0)
(i32.add
(get_local $2)
(i32.const 1)
)
(i32.eq
(get_local $2)
(get_local $0)
)
)
)
)
(block $break|1
(set_local $5
(i32.const 0)
)
(loop $continue|1
(if
(i32.lt_u
(get_local $5)
(get_global $../../examples/game-of-life/assembly/game-of-life/w)
)
(block
(block
(block
(set_local $6
(select
(get_local $1)
(i32.sub
(get_local $5)
(i32.const 1)
)
(i32.eq
(get_local $5)
(i32.const 0)
)
)
)
(set_local $7
(select
(i32.const 0)
(i32.add
(get_local $5)
(i32.const 1)
)
(i32.eq
(get_local $5)
(get_local $1)
)
)
)
)
(set_local $8
(i32.add
(i32.add
(i32.add
(i32.add
(i32.add
(i32.add
(i32.add
(i32.load8_u
(i32.add
(i32.mul
(get_local $3)
(get_global $../../examples/game-of-life/assembly/game-of-life/w)
)
(get_local $6)
)
)
(i32.load8_u
(i32.add
(i32.mul
(get_local $3)
(get_global $../../examples/game-of-life/assembly/game-of-life/w)
)
(get_local $5)
)
)
)
(i32.load8_u
(i32.add
(i32.mul
(get_local $3)
(get_global $../../examples/game-of-life/assembly/game-of-life/w)
)
(get_local $7)
)
)
)
(i32.load8_u
(i32.add
(i32.mul
(get_local $2)
(get_global $../../examples/game-of-life/assembly/game-of-life/w)
)
(get_local $6)
)
)
)
(i32.load8_u
(i32.add
(i32.mul
(get_local $2)
(get_global $../../examples/game-of-life/assembly/game-of-life/w)
)
(get_local $7)
)
)
)
(i32.load8_u
(i32.add
(i32.mul
(get_local $4)
(get_global $../../examples/game-of-life/assembly/game-of-life/w)
)
(get_local $6)
)
)
)
(i32.load8_u
(i32.add
(i32.mul
(get_local $4)
(get_global $../../examples/game-of-life/assembly/game-of-life/w)
)
(get_local $5)
)
)
)
(i32.load8_u
(i32.add
(i32.mul
(get_local $4)
(get_global $../../examples/game-of-life/assembly/game-of-life/w)
)
(get_local $7)
)
)
)
)
(if
(i32.load8_u
(i32.add
(i32.mul
(get_local $2)
(get_global $../../examples/game-of-life/assembly/game-of-life/w)
)
(get_local $5)
)
)
(if
(i32.and
(if (result i32)
(i32.ne
(tee_local $9
(i32.lt_s
(get_local $8)
(i32.const 2)
)
)
(i32.const 0)
)
(get_local $9)
(i32.gt_s
(get_local $8)
(i32.const 3)
)
)
(i32.const 1)
)
(i32.store8
(i32.add
(i32.add
(get_global $../../examples/game-of-life/assembly/game-of-life/s)
(i32.mul
(get_local $2)
(get_global $../../examples/game-of-life/assembly/game-of-life/w)
)
)
(get_local $5)
)
(i32.const 0)
)
)
(if
(i32.eq
(get_local $8)
(i32.const 3)
)
(i32.store8
(i32.add
(i32.add
(get_global $../../examples/game-of-life/assembly/game-of-life/s)
(i32.mul
(get_local $2)
(get_global $../../examples/game-of-life/assembly/game-of-life/w)
)
)
(get_local $5)
)
(i32.const 1)
)
)
)
)
(set_local $5
(i32.add
(get_local $5)
(i32.const 1)
)
)
(br $continue|1)
)
)
)
)
)
(set_local $2
(i32.add
(get_local $2)
(i32.const 1)
)
)
(br $continue|0)
)
)
)
)
)
)

View File

@ -1,417 +0,0 @@
(module
(type $iiv (func (param i32 i32)))
(type $v (func))
(global $../../examples/game-of-life/assembly/game-of-life/w (mut i32) (i32.const 0))
(global $../../examples/game-of-life/assembly/game-of-life/h (mut i32) (i32.const 0))
(global $../../examples/game-of-life/assembly/game-of-life/s (mut i32) (i32.const 0))
(global $HEAP_BASE i32 (i32.const 4))
(memory $0 1)
(export "init" (func $../../examples/game-of-life/assembly/game-of-life/init))
(export "step" (func $../../examples/game-of-life/assembly/game-of-life/step))
(export "memory" (memory $0))
(func $../../examples/game-of-life/assembly/game-of-life/init (; 0 ;) (type $iiv) (param $0 i32) (param $1 i32)
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:9:2
(set_global $../../examples/game-of-life/assembly/game-of-life/w
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:9:6
(get_local $0)
)
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:10:2
(set_global $../../examples/game-of-life/assembly/game-of-life/h
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:10:6
(get_local $1)
)
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:11:2
(set_global $../../examples/game-of-life/assembly/game-of-life/s
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:11:6
(i32.mul
(get_global $../../examples/game-of-life/assembly/game-of-life/w)
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:11:10
(get_global $../../examples/game-of-life/assembly/game-of-life/h)
)
)
)
(func $../../examples/game-of-life/assembly/game-of-life/step (; 1 ;) (type $v)
(local $0 i32)
(local $1 i32)
(local $2 i32)
(local $3 i32)
(local $4 i32)
(local $5 i32)
(local $6 i32)
(local $7 i32)
(local $8 i32)
(local $9 i32)
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:16:2
(block
(set_local $0
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:16:12
(i32.sub
(get_global $../../examples/game-of-life/assembly/game-of-life/h)
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:16:16
(i32.const 1)
)
)
(set_local $1
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:17:12
(i32.sub
(get_global $../../examples/game-of-life/assembly/game-of-life/w)
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:17:16
(i32.const 1)
)
)
)
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:18:2
(block $break|0
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:18:7
(set_local $2
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:18:20
(i32.const 0)
)
(loop $continue|0
(if
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:18:23
(i32.lt_u
(get_local $2)
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:18:27
(get_global $../../examples/game-of-life/assembly/game-of-life/h)
)
(block
(block
(block
(set_local $3
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:19:14
(select
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:19:26
(get_local $0)
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:19:31
(i32.sub
(get_local $2)
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:19:35
(i32.const 1)
)
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:19:38
(i32.eq
(get_local $2)
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:19:43
(i32.const 0)
)
)
)
(set_local $4
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:20:14
(select
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:20:26
(i32.const 0)
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:20:29
(i32.add
(get_local $2)
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:20:33
(i32.const 1)
)
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:20:36
(i32.eq
(get_local $2)
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:20:41
(get_local $0)
)
)
)
)
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:21:4
(block $break|1
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:21:9
(set_local $5
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:21:22
(i32.const 0)
)
(loop $continue|1
(if
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:21:25
(i32.lt_u
(get_local $5)
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:21:29
(get_global $../../examples/game-of-life/assembly/game-of-life/w)
)
(block
(block
(block
(set_local $6
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:22:16
(select
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:22:28
(get_local $1)
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:22:33
(i32.sub
(get_local $5)
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:22:37
(i32.const 1)
)
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:22:40
(i32.eq
(get_local $5)
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:22:45
(i32.const 0)
)
)
)
(set_local $7
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:23:16
(select
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:23:28
(i32.const 0)
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:23:31
(i32.add
(get_local $5)
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:23:35
(i32.const 1)
)
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:23:38
(i32.eq
(get_local $5)
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:23:43
(get_local $1)
)
)
)
)
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:24:6
(set_local $8
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:24:14
(i32.add
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:25:8
(i32.add
(i32.add
(i32.add
(i32.add
(i32.add
(i32.add
(i32.load8_u
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:25:17
(i32.add
(i32.mul
(get_local $3)
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:25:23
(get_global $../../examples/game-of-life/assembly/game-of-life/w)
)
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:25:27
(get_local $6)
)
)
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:25:34
(i32.load8_u
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:25:43
(i32.add
(i32.mul
(get_local $3)
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:25:49
(get_global $../../examples/game-of-life/assembly/game-of-life/w)
)
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:25:53
(get_local $5)
)
)
)
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:25:58
(i32.load8_u
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:25:67
(i32.add
(i32.mul
(get_local $3)
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:25:73
(get_global $../../examples/game-of-life/assembly/game-of-life/w)
)
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:25:77
(get_local $7)
)
)
)
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:26:8
(i32.load8_u
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:26:17
(i32.add
(i32.mul
(get_local $2)
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:26:23
(get_global $../../examples/game-of-life/assembly/game-of-life/w)
)
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:26:27
(get_local $6)
)
)
)
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:26:58
(i32.load8_u
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:26:67
(i32.add
(i32.mul
(get_local $2)
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:26:73
(get_global $../../examples/game-of-life/assembly/game-of-life/w)
)
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:26:77
(get_local $7)
)
)
)
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:27:8
(i32.load8_u
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:27:17
(i32.add
(i32.mul
(get_local $4)
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:27:23
(get_global $../../examples/game-of-life/assembly/game-of-life/w)
)
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:27:27
(get_local $6)
)
)
)
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:27:34
(i32.load8_u
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:27:43
(i32.add
(i32.mul
(get_local $4)
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:27:49
(get_global $../../examples/game-of-life/assembly/game-of-life/w)
)
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:27:53
(get_local $5)
)
)
)
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:27:58
(i32.load8_u
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:27:67
(i32.add
(i32.mul
(get_local $4)
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:27:73
(get_global $../../examples/game-of-life/assembly/game-of-life/w)
)
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:27:77
(get_local $7)
)
)
)
)
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:29:6
(if
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:29:10
(i32.load8_u
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:29:19
(i32.add
(i32.mul
(get_local $2)
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:29:23
(get_global $../../examples/game-of-life/assembly/game-of-life/w)
)
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:29:27
(get_local $5)
)
)
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:30:8
(if
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:30:12
(i32.and
(if (result i32)
(i32.ne
(tee_local $9
(i32.lt_s
(get_local $8)
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:30:16
(i32.const 2)
)
)
(i32.const 0)
)
(get_local $9)
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:30:21
(i32.gt_s
(get_local $8)
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:30:25
(i32.const 3)
)
)
(i32.const 1)
)
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:31:10
(i32.store8
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:31:20
(i32.add
(i32.add
(get_global $../../examples/game-of-life/assembly/game-of-life/s)
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:31:24
(i32.mul
(get_local $2)
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:31:28
(get_global $../../examples/game-of-life/assembly/game-of-life/w)
)
)
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:31:32
(get_local $5)
)
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:31:35
(i32.const 0)
)
)
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:32:13
(if
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:32:17
(i32.eq
(get_local $8)
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:32:22
(i32.const 3)
)
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:33:8
(i32.store8
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:33:18
(i32.add
(i32.add
(get_global $../../examples/game-of-life/assembly/game-of-life/s)
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:33:22
(i32.mul
(get_local $2)
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:33:26
(get_global $../../examples/game-of-life/assembly/game-of-life/w)
)
)
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:33:30
(get_local $5)
)
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:33:33
(i32.const 1)
)
)
)
)
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:21:32
(set_local $5
(i32.add
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:21:34
(get_local $5)
(i32.const 1)
)
)
(br $continue|1)
)
)
)
)
)
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:18:30
(set_local $2
(i32.add
;;@ ../../examples/game-of-life/assembly/game-of-life.ts:18:32
(get_local $2)
(i32.const 1)
)
)
(br $continue|0)
)
)
)
)
)
)

View File

@ -11,27 +11,20 @@
(export "memory" (memory $0))
(start $start)
(func $getter-setter/Foo.get:bar (; 1 ;) (type $i) (result i32)
;;@ getter-setter.ts:5:15
(return
;;@ getter-setter.ts:5:11
(get_global $getter-setter/Foo._bar)
)
)
(func $getter-setter/Foo.set:bar (; 2 ;) (type $iv) (param $0 i32)
;;@ getter-setter.ts:9:4
(set_global $getter-setter/Foo._bar
;;@ getter-setter.ts:9:15
(get_local $0)
)
)
(func $start (; 3 ;) (type $v)
;;@ getter-setter.ts:13:0
(if
(i32.eqz
;;@ getter-setter.ts:13:7
(i32.eq
(call $getter-setter/Foo.get:bar)
;;@ getter-setter.ts:13:18
(i32.const 0)
)
)
@ -45,18 +38,13 @@
(unreachable)
)
)
;;@ getter-setter.ts:14:0
(call $getter-setter/Foo.set:bar
;;@ getter-setter.ts:14:10
(i32.const 1)
)
;;@ getter-setter.ts:15:0
(if
(i32.eqz
;;@ getter-setter.ts:15:7
(i32.eq
(call $getter-setter/Foo.get:bar)
;;@ getter-setter.ts:15:18
(i32.const 1)
)
)
@ -70,19 +58,15 @@
(unreachable)
)
)
;;@ getter-setter.ts:16:0
(if
(i32.eqz
;;@ getter-setter.ts:16:7
(i32.eq
(block (result i32)
(call $getter-setter/Foo.set:bar
;;@ getter-setter.ts:16:18
(i32.const 2)
)
(call $getter-setter/Foo.get:bar)
)
;;@ getter-setter.ts:16:24
(i32.const 2)
)
)

View File

@ -13,54 +13,38 @@
(export "memory" (memory $0))
(start $start)
(func $if/ifThenElse (; 1 ;) (type $ii) (param $0 i32) (result i32)
;;@ if.ts:2:2
(if
;;@ if.ts:2:6
(get_local $0)
;;@ if.ts:3:11
(return
(i32.const 1)
)
;;@ if.ts:5:11
(return
(i32.const 0)
)
)
)
(func $if/ifThen (; 2 ;) (type $ii) (param $0 i32) (result i32)
;;@ if.ts:12:2
(if
;;@ if.ts:12:6
(get_local $0)
;;@ if.ts:13:11
(return
(i32.const 1)
)
)
;;@ if.ts:14:9
(return
(i32.const 0)
)
)
(func $if/ifThenElseBlock (; 3 ;) (type $ii) (param $0 i32) (result i32)
;;@ if.ts:21:2
(if
;;@ if.ts:21:6
(get_local $0)
;;@ if.ts:21:9
(block
;;@ if.ts:22:4
(nop)
;;@ if.ts:23:11
(return
(i32.const 1)
)
)
;;@ if.ts:24:9
(block
;;@ if.ts:25:4
(nop)
;;@ if.ts:26:11
(return
(i32.const 0)
)
@ -68,29 +52,21 @@
)
)
(func $if/ifAlwaysReturns (; 4 ;) (type $ii) (param $0 i32) (result i32)
;;@ if.ts:34:2
(if
;;@ if.ts:34:6
(get_local $0)
;;@ if.ts:35:11
(return
(i32.const 1)
)
;;@ if.ts:37:4
(unreachable)
)
)
(func $start (; 5 ;) (type $v)
;;@ if.ts:8:0
(if
(i32.eqz
;;@ if.ts:8:7
(i32.eq
(call $if/ifThenElse
;;@ if.ts:8:18
(i32.const 0)
)
;;@ if.ts:8:24
(i32.const 0)
)
)
@ -104,16 +80,12 @@
(unreachable)
)
)
;;@ if.ts:9:0
(if
(i32.eqz
;;@ if.ts:9:7
(i32.eq
(call $if/ifThenElse
;;@ if.ts:9:18
(i32.const 1)
)
;;@ if.ts:9:24
(i32.const 1)
)
)
@ -127,16 +99,12 @@
(unreachable)
)
)
;;@ if.ts:17:0
(if
(i32.eqz
;;@ if.ts:17:7
(i32.eq
(call $if/ifThen
;;@ if.ts:17:14
(i32.const 0)
)
;;@ if.ts:17:20
(i32.const 0)
)
)
@ -150,16 +118,12 @@
(unreachable)
)
)
;;@ if.ts:18:0
(if
(i32.eqz
;;@ if.ts:18:7
(i32.eq
(call $if/ifThen
;;@ if.ts:18:14
(i32.const 1)
)
;;@ if.ts:18:20
(i32.const 1)
)
)
@ -173,16 +137,12 @@
(unreachable)
)
)
;;@ if.ts:30:0
(if
(i32.eqz
;;@ if.ts:30:7
(i32.eq
(call $if/ifThenElseBlock
;;@ if.ts:30:23
(i32.const 0)
)
;;@ if.ts:30:29
(i32.const 0)
)
)
@ -196,16 +156,12 @@
(unreachable)
)
)
;;@ if.ts:31:0
(if
(i32.eqz
;;@ if.ts:31:7
(i32.eq
(call $if/ifThenElseBlock
;;@ if.ts:31:23
(i32.const 1)
)
;;@ if.ts:31:29
(i32.const 1)
)
)

View File

@ -9,34 +9,25 @@
(export "memory" (memory $0))
(start $start)
(func $export/add (; 0 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
;;@ export.ts:2:13
(return
;;@ export.ts:2:9
(i32.add
(get_local $0)
;;@ export.ts:2:13
(get_local $1)
)
)
)
(func $export/sub (; 1 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
;;@ export.ts:6:13
(return
;;@ export.ts:6:9
(i32.sub
(get_local $0)
;;@ export.ts:6:13
(get_local $1)
)
)
)
(func $export/mul (; 2 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
;;@ export.ts:12:13
(return
;;@ export.ts:12:9
(i32.mul
(get_local $0)
;;@ export.ts:12:13
(get_local $1)
)
)
@ -44,34 +35,24 @@
(func $export/ns.two (; 3 ;) (type $v)
)
(func $start (; 4 ;) (type $v)
;;@ import.ts:11:0
(drop
(i32.add
(i32.add
(call $export/add
;;@ import.ts:11:4
(i32.const 1)
;;@ import.ts:11:7
(i32.const 2)
)
;;@ import.ts:11:12
(call $export/sub
;;@ import.ts:11:16
(i32.const 2)
;;@ import.ts:11:19
(i32.const 3)
)
)
;;@ import.ts:11:24
(call $export/mul
;;@ import.ts:11:28
(i32.const 3)
;;@ import.ts:11:31
(i32.const 1)
)
)
)
;;@ import.ts:13:11
(call $export/ns.two)
)
)

View File

@ -22,57 +22,41 @@
(local $3 i32)
(local $4 i64)
(local $5 f64)
;;@ infer-type.ts:11:2
(set_local $0
;;@ infer-type.ts:11:11
(i32.const 10)
)
;;@ infer-type.ts:12:2
(set_local $1
;;@ infer-type.ts:12:11
(i64.const 4294967296)
)
;;@ infer-type.ts:13:2
(set_local $2
;;@ infer-type.ts:13:11
(f64.const 1.5)
)
;;@ infer-type.ts:14:2
(set_local $3
;;@ infer-type.ts:14:11
(i32.const 10)
)
;;@ infer-type.ts:15:2
(set_local $4
;;@ infer-type.ts:15:11
(i64.const 4294967296)
)
;;@ infer-type.ts:16:2
(set_local $5
;;@ infer-type.ts:16:11
(f64.const 1.5)
)
)
(func $infer-type/reti (; 1 ;) (type $i) (result i32)
;;@ infer-type.ts:21:9
(return
(i32.const 0)
)
)
(func $infer-type/retI (; 2 ;) (type $I) (result i64)
;;@ infer-type.ts:27:9
(return
(i64.const 0)
)
)
(func $infer-type/retf (; 3 ;) (type $f) (result f32)
;;@ infer-type.ts:33:9
(return
(f32.const 0)
)
)
(func $infer-type/refF (; 4 ;) (type $F) (result f64)
;;@ infer-type.ts:39:9
(return
(f64.const 0)
)
@ -80,81 +64,61 @@
(func $start (; 5 ;) (type $v)
(local $0 i32)
(local $1 i32)
;;@ infer-type.ts:2:0
(drop
(i32.const 10)
)
;;@ infer-type.ts:5:0
(drop
(i64.const 4294967296)
)
;;@ infer-type.ts:8:0
(drop
(f64.const 1.5)
)
;;@ infer-type.ts:18:0
(call $infer-type/locals)
(set_global $infer-type/ri
;;@ infer-type.ts:23:9
(call $infer-type/reti)
)
;;@ infer-type.ts:24:0
(drop
(get_global $infer-type/ri)
)
(set_global $infer-type/rI
;;@ infer-type.ts:29:9
(call $infer-type/retI)
)
;;@ infer-type.ts:30:0
(drop
(get_global $infer-type/rI)
)
(set_global $infer-type/rf
;;@ infer-type.ts:35:9
(call $infer-type/retf)
)
;;@ infer-type.ts:36:0
(drop
(get_global $infer-type/rf)
)
(set_global $infer-type/rF
;;@ infer-type.ts:41:9
(call $infer-type/refF)
)
;;@ infer-type.ts:42:0
(drop
(get_global $infer-type/rF)
)
;;@ infer-type.ts:44:0
(block $break|0
(block
(set_local $0
;;@ infer-type.ts:44:13
(i32.const 0)
)
(set_local $1
;;@ infer-type.ts:44:20
(i32.const 10)
)
)
(loop $continue|0
(if
;;@ infer-type.ts:44:24
(i32.lt_s
(get_local $0)
;;@ infer-type.ts:44:28
(get_local $1)
)
(block
(block
;;@ infer-type.ts:45:2
(nop)
)
;;@ infer-type.ts:44:31
(set_local $0
(i32.add
;;@ infer-type.ts:44:33
(get_local $0)
(i32.const 1)
)

View File

@ -11,26 +11,19 @@
(export "memory" (memory $0))
(start $start)
(func $inlining/test (; 1 ;) (type $i) (result i32)
;;@ inlining.ts:4:2
(nop)
;;@ inlining.ts:5:26
(return
;;@ inlining.ts:5:9
(i32.add
(i32.const 1)
;;@ inlining.ts:5:26
(i32.const 2)
)
)
)
(func $start (; 2 ;) (type $v)
;;@ inlining.ts:8:0
(if
(i32.eqz
;;@ inlining.ts:8:7
(i32.eq
(call $inlining/test)
;;@ inlining.ts:8:17
(i32.const 3)
)
)

View File

@ -6,107 +6,81 @@
(export "memory" (memory $0))
(start $start)
(func $start (; 0 ;) (type $v)
;;@ limits.ts:1:0
(drop
(i32.const -128)
)
;;@ limits.ts:2:0
(drop
(i32.const 127)
)
;;@ limits.ts:3:0
(drop
(i32.const -32768)
)
;;@ limits.ts:4:0
(drop
(i32.const 32767)
)
;;@ limits.ts:5:0
(drop
(i32.const -2147483648)
)
;;@ limits.ts:6:0
(drop
(i32.const 2147483647)
)
;;@ limits.ts:7:0
(drop
(i64.const -9223372036854775808)
)
;;@ limits.ts:8:0
(drop
(i64.const 9223372036854775807)
)
;;@ limits.ts:9:0
(drop
(i32.const -2147483648)
)
;;@ limits.ts:10:0
(drop
(i32.const 2147483647)
)
;;@ limits.ts:11:0
(drop
(i32.const 0)
)
;;@ limits.ts:12:0
(drop
(i32.const 255)
)
;;@ limits.ts:13:0
(drop
(i32.const 0)
)
;;@ limits.ts:14:0
(drop
(i32.const 65535)
)
;;@ limits.ts:15:0
(drop
(i32.const 0)
)
;;@ limits.ts:16:0
(drop
(i32.const -1)
)
;;@ limits.ts:17:0
(drop
(i64.const 0)
)
;;@ limits.ts:18:0
(drop
(i64.const -1)
)
;;@ limits.ts:19:0
(drop
(i32.const 0)
)
;;@ limits.ts:20:0
(drop
(i32.const -1)
)
;;@ limits.ts:21:0
(drop
(i32.const 0)
)
;;@ limits.ts:22:0
(drop
(i32.const 1)
)
;;@ limits.ts:23:0
(drop
(f32.const -16777215)
)
;;@ limits.ts:24:0
(drop
(f32.const 16777215)
)
;;@ limits.ts:25:0
(drop
(f64.const -9007199254740991)
)
;;@ limits.ts:26:0
(drop
(f64.const 9007199254740991)
)

View File

@ -5,179 +5,135 @@
(export "memory" (memory $0))
(start $start)
(func $start (; 0 ;) (type $v)
;;@ literals.ts:1:0
(drop
(i32.const 0)
)
;;@ literals.ts:2:0
(drop
(i32.const 1)
)
;;@ literals.ts:3:0
(drop
(i32.const 2)
)
;;@ literals.ts:4:0
(drop
(i32.const 3)
)
;;@ literals.ts:5:0
(drop
(i32.const 4)
)
;;@ literals.ts:6:0
(drop
(i32.const 5)
)
;;@ literals.ts:7:0
(drop
(i32.const 6)
)
;;@ literals.ts:8:0
(drop
(i32.const 7)
)
;;@ literals.ts:9:0
(drop
(i32.const 8)
)
;;@ literals.ts:10:0
(drop
(i32.const 9)
)
;;@ literals.ts:11:0
(drop
(i32.const 0)
)
;;@ literals.ts:12:0
(drop
(i32.const 1)
)
;;@ literals.ts:13:0
(drop
(i32.const 2)
)
;;@ literals.ts:14:0
(drop
(i32.const 3)
)
;;@ literals.ts:15:0
(drop
(i32.const 4)
)
;;@ literals.ts:16:0
(drop
(i32.const 5)
)
;;@ literals.ts:17:0
(drop
(i32.const 6)
)
;;@ literals.ts:18:0
(drop
(i32.const 7)
)
;;@ literals.ts:19:0
(drop
(i32.const 8)
)
;;@ literals.ts:20:0
(drop
(i32.const 9)
)
;;@ literals.ts:21:0
(drop
(i32.const 10)
)
;;@ literals.ts:22:0
(drop
(i32.const 11)
)
;;@ literals.ts:23:0
(drop
(i32.const 12)
)
;;@ literals.ts:24:0
(drop
(i32.const 13)
)
;;@ literals.ts:25:0
(drop
(i32.const 14)
)
;;@ literals.ts:26:0
(drop
(i32.const 15)
)
;;@ literals.ts:27:0
(drop
(i32.const 10)
)
;;@ literals.ts:28:0
(drop
(i32.const 11)
)
;;@ literals.ts:29:0
(drop
(i32.const 12)
)
;;@ literals.ts:30:0
(drop
(i32.const 13)
)
;;@ literals.ts:31:0
(drop
(i32.const 14)
)
;;@ literals.ts:32:0
(drop
(i32.const 15)
)
;;@ literals.ts:33:0
(drop
(i32.const 0)
)
;;@ literals.ts:34:0
(drop
(i32.const 1)
)
;;@ literals.ts:35:0
(drop
(i32.const 2)
)
;;@ literals.ts:36:0
(drop
(i32.const 3)
)
;;@ literals.ts:37:0
(drop
(i32.const 4)
)
;;@ literals.ts:38:0
(drop
(i32.const 5)
)
;;@ literals.ts:39:0
(drop
(i32.const 6)
)
;;@ literals.ts:40:0
(drop
(i32.const 7)
)
;;@ literals.ts:41:0
(drop
(i32.const 0)
)
;;@ literals.ts:42:0
(drop
(i32.const 1)
)
;;@ literals.ts:43:0
(drop
(i32.const 1)
)
;;@ literals.ts:44:0
(drop
(i32.const 0)
)

View File

@ -14,31 +14,26 @@
(func $start (; 1 ;) (type $v)
(local $0 i32)
(local $1 f64)
;;@ logical.ts:1:0
(drop
(if (result i32)
(i32.ne
(i32.const 0)
(i32.const 0)
)
;;@ logical.ts:1:5
(unreachable)
(i32.const 0)
)
)
;;@ logical.ts:2:0
(drop
(if (result f64)
(f64.ne
(f64.const 0)
(f64.const 0)
)
;;@ logical.ts:2:7
(unreachable)
(f64.const 0)
)
)
;;@ logical.ts:3:0
(drop
(if (result i32)
(i32.ne
@ -46,11 +41,9 @@
(i32.const 0)
)
(i32.const 1)
;;@ logical.ts:3:5
(unreachable)
)
)
;;@ logical.ts:4:0
(drop
(if (result f64)
(f64.ne
@ -58,11 +51,9 @@
(f64.const 0)
)
(f64.const 1)
;;@ logical.ts:4:7
(unreachable)
)
)
;;@ logical.ts:6:0
(drop
(if (result i32)
(i32.ne
@ -72,7 +63,6 @@
(i32.const 1)
(i32.const 0)
)
;;@ logical.ts:6:5
(i32.const 2)
(i32.const 1)
)
@ -80,11 +70,9 @@
(i32.const 0)
)
(get_local $0)
;;@ logical.ts:6:10
(unreachable)
)
)
;;@ logical.ts:7:0
(drop
(if (result f64)
(f64.ne
@ -94,7 +82,6 @@
(f64.const 1)
(f64.const 0)
)
;;@ logical.ts:7:7
(f64.const 2)
(f64.const 1)
)
@ -102,30 +89,23 @@
(f64.const 0)
)
(get_local $1)
;;@ logical.ts:7:14
(unreachable)
)
)
;;@ logical.ts:11:0
(set_global $logical/i
;;@ logical.ts:11:4
(if (result i32)
(i32.ne
(i32.const 1)
(i32.const 0)
)
;;@ logical.ts:11:9
(i32.const 2)
(i32.const 1)
)
)
;;@ logical.ts:12:0
(if
(i32.eqz
;;@ logical.ts:12:7
(i32.eq
(get_global $logical/i)
;;@ logical.ts:12:12
(i32.const 2)
)
)
@ -139,26 +119,20 @@
(unreachable)
)
)
;;@ logical.ts:14:0
(set_global $logical/i
;;@ logical.ts:14:4
(if (result i32)
(i32.ne
(i32.const 0)
(i32.const 0)
)
(i32.const 0)
;;@ logical.ts:14:9
(i32.const 1)
)
)
;;@ logical.ts:15:0
(if
(i32.eqz
;;@ logical.ts:15:7
(i32.eq
(get_global $logical/i)
;;@ logical.ts:15:12
(i32.const 1)
)
)
@ -172,26 +146,20 @@
(unreachable)
)
)
;;@ logical.ts:19:0
(set_global $logical/I
;;@ logical.ts:19:4
(if (result i64)
(i64.ne
(i64.const 1)
(i64.const 0)
)
;;@ logical.ts:19:9
(i64.const 2)
(i64.const 1)
)
)
;;@ logical.ts:20:0
(if
(i32.eqz
;;@ logical.ts:20:7
(i64.eq
(get_global $logical/I)
;;@ logical.ts:20:12
(i64.const 2)
)
)
@ -205,26 +173,20 @@
(unreachable)
)
)
;;@ logical.ts:22:0
(set_global $logical/I
;;@ logical.ts:22:4
(if (result i64)
(i64.ne
(i64.const 0)
(i64.const 0)
)
(i64.const 0)
;;@ logical.ts:22:9
(i64.const 1)
)
)
;;@ logical.ts:23:0
(if
(i32.eqz
;;@ logical.ts:23:7
(i64.eq
(get_global $logical/I)
;;@ logical.ts:23:12
(i64.const 1)
)
)
@ -238,26 +200,20 @@
(unreachable)
)
)
;;@ logical.ts:27:0
(set_global $logical/f
;;@ logical.ts:27:4
(if (result f32)
(f32.ne
(f32.const 1)
(f32.const 0)
)
;;@ logical.ts:27:11
(f32.const 2)
(f32.const 1)
)
)
;;@ logical.ts:28:0
(if
(i32.eqz
;;@ logical.ts:28:7
(f32.eq
(get_global $logical/f)
;;@ logical.ts:28:12
(f32.const 2)
)
)
@ -271,26 +227,20 @@
(unreachable)
)
)
;;@ logical.ts:30:0
(set_global $logical/f
;;@ logical.ts:30:4
(if (result f32)
(f32.ne
(f32.const 0)
(f32.const 0)
)
(f32.const 0)
;;@ logical.ts:30:11
(f32.const 1)
)
)
;;@ logical.ts:31:0
(if
(i32.eqz
;;@ logical.ts:31:7
(f32.eq
(get_global $logical/f)
;;@ logical.ts:31:12
(f32.const 1)
)
)
@ -304,26 +254,20 @@
(unreachable)
)
)
;;@ logical.ts:35:0
(set_global $logical/F
;;@ logical.ts:35:4
(if (result f64)
(f64.ne
(f64.const 1)
(f64.const 0)
)
;;@ logical.ts:35:11
(f64.const 2)
(f64.const 1)
)
)
;;@ logical.ts:36:0
(if
(i32.eqz
;;@ logical.ts:36:7
(f64.eq
(get_global $logical/F)
;;@ logical.ts:36:12
(f64.const 2)
)
)
@ -337,26 +281,20 @@
(unreachable)
)
)
;;@ logical.ts:38:0
(set_global $logical/F
;;@ logical.ts:38:4
(if (result f64)
(f64.ne
(f64.const 0)
(f64.const 0)
)
(f64.const 0)
;;@ logical.ts:38:11
(f64.const 1)
)
)
;;@ logical.ts:39:0
(if
(i32.eqz
;;@ logical.ts:39:7
(f64.eq
(get_global $logical/F)
;;@ logical.ts:39:12
(f64.const 1)
)
)

View File

@ -13,86 +13,60 @@
(func $memmove/memmove (; 1 ;) (type $iiii) (param $0 i32) (param $1 i32) (param $2 i32) (result i32)
(local $3 i32)
(local $4 i32)
;;@ memmove.ts:2:2
(set_local $3
;;@ memmove.ts:2:12
(get_local $0)
)
;;@ memmove.ts:3:2
(if
;;@ memmove.ts:3:6
(i32.eq
(get_local $0)
;;@ memmove.ts:3:14
(get_local $1)
)
;;@ memmove.ts:4:11
(return
(get_local $3)
)
)
;;@ memmove.ts:9:2
(if
;;@ memmove.ts:9:6
(i32.lt_u
(get_local $0)
;;@ memmove.ts:9:13
(get_local $1)
)
;;@ memmove.ts:9:18
(block
;;@ memmove.ts:10:4
(if
;;@ memmove.ts:10:8
(i32.eq
(i32.rem_u
(get_local $1)
;;@ memmove.ts:10:14
(i32.const 8)
)
;;@ memmove.ts:10:19
(i32.rem_u
(get_local $0)
;;@ memmove.ts:10:26
(i32.const 8)
)
)
;;@ memmove.ts:10:29
(block
(block $break|0
(loop $continue|0
(if
;;@ memmove.ts:11:13
(i32.rem_u
(get_local $0)
;;@ memmove.ts:11:20
(i32.const 8)
)
(block
(block
;;@ memmove.ts:12:8
(if
;;@ memmove.ts:12:12
(i32.eqz
;;@ memmove.ts:12:13
(get_local $2)
)
;;@ memmove.ts:13:17
(return
(get_local $3)
)
)
;;@ memmove.ts:14:8
(set_local $2
(i32.sub
;;@ memmove.ts:14:10
(get_local $2)
(i32.const 1)
)
)
;;@ memmove.ts:15:8
(i32.store8
;;@ memmove.ts:15:18
(block (result i32)
(set_local $4
(get_local $0)
@ -105,9 +79,7 @@
)
(get_local $4)
)
;;@ memmove.ts:15:26
(i32.load8_u
;;@ memmove.ts:15:35
(block (result i32)
(set_local $4
(get_local $1)
@ -128,49 +100,36 @@
)
)
)
;;@ memmove.ts:17:6
(block $break|1
(loop $continue|1
(if
;;@ memmove.ts:17:13
(i32.ge_u
(get_local $2)
;;@ memmove.ts:17:18
(i32.const 8)
)
(block
(block
;;@ memmove.ts:18:8
(i64.store
;;@ memmove.ts:18:19
(get_local $0)
;;@ memmove.ts:18:25
(i64.load
;;@ memmove.ts:18:35
(get_local $1)
)
)
;;@ memmove.ts:19:8
(set_local $2
(i32.sub
(get_local $2)
;;@ memmove.ts:19:13
(i32.const 8)
)
)
;;@ memmove.ts:20:8
(set_local $0
(i32.add
(get_local $0)
;;@ memmove.ts:20:16
(i32.const 8)
)
)
;;@ memmove.ts:21:8
(set_local $1
(i32.add
(get_local $1)
;;@ memmove.ts:21:15
(i32.const 8)
)
)
@ -182,17 +141,13 @@
)
)
)
;;@ memmove.ts:24:4
(block $break|2
(loop $continue|2
(if
;;@ memmove.ts:24:11
(get_local $2)
(block
(block
;;@ memmove.ts:25:6
(i32.store8
;;@ memmove.ts:25:16
(block (result i32)
(set_local $4
(get_local $0)
@ -205,9 +160,7 @@
)
(get_local $4)
)
;;@ memmove.ts:25:24
(i32.load8_u
;;@ memmove.ts:25:33
(block (result i32)
(set_local $4
(get_local $1)
@ -222,10 +175,8 @@
)
)
)
;;@ memmove.ts:26:6
(set_local $2
(i32.sub
;;@ memmove.ts:26:8
(get_local $2)
(i32.const 1)
)
@ -237,74 +188,52 @@
)
)
)
;;@ memmove.ts:28:9
(block
;;@ memmove.ts:29:4
(if
;;@ memmove.ts:29:8
(i32.eq
(i32.rem_u
(get_local $1)
;;@ memmove.ts:29:14
(i32.const 8)
)
;;@ memmove.ts:29:19
(i32.rem_u
(get_local $0)
;;@ memmove.ts:29:26
(i32.const 8)
)
)
;;@ memmove.ts:29:29
(block
(block $break|3
(loop $continue|3
(if
;;@ memmove.ts:30:13
(i32.rem_u
(i32.add
;;@ memmove.ts:30:14
(get_local $0)
;;@ memmove.ts:30:21
(get_local $2)
)
;;@ memmove.ts:30:26
(i32.const 8)
)
(block
(block
;;@ memmove.ts:31:8
(if
;;@ memmove.ts:31:12
(i32.eqz
;;@ memmove.ts:31:13
(get_local $2)
)
;;@ memmove.ts:32:17
(return
(get_local $3)
)
)
;;@ memmove.ts:33:8
(i32.store8
;;@ memmove.ts:33:18
(i32.add
(get_local $0)
;;@ memmove.ts:33:25
(tee_local $2
(i32.sub
;;@ memmove.ts:33:27
(get_local $2)
(i32.const 1)
)
)
)
;;@ memmove.ts:33:30
(i32.load8_u
;;@ memmove.ts:33:39
(i32.add
(get_local $1)
;;@ memmove.ts:33:45
(get_local $2)
)
)
@ -315,40 +244,29 @@
)
)
)
;;@ memmove.ts:35:6
(block $break|4
(loop $continue|4
(if
;;@ memmove.ts:35:13
(i32.ge_u
(get_local $2)
;;@ memmove.ts:35:18
(i32.const 8)
)
(block
(block
;;@ memmove.ts:36:8
(set_local $2
(i32.sub
(get_local $2)
;;@ memmove.ts:36:13
(i32.const 8)
)
)
;;@ memmove.ts:37:8
(i64.store
;;@ memmove.ts:37:19
(i32.add
(get_local $0)
;;@ memmove.ts:37:26
(get_local $2)
)
;;@ memmove.ts:37:29
(i64.load
;;@ memmove.ts:37:39
(i32.add
(get_local $1)
;;@ memmove.ts:37:45
(get_local $2)
)
)
@ -361,34 +279,25 @@
)
)
)
;;@ memmove.ts:40:4
(block $break|5
(loop $continue|5
(if
;;@ memmove.ts:40:11
(get_local $2)
(block
(block
;;@ memmove.ts:41:6
(i32.store8
;;@ memmove.ts:41:16
(i32.add
(get_local $0)
;;@ memmove.ts:41:23
(tee_local $2
(i32.sub
;;@ memmove.ts:41:25
(get_local $2)
(i32.const 1)
)
)
)
;;@ memmove.ts:41:28
(i32.load8_u
;;@ memmove.ts:41:37
(i32.add
(get_local $1)
;;@ memmove.ts:41:43
(get_local $2)
)
)
@ -401,82 +310,55 @@
)
)
)
;;@ memmove.ts:44:9
(return
(get_local $3)
)
)
(func $start (; 2 ;) (type $v)
;;@ memmove.ts:48:0
(i64.store
;;@ memmove.ts:48:11
(i32.const 8)
;;@ memmove.ts:48:22
(i64.const 1229782938247303441)
)
;;@ memmove.ts:49:0
(i64.store
;;@ memmove.ts:49:11
(i32.add
(i32.const 8)
;;@ memmove.ts:49:18
(i32.const 8)
)
;;@ memmove.ts:49:22
(i64.const 2459565876494606882)
)
;;@ memmove.ts:50:0
(i64.store
;;@ memmove.ts:50:11
(i32.add
(i32.const 8)
;;@ memmove.ts:50:18
(i32.const 16)
)
;;@ memmove.ts:50:22
(i64.const 3689348814741910323)
)
;;@ memmove.ts:51:0
(i64.store
;;@ memmove.ts:51:11
(i32.add
(i32.const 8)
;;@ memmove.ts:51:18
(i32.const 24)
)
;;@ memmove.ts:51:22
(i64.const 4919131752989213764)
)
;;@ memmove.ts:54:0
(set_global $memmove/dest
;;@ memmove.ts:54:7
(call $memmove/memmove
;;@ memmove.ts:54:15
(i32.add
(i32.const 8)
;;@ memmove.ts:54:22
(i32.const 1)
)
;;@ memmove.ts:54:25
(i32.add
(i32.const 8)
;;@ memmove.ts:54:32
(i32.const 16)
)
;;@ memmove.ts:54:36
(i32.const 4)
)
)
;;@ memmove.ts:55:0
(if
(i32.eqz
;;@ memmove.ts:55:7
(i32.eq
(get_global $memmove/dest)
;;@ memmove.ts:55:15
(i32.add
(i32.const 8)
;;@ memmove.ts:55:22
(i32.const 1)
)
)
@ -491,16 +373,12 @@
(unreachable)
)
)
;;@ memmove.ts:56:0
(if
(i32.eqz
;;@ memmove.ts:56:7
(i64.eq
(i64.load
;;@ memmove.ts:56:17
(i32.const 8)
)
;;@ memmove.ts:56:26
(i64.const 1229783084848853777)
)
)
@ -514,25 +392,17 @@
(unreachable)
)
)
;;@ memmove.ts:58:0
(set_global $memmove/dest
;;@ memmove.ts:58:7
(call $memmove/memmove
;;@ memmove.ts:58:15
(i32.const 8)
;;@ memmove.ts:58:21
(i32.const 8)
;;@ memmove.ts:58:27
(i32.const 32)
)
)
;;@ memmove.ts:59:0
(if
(i32.eqz
;;@ memmove.ts:59:7
(i32.eq
(get_global $memmove/dest)
;;@ memmove.ts:59:15
(i32.const 8)
)
)
@ -546,16 +416,12 @@
(unreachable)
)
)
;;@ memmove.ts:60:0
(if
(i32.eqz
;;@ memmove.ts:60:7
(i64.eq
(i64.load
;;@ memmove.ts:60:17
(i32.const 8)
)
;;@ memmove.ts:60:26
(i64.const 1229783084848853777)
)
)
@ -569,20 +435,15 @@
(unreachable)
)
)
;;@ memmove.ts:61:0
(if
(i32.eqz
;;@ memmove.ts:61:7
(i64.eq
(i64.load
;;@ memmove.ts:61:17
(i32.add
(i32.const 8)
;;@ memmove.ts:61:24
(i32.const 8)
)
)
;;@ memmove.ts:61:30
(i64.const 2459565876494606882)
)
)
@ -596,20 +457,15 @@
(unreachable)
)
)
;;@ memmove.ts:62:0
(if
(i32.eqz
;;@ memmove.ts:62:7
(i64.eq
(i64.load
;;@ memmove.ts:62:17
(i32.add
(i32.const 8)
;;@ memmove.ts:62:24
(i32.const 16)
)
)
;;@ memmove.ts:62:31
(i64.const 3689348814741910323)
)
)
@ -623,20 +479,15 @@
(unreachable)
)
)
;;@ memmove.ts:63:0
(if
(i32.eqz
;;@ memmove.ts:63:7
(i64.eq
(i64.load
;;@ memmove.ts:63:17
(i32.add
(i32.const 8)
;;@ memmove.ts:63:24
(i32.const 24)
)
)
;;@ memmove.ts:63:31
(i64.const 4919131752989213764)
)
)
@ -650,36 +501,25 @@
(unreachable)
)
)
;;@ memmove.ts:65:0
(set_global $memmove/dest
;;@ memmove.ts:65:7
(call $memmove/memmove
;;@ memmove.ts:65:15
(i32.add
(i32.const 8)
;;@ memmove.ts:65:22
(i32.const 5)
)
;;@ memmove.ts:65:25
(i32.add
(i32.const 8)
;;@ memmove.ts:65:32
(i32.const 28)
)
;;@ memmove.ts:65:36
(i32.const 3)
)
)
;;@ memmove.ts:66:0
(if
(i32.eqz
;;@ memmove.ts:66:7
(i64.eq
(i64.load
;;@ memmove.ts:66:17
(i32.const 8)
)
;;@ memmove.ts:66:26
(i64.const 4919131679688438545)
)
)
@ -693,36 +533,25 @@
(unreachable)
)
)
;;@ memmove.ts:68:0
(set_global $memmove/dest
;;@ memmove.ts:68:7
(call $memmove/memmove
;;@ memmove.ts:68:15
(i32.add
(i32.const 8)
;;@ memmove.ts:68:22
(i32.const 8)
)
;;@ memmove.ts:68:25
(i32.add
(i32.const 8)
;;@ memmove.ts:68:32
(i32.const 16)
)
;;@ memmove.ts:68:36
(i32.const 15)
)
)
;;@ memmove.ts:69:0
(if
(i32.eqz
;;@ memmove.ts:69:7
(i64.eq
(i64.load
;;@ memmove.ts:69:17
(i32.const 8)
)
;;@ memmove.ts:69:26
(i64.const 4919131679688438545)
)
)
@ -736,20 +565,15 @@
(unreachable)
)
)
;;@ memmove.ts:70:0
(if
(i32.eqz
;;@ memmove.ts:70:7
(i64.eq
(i64.load
;;@ memmove.ts:70:17
(i32.add
(i32.const 8)
;;@ memmove.ts:70:24
(i32.const 8)
)
)
;;@ memmove.ts:70:30
(i64.const 3689348814741910323)
)
)
@ -763,20 +587,15 @@
(unreachable)
)
)
;;@ memmove.ts:71:0
(if
(i32.eqz
;;@ memmove.ts:71:7
(i64.eq
(i64.load
;;@ memmove.ts:71:17
(i32.add
(i32.const 8)
;;@ memmove.ts:71:24
(i32.const 16)
)
)
;;@ memmove.ts:71:31
(i64.const 3694152654344438852)
)
)
@ -790,20 +609,15 @@
(unreachable)
)
)
;;@ memmove.ts:72:0
(if
(i32.eqz
;;@ memmove.ts:72:7
(i64.eq
(i64.load
;;@ memmove.ts:72:17
(i32.add
(i32.const 8)
;;@ memmove.ts:72:24
(i32.const 24)
)
)
;;@ memmove.ts:72:31
(i64.const 4919131752989213764)
)
)

View File

@ -14,529 +14,356 @@
(local $4 i32)
(local $5 i32)
(local $6 i64)
;;@ memset.ts:2:2
(set_local $3
;;@ memset.ts:2:12
(get_local $0)
)
;;@ memset.ts:5:2
(if
;;@ memset.ts:5:6
(i32.eqz
;;@ memset.ts:5:7
(get_local $2)
)
;;@ memset.ts:6:11
(return
(get_local $3)
)
)
;;@ memset.ts:7:2
(i32.store8
;;@ memset.ts:7:12
(get_local $0)
;;@ memset.ts:7:18
(get_local $1)
)
;;@ memset.ts:8:2
(i32.store8
;;@ memset.ts:8:12
(i32.sub
(i32.add
(get_local $0)
;;@ memset.ts:8:19
(get_local $2)
)
;;@ memset.ts:8:23
(i32.const 1)
)
;;@ memset.ts:8:26
(get_local $1)
)
;;@ memset.ts:9:2
(if
;;@ memset.ts:9:6
(i32.le_u
(get_local $2)
;;@ memset.ts:9:11
(i32.const 2)
)
;;@ memset.ts:10:11
(return
(get_local $3)
)
)
;;@ memset.ts:12:2
(i32.store8
;;@ memset.ts:12:12
(i32.add
(get_local $0)
;;@ memset.ts:12:19
(i32.const 1)
)
;;@ memset.ts:12:22
(get_local $1)
)
;;@ memset.ts:13:2
(i32.store8
;;@ memset.ts:13:12
(i32.add
(get_local $0)
;;@ memset.ts:13:19
(i32.const 2)
)
;;@ memset.ts:13:22
(get_local $1)
)
;;@ memset.ts:14:2
(i32.store8
;;@ memset.ts:14:12
(i32.sub
(i32.add
(get_local $0)
;;@ memset.ts:14:19
(get_local $2)
)
;;@ memset.ts:14:23
(i32.const 2)
)
;;@ memset.ts:14:26
(get_local $1)
)
;;@ memset.ts:15:2
(i32.store8
;;@ memset.ts:15:12
(i32.sub
(i32.add
(get_local $0)
;;@ memset.ts:15:19
(get_local $2)
)
;;@ memset.ts:15:23
(i32.const 3)
)
;;@ memset.ts:15:26
(get_local $1)
)
;;@ memset.ts:16:2
(if
;;@ memset.ts:16:6
(i32.le_u
(get_local $2)
;;@ memset.ts:16:11
(i32.const 6)
)
;;@ memset.ts:17:11
(return
(get_local $3)
)
)
;;@ memset.ts:18:2
(i32.store8
;;@ memset.ts:18:12
(i32.add
(get_local $0)
;;@ memset.ts:18:19
(i32.const 3)
)
;;@ memset.ts:18:22
(get_local $1)
)
;;@ memset.ts:19:2
(i32.store8
;;@ memset.ts:19:12
(i32.sub
(i32.add
(get_local $0)
;;@ memset.ts:19:19
(get_local $2)
)
;;@ memset.ts:19:23
(i32.const 4)
)
;;@ memset.ts:19:26
(get_local $1)
)
;;@ memset.ts:20:2
(if
;;@ memset.ts:20:6
(i32.le_u
(get_local $2)
;;@ memset.ts:20:11
(i32.const 8)
)
;;@ memset.ts:21:11
(return
(get_local $3)
)
)
;;@ memset.ts:24:2
(set_local $4
;;@ memset.ts:24:17
(i32.and
(i32.sub
(i32.const 0)
;;@ memset.ts:24:18
(get_local $0)
)
;;@ memset.ts:24:25
(i32.const 3)
)
)
;;@ memset.ts:25:2
(set_local $0
(i32.add
(get_local $0)
;;@ memset.ts:25:10
(get_local $4)
)
)
;;@ memset.ts:26:2
(set_local $2
(i32.sub
(get_local $2)
;;@ memset.ts:26:7
(get_local $4)
)
)
;;@ memset.ts:27:2
(set_local $2
(i32.and
(get_local $2)
;;@ memset.ts:27:7
(i32.const -4)
)
)
;;@ memset.ts:29:2
(set_local $5
;;@ memset.ts:29:17
(i32.mul
(i32.div_u
(i32.const -1)
;;@ memset.ts:29:27
(i32.const 255)
)
;;@ memset.ts:29:33
(get_local $1)
)
)
;;@ memset.ts:32:2
(i32.store
;;@ memset.ts:32:13
(get_local $0)
;;@ memset.ts:32:19
(get_local $5)
)
;;@ memset.ts:33:2
(i32.store
;;@ memset.ts:33:13
(i32.sub
(i32.add
(get_local $0)
;;@ memset.ts:33:20
(get_local $2)
)
;;@ memset.ts:33:24
(i32.const 4)
)
;;@ memset.ts:33:27
(get_local $5)
)
;;@ memset.ts:34:2
(if
;;@ memset.ts:34:6
(i32.le_u
(get_local $2)
;;@ memset.ts:34:11
(i32.const 8)
)
;;@ memset.ts:35:11
(return
(get_local $3)
)
)
;;@ memset.ts:36:2
(i32.store
;;@ memset.ts:36:13
(i32.add
(get_local $0)
;;@ memset.ts:36:20
(i32.const 4)
)
;;@ memset.ts:36:23
(get_local $5)
)
;;@ memset.ts:37:2
(i32.store
;;@ memset.ts:37:13
(i32.add
(get_local $0)
;;@ memset.ts:37:20
(i32.const 8)
)
;;@ memset.ts:37:23
(get_local $5)
)
;;@ memset.ts:38:2
(i32.store
;;@ memset.ts:38:13
(i32.sub
(i32.add
(get_local $0)
;;@ memset.ts:38:20
(get_local $2)
)
;;@ memset.ts:38:24
(i32.const 12)
)
;;@ memset.ts:38:28
(get_local $5)
)
;;@ memset.ts:39:2
(i32.store
;;@ memset.ts:39:13
(i32.sub
(i32.add
(get_local $0)
;;@ memset.ts:39:20
(get_local $2)
)
;;@ memset.ts:39:24
(i32.const 8)
)
;;@ memset.ts:39:27
(get_local $5)
)
;;@ memset.ts:40:2
(if
;;@ memset.ts:40:6
(i32.le_u
(get_local $2)
;;@ memset.ts:40:11
(i32.const 24)
)
;;@ memset.ts:41:11
(return
(get_local $3)
)
)
;;@ memset.ts:42:2
(i32.store
;;@ memset.ts:42:13
(i32.add
(get_local $0)
;;@ memset.ts:42:20
(i32.const 12)
)
;;@ memset.ts:42:24
(get_local $5)
)
;;@ memset.ts:43:2
(i32.store
;;@ memset.ts:43:13
(i32.add
(get_local $0)
;;@ memset.ts:43:20
(i32.const 16)
)
;;@ memset.ts:43:24
(get_local $5)
)
;;@ memset.ts:44:2
(i32.store
;;@ memset.ts:44:13
(i32.add
(get_local $0)
;;@ memset.ts:44:20
(i32.const 20)
)
;;@ memset.ts:44:24
(get_local $5)
)
;;@ memset.ts:45:2
(i32.store
;;@ memset.ts:45:13
(i32.add
(get_local $0)
;;@ memset.ts:45:20
(i32.const 24)
)
;;@ memset.ts:45:24
(get_local $5)
)
;;@ memset.ts:46:2
(i32.store
;;@ memset.ts:46:13
(i32.sub
(i32.add
(get_local $0)
;;@ memset.ts:46:20
(get_local $2)
)
;;@ memset.ts:46:24
(i32.const 28)
)
;;@ memset.ts:46:28
(get_local $5)
)
;;@ memset.ts:47:2
(i32.store
;;@ memset.ts:47:13
(i32.sub
(i32.add
(get_local $0)
;;@ memset.ts:47:20
(get_local $2)
)
;;@ memset.ts:47:24
(i32.const 24)
)
;;@ memset.ts:47:28
(get_local $5)
)
;;@ memset.ts:48:2
(i32.store
;;@ memset.ts:48:13
(i32.sub
(i32.add
(get_local $0)
;;@ memset.ts:48:20
(get_local $2)
)
;;@ memset.ts:48:24
(i32.const 20)
)
;;@ memset.ts:48:28
(get_local $5)
)
;;@ memset.ts:49:2
(i32.store
;;@ memset.ts:49:13
(i32.sub
(i32.add
(get_local $0)
;;@ memset.ts:49:20
(get_local $2)
)
;;@ memset.ts:49:24
(i32.const 16)
)
;;@ memset.ts:49:28
(get_local $5)
)
;;@ memset.ts:52:2
(set_local $4
;;@ memset.ts:52:6
(i32.add
(i32.const 24)
;;@ memset.ts:52:11
(i32.and
;;@ memset.ts:52:12
(get_local $0)
;;@ memset.ts:52:19
(i32.const 4)
)
)
)
;;@ memset.ts:53:2
(set_local $0
(i32.add
(get_local $0)
;;@ memset.ts:53:10
(get_local $4)
)
)
;;@ memset.ts:54:2
(set_local $2
(i32.sub
(get_local $2)
;;@ memset.ts:54:7
(get_local $4)
)
)
;;@ memset.ts:57:2
(set_local $6
;;@ memset.ts:57:17
(i64.or
(i64.extend_u/i32
(get_local $5)
)
;;@ memset.ts:57:28
(i64.shl
;;@ memset.ts:57:29
(i64.extend_u/i32
(get_local $5)
)
;;@ memset.ts:57:41
(i64.const 32)
)
)
)
;;@ memset.ts:58:2
(block $break|0
(loop $continue|0
(if
;;@ memset.ts:58:9
(i32.ge_u
(get_local $2)
;;@ memset.ts:58:14
(i32.const 32)
)
(block
(block
;;@ memset.ts:59:4
(i64.store
;;@ memset.ts:59:15
(get_local $0)
;;@ memset.ts:59:21
(get_local $6)
)
;;@ memset.ts:60:4
(i64.store
;;@ memset.ts:60:15
(i32.add
(get_local $0)
;;@ memset.ts:60:22
(i32.const 8)
)
;;@ memset.ts:60:25
(get_local $6)
)
;;@ memset.ts:61:4
(i64.store
;;@ memset.ts:61:15
(i32.add
(get_local $0)
;;@ memset.ts:61:22
(i32.const 16)
)
;;@ memset.ts:61:26
(get_local $6)
)
;;@ memset.ts:62:4
(i64.store
;;@ memset.ts:62:15
(i32.add
(get_local $0)
;;@ memset.ts:62:22
(i32.const 24)
)
;;@ memset.ts:62:26
(get_local $6)
)
;;@ memset.ts:63:4
(set_local $2
(i32.sub
(get_local $2)
;;@ memset.ts:63:9
(i32.const 32)
)
)
;;@ memset.ts:64:4
(set_local $0
(i32.add
(get_local $0)
;;@ memset.ts:64:12
(i32.const 32)
)
)
@ -546,37 +373,27 @@
)
)
)
;;@ memset.ts:66:9
(return
(get_local $3)
)
)
(func $start (; 2 ;) (type $v)
(set_global $memset/dest
;;@ memset.ts:69:11
(get_global $HEAP_BASE)
)
;;@ memset.ts:70:0
(drop
(call $memset/memset
;;@ memset.ts:70:7
(get_global $memset/dest)
;;@ memset.ts:70:13
(i32.const 1)
;;@ memset.ts:70:16
(i32.const 16)
)
)
;;@ memset.ts:72:0
(if
(i32.eqz
;;@ memset.ts:72:7
(i32.eq
(i32.load8_u
;;@ memset.ts:72:16
(get_global $memset/dest)
)
;;@ memset.ts:72:25
(i32.const 1)
)
)
@ -590,20 +407,15 @@
(unreachable)
)
)
;;@ memset.ts:73:0
(if
(i32.eqz
;;@ memset.ts:73:7
(i32.eq
(i32.load8_u
;;@ memset.ts:73:16
(i32.add
(get_global $memset/dest)
;;@ memset.ts:73:23
(i32.const 15)
)
)
;;@ memset.ts:73:30
(i32.const 1)
)
)
@ -617,31 +429,22 @@
(unreachable)
)
)
;;@ memset.ts:75:0
(drop
(call $memset/memset
;;@ memset.ts:75:7
(i32.add
(get_global $memset/dest)
;;@ memset.ts:75:14
(i32.const 1)
)
;;@ memset.ts:75:17
(i32.const 2)
;;@ memset.ts:75:20
(i32.const 14)
)
)
;;@ memset.ts:77:0
(if
(i32.eqz
;;@ memset.ts:77:7
(i32.eq
(i32.load8_u
;;@ memset.ts:77:16
(get_global $memset/dest)
)
;;@ memset.ts:77:25
(i32.const 1)
)
)
@ -655,20 +458,15 @@
(unreachable)
)
)
;;@ memset.ts:78:0
(if
(i32.eqz
;;@ memset.ts:78:7
(i32.eq
(i32.load8_u
;;@ memset.ts:78:16
(i32.add
(get_global $memset/dest)
;;@ memset.ts:78:23
(i32.const 1)
)
)
;;@ memset.ts:78:29
(i32.const 2)
)
)
@ -682,20 +480,15 @@
(unreachable)
)
)
;;@ memset.ts:79:0
(if
(i32.eqz
;;@ memset.ts:79:7
(i32.eq
(i32.load8_u
;;@ memset.ts:79:16
(i32.add
(get_global $memset/dest)
;;@ memset.ts:79:23
(i32.const 14)
)
)
;;@ memset.ts:79:30
(i32.const 2)
)
)
@ -709,20 +502,15 @@
(unreachable)
)
)
;;@ memset.ts:80:0
(if
(i32.eqz
;;@ memset.ts:80:7
(i32.eq
(i32.load8_u
;;@ memset.ts:80:16
(i32.add
(get_global $memset/dest)
;;@ memset.ts:80:23
(i32.const 15)
)
)
;;@ memset.ts:80:30
(i32.const 1)
)
)

View File

@ -10,32 +10,25 @@
(export "memory" (memory $0))
(start $start)
(func $namespace/Outer.Inner.aFunc (; 0 ;) (type $i) (result i32)
;;@ namespace.ts:4:42
(return
(get_global $namespace/Outer.Inner.aVar)
)
)
(func $namespace/Joined.anotherFunc (; 1 ;) (type $i) (result i32)
;;@ namespace.ts:17:53
(return
;;@ namespace.ts:17:46
(i32.const 3)
)
)
(func $start (; 2 ;) (type $v)
;;@ namespace.ts:9:0
(drop
(get_global $namespace/Outer.Inner.aVar)
)
;;@ namespace.ts:10:12
(drop
(call $namespace/Outer.Inner.aFunc)
)
;;@ namespace.ts:11:0
(drop
(i32.const 1)
)
;;@ namespace.ts:20:7
(drop
(call $namespace/Joined.anotherFunc)
)

View File

@ -11,16 +11,11 @@
(local $0 i32)
(local $1 i32)
(local $2 i32)
;;@ overflow.ts:5:0
(block
;;@ overflow.ts:6:2
(set_local $0
;;@ overflow.ts:6:16
(i32.const 127)
)
;;@ overflow.ts:7:2
(nop)
;;@ overflow.ts:9:2
(set_local $0
(i32.shr_s
(i32.shl
@ -33,13 +28,10 @@
(i32.const 24)
)
)
;;@ overflow.ts:10:2
(if
(i32.eqz
;;@ overflow.ts:10:9
(i32.eq
(get_local $0)
;;@ overflow.ts:10:16
(i32.const -128)
)
)
@ -53,7 +45,6 @@
(unreachable)
)
)
;;@ overflow.ts:12:2
(set_local $0
(i32.shr_s
(i32.shl
@ -66,13 +57,10 @@
(i32.const 24)
)
)
;;@ overflow.ts:13:2
(if
(i32.eqz
;;@ overflow.ts:13:9
(i32.eq
(get_local $0)
;;@ overflow.ts:13:16
(i32.const 127)
)
)
@ -86,9 +74,7 @@
(unreachable)
)
)
;;@ overflow.ts:15:2
(set_local $1
;;@ overflow.ts:15:8
(block (result i32)
(set_local $2
(get_local $0)
@ -108,13 +94,10 @@
(get_local $2)
)
)
;;@ overflow.ts:16:2
(if
(i32.eqz
;;@ overflow.ts:16:9
(i32.eq
(get_local $0)
;;@ overflow.ts:16:16
(i32.const -128)
)
)
@ -128,9 +111,7 @@
(unreachable)
)
)
;;@ overflow.ts:18:2
(set_local $1
;;@ overflow.ts:18:8
(block (result i32)
(set_local $2
(get_local $0)
@ -150,13 +131,10 @@
(get_local $2)
)
)
;;@ overflow.ts:19:2
(if
(i32.eqz
;;@ overflow.ts:19:9
(i32.eq
(get_local $0)
;;@ overflow.ts:19:16
(i32.const 127)
)
)
@ -170,12 +148,10 @@
(unreachable)
)
)
;;@ overflow.ts:21:2
(set_local $0
(i32.shr_s
(i32.shl
(i32.add
;;@ overflow.ts:21:4
(get_local $0)
(i32.const 1)
)
@ -184,13 +160,10 @@
(i32.const 24)
)
)
;;@ overflow.ts:22:2
(if
(i32.eqz
;;@ overflow.ts:22:9
(i32.eq
(get_local $0)
;;@ overflow.ts:22:16
(i32.const -128)
)
)
@ -204,12 +177,10 @@
(unreachable)
)
)
;;@ overflow.ts:24:2
(set_local $0
(i32.shr_s
(i32.shl
(i32.sub
;;@ overflow.ts:24:4
(get_local $0)
(i32.const 1)
)
@ -218,13 +189,10 @@
(i32.const 24)
)
)
;;@ overflow.ts:25:2
(if
(i32.eqz
;;@ overflow.ts:25:9
(i32.eq
(get_local $0)
;;@ overflow.ts:25:16
(i32.const 127)
)
)
@ -238,14 +206,11 @@
(unreachable)
)
)
;;@ overflow.ts:27:2
(set_local $1
;;@ overflow.ts:27:8
(tee_local $0
(i32.shr_s
(i32.shl
(i32.add
;;@ overflow.ts:27:10
(get_local $0)
(i32.const 1)
)
@ -255,13 +220,10 @@
)
)
)
;;@ overflow.ts:28:2
(if
(i32.eqz
;;@ overflow.ts:28:9
(i32.eq
(get_local $0)
;;@ overflow.ts:28:16
(i32.const -128)
)
)
@ -275,14 +237,11 @@
(unreachable)
)
)
;;@ overflow.ts:30:2
(set_local $1
;;@ overflow.ts:30:8
(tee_local $0
(i32.shr_s
(i32.shl
(i32.sub
;;@ overflow.ts:30:10
(get_local $0)
(i32.const 1)
)
@ -292,13 +251,10 @@
)
)
)
;;@ overflow.ts:31:2
(if
(i32.eqz
;;@ overflow.ts:31:9
(i32.eq
(get_local $0)
;;@ overflow.ts:31:16
(i32.const 127)
)
)
@ -312,23 +268,19 @@
(unreachable)
)
)
;;@ overflow.ts:33:2
(if
(i32.eqz
;;@ overflow.ts:33:9
(i32.eq
(i32.shr_s
(i32.shl
(i32.add
(get_local $0)
;;@ overflow.ts:33:15
(i32.const 1)
)
(i32.const 24)
)
(i32.const 24)
)
;;@ overflow.ts:33:20
(i32.const -128)
)
)
@ -343,16 +295,11 @@
)
)
)
;;@ overflow.ts:37:0
(block
;;@ overflow.ts:38:2
(set_local $1
;;@ overflow.ts:38:17
(i32.const 32767)
)
;;@ overflow.ts:39:2
(nop)
;;@ overflow.ts:41:2
(set_local $1
(i32.shr_s
(i32.shl
@ -365,13 +312,10 @@
(i32.const 16)
)
)
;;@ overflow.ts:42:2
(if
(i32.eqz
;;@ overflow.ts:42:9
(i32.eq
(get_local $1)
;;@ overflow.ts:42:16
(i32.const -32768)
)
)
@ -385,7 +329,6 @@
(unreachable)
)
)
;;@ overflow.ts:44:2
(set_local $1
(i32.shr_s
(i32.shl
@ -398,13 +341,10 @@
(i32.const 16)
)
)
;;@ overflow.ts:45:2
(if
(i32.eqz
;;@ overflow.ts:45:9
(i32.eq
(get_local $1)
;;@ overflow.ts:45:16
(i32.const 32767)
)
)
@ -418,9 +358,7 @@
(unreachable)
)
)
;;@ overflow.ts:47:2
(set_local $0
;;@ overflow.ts:47:8
(block (result i32)
(set_local $2
(get_local $1)
@ -440,13 +378,10 @@
(get_local $2)
)
)
;;@ overflow.ts:48:2
(if
(i32.eqz
;;@ overflow.ts:48:9
(i32.eq
(get_local $1)
;;@ overflow.ts:48:16
(i32.const -32768)
)
)
@ -460,9 +395,7 @@
(unreachable)
)
)
;;@ overflow.ts:50:2
(set_local $0
;;@ overflow.ts:50:8
(block (result i32)
(set_local $2
(get_local $1)
@ -482,13 +415,10 @@
(get_local $2)
)
)
;;@ overflow.ts:51:2
(if
(i32.eqz
;;@ overflow.ts:51:9
(i32.eq
(get_local $1)
;;@ overflow.ts:51:16
(i32.const 32767)
)
)
@ -502,12 +432,10 @@
(unreachable)
)
)
;;@ overflow.ts:53:2
(set_local $1
(i32.shr_s
(i32.shl
(i32.add
;;@ overflow.ts:53:4
(get_local $1)
(i32.const 1)
)
@ -516,13 +444,10 @@
(i32.const 16)
)
)
;;@ overflow.ts:54:2
(if
(i32.eqz
;;@ overflow.ts:54:9
(i32.eq
(get_local $1)
;;@ overflow.ts:54:16
(i32.const -32768)
)
)
@ -536,12 +461,10 @@
(unreachable)
)
)
;;@ overflow.ts:56:2
(set_local $1
(i32.shr_s
(i32.shl
(i32.sub
;;@ overflow.ts:56:4
(get_local $1)
(i32.const 1)
)
@ -550,13 +473,10 @@
(i32.const 16)
)
)
;;@ overflow.ts:57:2
(if
(i32.eqz
;;@ overflow.ts:57:9
(i32.eq
(get_local $1)
;;@ overflow.ts:57:16
(i32.const 32767)
)
)
@ -570,14 +490,11 @@
(unreachable)
)
)
;;@ overflow.ts:59:2
(set_local $0
;;@ overflow.ts:59:8
(tee_local $1
(i32.shr_s
(i32.shl
(i32.add
;;@ overflow.ts:59:10
(get_local $1)
(i32.const 1)
)
@ -587,13 +504,10 @@
)
)
)
;;@ overflow.ts:60:2
(if
(i32.eqz
;;@ overflow.ts:60:9
(i32.eq
(get_local $1)
;;@ overflow.ts:60:16
(i32.const -32768)
)
)
@ -607,14 +521,11 @@
(unreachable)
)
)
;;@ overflow.ts:62:2
(set_local $0
;;@ overflow.ts:62:8
(tee_local $1
(i32.shr_s
(i32.shl
(i32.sub
;;@ overflow.ts:62:10
(get_local $1)
(i32.const 1)
)
@ -624,13 +535,10 @@
)
)
)
;;@ overflow.ts:63:2
(if
(i32.eqz
;;@ overflow.ts:63:9
(i32.eq
(get_local $1)
;;@ overflow.ts:63:16
(i32.const 32767)
)
)
@ -644,23 +552,19 @@
(unreachable)
)
)
;;@ overflow.ts:65:2
(if
(i32.eqz
;;@ overflow.ts:65:9
(i32.eq
(i32.shr_s
(i32.shl
(i32.add
(get_local $1)
;;@ overflow.ts:65:15
(i32.const 1)
)
(i32.const 16)
)
(i32.const 16)
)
;;@ overflow.ts:65:20
(i32.const -32768)
)
)
@ -675,16 +579,11 @@
)
)
)
;;@ overflow.ts:69:0
(block
;;@ overflow.ts:70:2
(set_local $0
;;@ overflow.ts:70:16
(i32.const 0)
)
;;@ overflow.ts:71:2
(nop)
;;@ overflow.ts:73:2
(set_local $0
(i32.and
(i32.sub
@ -694,13 +593,10 @@
(i32.const 255)
)
)
;;@ overflow.ts:74:2
(if
(i32.eqz
;;@ overflow.ts:74:9
(i32.eq
(get_local $0)
;;@ overflow.ts:74:16
(i32.const 255)
)
)
@ -714,7 +610,6 @@
(unreachable)
)
)
;;@ overflow.ts:76:2
(set_local $0
(i32.and
(i32.add
@ -724,13 +619,10 @@
(i32.const 255)
)
)
;;@ overflow.ts:77:2
(if
(i32.eqz
;;@ overflow.ts:77:9
(i32.eq
(get_local $0)
;;@ overflow.ts:77:16
(i32.const 0)
)
)
@ -744,9 +636,7 @@
(unreachable)
)
)
;;@ overflow.ts:79:2
(set_local $1
;;@ overflow.ts:79:8
(block (result i32)
(set_local $2
(get_local $0)
@ -763,13 +653,10 @@
(get_local $2)
)
)
;;@ overflow.ts:80:2
(if
(i32.eqz
;;@ overflow.ts:80:9
(i32.eq
(get_local $0)
;;@ overflow.ts:80:16
(i32.const 255)
)
)
@ -783,9 +670,7 @@
(unreachable)
)
)
;;@ overflow.ts:82:2
(set_local $1
;;@ overflow.ts:82:8
(block (result i32)
(set_local $2
(get_local $0)
@ -802,13 +687,10 @@
(get_local $2)
)
)
;;@ overflow.ts:83:2
(if
(i32.eqz
;;@ overflow.ts:83:9
(i32.eq
(get_local $0)
;;@ overflow.ts:83:16
(i32.const 0)
)
)
@ -822,24 +704,19 @@
(unreachable)
)
)
;;@ overflow.ts:85:2
(set_local $0
(i32.and
(i32.sub
;;@ overflow.ts:85:4
(get_local $0)
(i32.const 1)
)
(i32.const 255)
)
)
;;@ overflow.ts:86:2
(if
(i32.eqz
;;@ overflow.ts:86:9
(i32.eq
(get_local $0)
;;@ overflow.ts:86:16
(i32.const 255)
)
)
@ -853,24 +730,19 @@
(unreachable)
)
)
;;@ overflow.ts:88:2
(set_local $0
(i32.and
(i32.add
;;@ overflow.ts:88:4
(get_local $0)
(i32.const 1)
)
(i32.const 255)
)
)
;;@ overflow.ts:89:2
(if
(i32.eqz
;;@ overflow.ts:89:9
(i32.eq
(get_local $0)
;;@ overflow.ts:89:16
(i32.const 0)
)
)
@ -884,13 +756,10 @@
(unreachable)
)
)
;;@ overflow.ts:91:2
(set_local $1
;;@ overflow.ts:91:8
(tee_local $0
(i32.and
(i32.sub
;;@ overflow.ts:91:10
(get_local $0)
(i32.const 1)
)
@ -898,13 +767,10 @@
)
)
)
;;@ overflow.ts:92:2
(if
(i32.eqz
;;@ overflow.ts:92:9
(i32.eq
(get_local $0)
;;@ overflow.ts:92:16
(i32.const 255)
)
)
@ -918,13 +784,10 @@
(unreachable)
)
)
;;@ overflow.ts:94:2
(set_local $1
;;@ overflow.ts:94:8
(tee_local $0
(i32.and
(i32.add
;;@ overflow.ts:94:10
(get_local $0)
(i32.const 1)
)
@ -932,13 +795,10 @@
)
)
)
;;@ overflow.ts:95:2
(if
(i32.eqz
;;@ overflow.ts:95:9
(i32.eq
(get_local $0)
;;@ overflow.ts:95:16
(i32.const 0)
)
)
@ -952,20 +812,16 @@
(unreachable)
)
)
;;@ overflow.ts:97:2
(if
(i32.eqz
;;@ overflow.ts:97:9
(i32.eq
(i32.and
(i32.sub
(get_local $0)
;;@ overflow.ts:97:15
(i32.const 1)
)
(i32.const 255)
)
;;@ overflow.ts:97:20
(i32.const 255)
)
)
@ -980,16 +836,11 @@
)
)
)
;;@ overflow.ts:101:0
(block
;;@ overflow.ts:102:2
(set_local $1
;;@ overflow.ts:102:17
(i32.const 0)
)
;;@ overflow.ts:103:2
(nop)
;;@ overflow.ts:105:2
(set_local $1
(i32.and
(i32.sub
@ -999,13 +850,10 @@
(i32.const 65535)
)
)
;;@ overflow.ts:106:2
(if
(i32.eqz
;;@ overflow.ts:106:9
(i32.eq
(get_local $1)
;;@ overflow.ts:106:16
(i32.const 65535)
)
)
@ -1019,7 +867,6 @@
(unreachable)
)
)
;;@ overflow.ts:108:2
(set_local $1
(i32.and
(i32.add
@ -1029,13 +876,10 @@
(i32.const 65535)
)
)
;;@ overflow.ts:109:2
(if
(i32.eqz
;;@ overflow.ts:109:9
(i32.eq
(get_local $1)
;;@ overflow.ts:109:16
(i32.const 0)
)
)
@ -1049,9 +893,7 @@
(unreachable)
)
)
;;@ overflow.ts:111:2
(set_local $0
;;@ overflow.ts:111:8
(block (result i32)
(set_local $2
(get_local $1)
@ -1068,13 +910,10 @@
(get_local $2)
)
)
;;@ overflow.ts:112:2
(if
(i32.eqz
;;@ overflow.ts:112:9
(i32.eq
(get_local $1)
;;@ overflow.ts:112:16
(i32.const 65535)
)
)
@ -1088,9 +927,7 @@
(unreachable)
)
)
;;@ overflow.ts:114:2
(set_local $0
;;@ overflow.ts:114:8
(block (result i32)
(set_local $2
(get_local $1)
@ -1107,13 +944,10 @@
(get_local $2)
)
)
;;@ overflow.ts:115:2
(if
(i32.eqz
;;@ overflow.ts:115:9
(i32.eq
(get_local $1)
;;@ overflow.ts:115:16
(i32.const 0)
)
)
@ -1127,24 +961,19 @@
(unreachable)
)
)
;;@ overflow.ts:117:2
(set_local $1
(i32.and
(i32.sub
;;@ overflow.ts:117:4
(get_local $1)
(i32.const 1)
)
(i32.const 65535)
)
)
;;@ overflow.ts:118:2
(if
(i32.eqz
;;@ overflow.ts:118:9
(i32.eq
(get_local $1)
;;@ overflow.ts:118:16
(i32.const 65535)
)
)
@ -1158,24 +987,19 @@
(unreachable)
)
)
;;@ overflow.ts:120:2
(set_local $1
(i32.and
(i32.add
;;@ overflow.ts:120:4
(get_local $1)
(i32.const 1)
)
(i32.const 65535)
)
)
;;@ overflow.ts:121:2
(if
(i32.eqz
;;@ overflow.ts:121:9
(i32.eq
(get_local $1)
;;@ overflow.ts:121:16
(i32.const 0)
)
)
@ -1189,13 +1013,10 @@
(unreachable)
)
)
;;@ overflow.ts:123:2
(set_local $0
;;@ overflow.ts:123:8
(tee_local $1
(i32.and
(i32.sub
;;@ overflow.ts:123:10
(get_local $1)
(i32.const 1)
)
@ -1203,13 +1024,10 @@
)
)
)
;;@ overflow.ts:124:2
(if
(i32.eqz
;;@ overflow.ts:124:9
(i32.eq
(get_local $1)
;;@ overflow.ts:124:16
(i32.const 65535)
)
)
@ -1223,13 +1041,10 @@
(unreachable)
)
)
;;@ overflow.ts:126:2
(set_local $0
;;@ overflow.ts:126:8
(tee_local $1
(i32.and
(i32.add
;;@ overflow.ts:126:10
(get_local $1)
(i32.const 1)
)
@ -1237,13 +1052,10 @@
)
)
)
;;@ overflow.ts:127:2
(if
(i32.eqz
;;@ overflow.ts:127:9
(i32.eq
(get_local $1)
;;@ overflow.ts:127:16
(i32.const 0)
)
)
@ -1257,20 +1069,16 @@
(unreachable)
)
)
;;@ overflow.ts:129:2
(if
(i32.eqz
;;@ overflow.ts:129:9
(i32.eq
(i32.and
(i32.sub
(get_local $1)
;;@ overflow.ts:129:15
(i32.const 1)
)
(i32.const 65535)
)
;;@ overflow.ts:129:20
(i32.const 65535)
)
)

View File

@ -9,9 +9,7 @@
(export "memory" (memory $0))
(start $start)
(func $start (; 0 ;) (type $v)
;;@ portable-conversions.ts:6:0
(drop
;;@ portable-conversions.ts:6:3
(i32.shr_s
(i32.shl
(get_global $portable-conversions/i)
@ -20,9 +18,7 @@
(i32.const 24)
)
)
;;@ portable-conversions.ts:7:0
(drop
;;@ portable-conversions.ts:7:3
(i32.shr_s
(i32.shl
(i32.wrap/i64
@ -33,9 +29,7 @@
(i32.const 24)
)
)
;;@ portable-conversions.ts:8:0
(drop
;;@ portable-conversions.ts:8:3
(i32.shr_s
(i32.shl
(i32.trunc_s/f32
@ -46,9 +40,7 @@
(i32.const 24)
)
)
;;@ portable-conversions.ts:9:0
(drop
;;@ portable-conversions.ts:9:3
(i32.shr_s
(i32.shl
(i32.trunc_s/f64
@ -59,9 +51,7 @@
(i32.const 24)
)
)
;;@ portable-conversions.ts:11:0
(drop
;;@ portable-conversions.ts:11:4
(i32.shr_s
(i32.shl
(get_global $portable-conversions/i)
@ -70,9 +60,7 @@
(i32.const 16)
)
)
;;@ portable-conversions.ts:12:0
(drop
;;@ portable-conversions.ts:12:4
(i32.shr_s
(i32.shl
(i32.wrap/i64
@ -83,9 +71,7 @@
(i32.const 16)
)
)
;;@ portable-conversions.ts:13:0
(drop
;;@ portable-conversions.ts:13:4
(i32.shr_s
(i32.shl
(i32.trunc_s/f32
@ -96,9 +82,7 @@
(i32.const 16)
)
)
;;@ portable-conversions.ts:14:0
(drop
;;@ portable-conversions.ts:14:4
(i32.shr_s
(i32.shl
(i32.trunc_s/f64
@ -109,95 +93,67 @@
(i32.const 16)
)
)
;;@ portable-conversions.ts:16:0
(drop
;;@ portable-conversions.ts:16:4
(get_global $portable-conversions/i)
)
;;@ portable-conversions.ts:17:0
(drop
;;@ portable-conversions.ts:17:4
(i32.wrap/i64
(get_global $portable-conversions/I)
)
)
;;@ portable-conversions.ts:18:0
(drop
;;@ portable-conversions.ts:18:4
(i32.trunc_s/f32
(get_global $portable-conversions/f)
)
)
;;@ portable-conversions.ts:19:0
(drop
;;@ portable-conversions.ts:19:4
(i32.trunc_s/f64
(get_global $portable-conversions/F)
)
)
;;@ portable-conversions.ts:21:0
(drop
;;@ portable-conversions.ts:21:4
(i64.extend_s/i32
(get_global $portable-conversions/i)
)
)
;;@ portable-conversions.ts:22:0
(drop
;;@ portable-conversions.ts:22:4
(get_global $portable-conversions/I)
)
;;@ portable-conversions.ts:23:0
(drop
;;@ portable-conversions.ts:23:4
(i64.trunc_s/f32
(get_global $portable-conversions/f)
)
)
;;@ portable-conversions.ts:24:0
(drop
;;@ portable-conversions.ts:24:4
(i64.trunc_s/f64
(get_global $portable-conversions/F)
)
)
;;@ portable-conversions.ts:26:0
(drop
;;@ portable-conversions.ts:26:6
(get_global $portable-conversions/i)
)
;;@ portable-conversions.ts:27:0
(drop
;;@ portable-conversions.ts:27:6
(i32.wrap/i64
(get_global $portable-conversions/I)
)
)
;;@ portable-conversions.ts:28:0
(drop
;;@ portable-conversions.ts:28:6
(i32.trunc_s/f32
(get_global $portable-conversions/f)
)
)
;;@ portable-conversions.ts:29:0
(drop
;;@ portable-conversions.ts:29:6
(i32.trunc_s/f64
(get_global $portable-conversions/F)
)
)
;;@ portable-conversions.ts:31:0
(drop
;;@ portable-conversions.ts:31:3
(i32.and
(get_global $portable-conversions/i)
(i32.const 255)
)
)
;;@ portable-conversions.ts:32:0
(drop
;;@ portable-conversions.ts:32:3
(i32.and
(i32.wrap/i64
(get_global $portable-conversions/I)
@ -205,9 +161,7 @@
(i32.const 255)
)
)
;;@ portable-conversions.ts:33:0
(drop
;;@ portable-conversions.ts:33:3
(i32.and
(i32.trunc_u/f32
(get_global $portable-conversions/f)
@ -215,9 +169,7 @@
(i32.const 255)
)
)
;;@ portable-conversions.ts:34:0
(drop
;;@ portable-conversions.ts:34:3
(i32.and
(i32.trunc_u/f64
(get_global $portable-conversions/F)
@ -225,17 +177,13 @@
(i32.const 255)
)
)
;;@ portable-conversions.ts:36:0
(drop
;;@ portable-conversions.ts:36:4
(i32.and
(get_global $portable-conversions/i)
(i32.const 65535)
)
)
;;@ portable-conversions.ts:37:0
(drop
;;@ portable-conversions.ts:37:4
(i32.and
(i32.wrap/i64
(get_global $portable-conversions/I)
@ -243,9 +191,7 @@
(i32.const 65535)
)
)
;;@ portable-conversions.ts:38:0
(drop
;;@ portable-conversions.ts:38:4
(i32.and
(i32.trunc_u/f32
(get_global $portable-conversions/f)
@ -253,9 +199,7 @@
(i32.const 65535)
)
)
;;@ portable-conversions.ts:39:0
(drop
;;@ portable-conversions.ts:39:4
(i32.and
(i32.trunc_u/f64
(get_global $portable-conversions/F)
@ -263,95 +207,67 @@
(i32.const 65535)
)
)
;;@ portable-conversions.ts:41:0
(drop
;;@ portable-conversions.ts:41:4
(get_global $portable-conversions/i)
)
;;@ portable-conversions.ts:42:0
(drop
;;@ portable-conversions.ts:42:4
(i32.wrap/i64
(get_global $portable-conversions/I)
)
)
;;@ portable-conversions.ts:43:0
(drop
;;@ portable-conversions.ts:43:4
(i32.trunc_u/f32
(get_global $portable-conversions/f)
)
)
;;@ portable-conversions.ts:44:0
(drop
;;@ portable-conversions.ts:44:4
(i32.trunc_u/f64
(get_global $portable-conversions/F)
)
)
;;@ portable-conversions.ts:46:0
(drop
;;@ portable-conversions.ts:46:4
(i64.extend_u/i32
(get_global $portable-conversions/i)
)
)
;;@ portable-conversions.ts:47:0
(drop
;;@ portable-conversions.ts:47:4
(get_global $portable-conversions/I)
)
;;@ portable-conversions.ts:48:0
(drop
;;@ portable-conversions.ts:48:4
(i64.trunc_u/f32
(get_global $portable-conversions/f)
)
)
;;@ portable-conversions.ts:49:0
(drop
;;@ portable-conversions.ts:49:4
(i64.trunc_u/f64
(get_global $portable-conversions/F)
)
)
;;@ portable-conversions.ts:51:0
(drop
;;@ portable-conversions.ts:51:6
(get_global $portable-conversions/i)
)
;;@ portable-conversions.ts:52:0
(drop
;;@ portable-conversions.ts:52:6
(i32.wrap/i64
(get_global $portable-conversions/I)
)
)
;;@ portable-conversions.ts:53:0
(drop
;;@ portable-conversions.ts:53:6
(i32.trunc_u/f32
(get_global $portable-conversions/f)
)
)
;;@ portable-conversions.ts:54:0
(drop
;;@ portable-conversions.ts:54:6
(i32.trunc_u/f64
(get_global $portable-conversions/F)
)
)
;;@ portable-conversions.ts:56:0
(drop
;;@ portable-conversions.ts:56:5
(i32.and
(get_global $portable-conversions/i)
(i32.const 1)
)
)
;;@ portable-conversions.ts:57:0
(drop
;;@ portable-conversions.ts:57:5
(i32.and
(i32.wrap/i64
(get_global $portable-conversions/I)
@ -359,9 +275,7 @@
(i32.const 1)
)
)
;;@ portable-conversions.ts:58:0
(drop
;;@ portable-conversions.ts:58:5
(i32.and
(i32.trunc_u/f32
(get_global $portable-conversions/f)
@ -369,9 +283,7 @@
(i32.const 1)
)
)
;;@ portable-conversions.ts:59:0
(drop
;;@ portable-conversions.ts:59:5
(i32.and
(i32.trunc_u/f64
(get_global $portable-conversions/F)
@ -379,56 +291,40 @@
(i32.const 1)
)
)
;;@ portable-conversions.ts:61:0
(drop
;;@ portable-conversions.ts:61:4
(f32.convert_s/i32
(get_global $portable-conversions/i)
)
)
;;@ portable-conversions.ts:62:0
(drop
;;@ portable-conversions.ts:62:4
(f32.convert_s/i64
(get_global $portable-conversions/I)
)
)
;;@ portable-conversions.ts:63:0
(drop
;;@ portable-conversions.ts:63:4
(get_global $portable-conversions/f)
)
;;@ portable-conversions.ts:64:0
(drop
;;@ portable-conversions.ts:64:4
(f32.demote/f64
(get_global $portable-conversions/F)
)
)
;;@ portable-conversions.ts:66:0
(drop
;;@ portable-conversions.ts:66:4
(f64.convert_s/i32
(get_global $portable-conversions/i)
)
)
;;@ portable-conversions.ts:67:0
(drop
;;@ portable-conversions.ts:67:4
(f64.convert_s/i64
(get_global $portable-conversions/I)
)
)
;;@ portable-conversions.ts:68:0
(drop
;;@ portable-conversions.ts:68:4
(f64.promote/f32
(get_global $portable-conversions/f)
)
)
;;@ portable-conversions.ts:69:0
(drop
;;@ portable-conversions.ts:69:4
(get_global $portable-conversions/F)
)
)

View File

@ -5,37 +5,26 @@
(export "fib" (func $recursive/fib))
(export "memory" (memory $0))
(func $recursive/fib (; 0 ;) (type $ii) (param $0 i32) (result i32)
;;@ recursive.ts:2:2
(if
;;@ recursive.ts:2:6
(i32.le_s
(get_local $0)
;;@ recursive.ts:2:11
(i32.const 1)
)
;;@ recursive.ts:2:21
(return
(i32.const 1)
)
)
;;@ recursive.ts:3:31
(return
;;@ recursive.ts:3:9
(i32.add
(call $recursive/fib
;;@ recursive.ts:3:13
(i32.sub
(get_local $0)
;;@ recursive.ts:3:17
(i32.const 1)
)
)
;;@ recursive.ts:3:22
(call $recursive/fib
;;@ recursive.ts:3:26
(i32.sub
(get_local $0)
;;@ recursive.ts:3:30
(i32.const 2)
)
)

View File

@ -19,34 +19,25 @@
(export "memory" (memory $0))
(start $start)
(func $export/add (; 0 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
;;@ export.ts:2:13
(return
;;@ export.ts:2:9
(i32.add
(get_local $0)
;;@ export.ts:2:13
(get_local $1)
)
)
)
(func $export/sub (; 1 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
;;@ export.ts:6:13
(return
;;@ export.ts:6:9
(i32.sub
(get_local $0)
;;@ export.ts:6:13
(get_local $1)
)
)
)
(func $export/mul (; 2 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
;;@ export.ts:12:13
(return
;;@ export.ts:12:9
(i32.mul
(get_local $0)
;;@ export.ts:12:13
(get_local $1)
)
)
@ -54,20 +45,14 @@
(func $export/ns.two (; 3 ;) (type $v)
)
(func $start (; 4 ;) (type $v)
;;@ reexport.ts:24:0
(drop
(i32.add
(call $export/add
;;@ reexport.ts:24:13
(i32.const 1)
;;@ reexport.ts:24:16
(i32.const 2)
)
;;@ reexport.ts:24:21
(call $export/mul
;;@ reexport.ts:24:34
(i32.const 3)
;;@ reexport.ts:24:37
(i32.const 4)
)
)

View File

@ -10,21 +10,14 @@
(start $start)
(func $scoped/fn (; 0 ;) (type $iv) (param $0 i32)
(local $1 i32)
;;@ scoped.ts:18:2
(block
;;@ scoped.ts:19:4
(set_local $1
;;@ scoped.ts:19:18
(i32.const 0)
)
)
;;@ scoped.ts:21:2
(block
;;@ scoped.ts:22:4
(nop)
;;@ scoped.ts:23:4
(set_local $1
;;@ scoped.ts:23:8
(get_local $0)
)
)
@ -34,28 +27,20 @@
(local $1 i32)
(local $2 i64)
(local $3 f32)
;;@ scoped.ts:5:0
(block $break|0
;;@ scoped.ts:5:5
(set_local $0
;;@ scoped.ts:5:42
(i32.const 0)
)
(loop $continue|0
(if
;;@ scoped.ts:5:45
(i32.lt_s
(get_local $0)
;;@ scoped.ts:5:73
(i32.const 1)
)
(block
;;@ scoped.ts:5:104
(nop)
;;@ scoped.ts:5:76
(set_local $0
(i32.add
;;@ scoped.ts:5:78
(get_local $0)
(i32.const 1)
)
@ -65,30 +50,22 @@
)
)
)
;;@ scoped.ts:6:0
(block $break|1
;;@ scoped.ts:6:5
(set_local $1
;;@ scoped.ts:6:43
(i32.const 0)
)
(loop $continue|1
(if
;;@ scoped.ts:6:46
(i32.lt_s
(get_local $1)
;;@ scoped.ts:6:56
(i32.const 1)
)
(block
;;@ scoped.ts:7:2
(drop
(get_local $1)
)
;;@ scoped.ts:6:59
(set_local $1
(i32.add
;;@ scoped.ts:6:61
(get_local $1)
(i32.const 1)
)
@ -98,25 +75,17 @@
)
)
)
;;@ scoped.ts:9:0
(block
;;@ scoped.ts:10:2
(set_local $2
;;@ scoped.ts:10:42
(i64.const 5)
)
;;@ scoped.ts:11:2
(block
;;@ scoped.ts:12:4
(set_local $3
;;@ scoped.ts:12:41
(f32.const 10)
)
)
)
;;@ scoped.ts:26:0
(call $scoped/fn
;;@ scoped.ts:26:3
(i32.const 42)
)
)

View File

@ -11,28 +11,19 @@
(export "memory" (memory $0))
(start $start)
(func "$(lib)/array/CArray#__get" (; 1 ;) (type $iii) (param $0 i32) (param $1 i32) (result i32)
;;@ (lib)/array.ts:173:4
(if
;;@ (lib)/array.ts:173:8
(i32.lt_s
(get_local $1)
;;@ (lib)/array.ts:173:16
(i32.const 0)
)
;;@ (lib)/array.ts:174:6
(unreachable)
)
;;@ (lib)/array.ts:175:71
(return
;;@ (lib)/array.ts:175:11
(i32.load
;;@ (lib)/array.ts:175:19
(i32.add
(get_local $0)
;;@ (lib)/array.ts:175:45
(i32.mul
(get_local $1)
;;@ (lib)/array.ts:175:60
(i32.const 4)
)
)
@ -40,49 +31,35 @@
)
)
(func "$(lib)/array/CArray#__set" (; 2 ;) (type $iiiv) (param $0 i32) (param $1 i32) (param $2 i32)
;;@ (lib)/array.ts:180:4
(if
;;@ (lib)/array.ts:180:8
(i32.lt_s
(get_local $1)
;;@ (lib)/array.ts:180:16
(i32.const 0)
)
;;@ (lib)/array.ts:181:6
(unreachable)
)
;;@ (lib)/array.ts:182:4
(i32.store
;;@ (lib)/array.ts:182:13
(i32.add
(get_local $0)
;;@ (lib)/array.ts:182:39
(i32.mul
(get_local $1)
;;@ (lib)/array.ts:182:54
(i32.const 4)
)
)
;;@ (lib)/array.ts:182:67
(get_local $2)
)
)
(func $start (; 3 ;) (type $v)
(local $0 i32)
(set_global $std/carray/arr
;;@ std/carray.ts:6:23
(get_global $HEAP_BASE)
)
;;@ std/carray.ts:8:0
(if
(i32.eqz
;;@ std/carray.ts:8:7
(i32.eq
(i32.load
;;@ std/carray.ts:8:17
(get_global $HEAP_BASE)
)
;;@ std/carray.ts:8:31
(i32.const 0)
)
)
@ -96,20 +73,15 @@
(unreachable)
)
)
;;@ std/carray.ts:9:0
(if
(i32.eqz
;;@ std/carray.ts:9:7
(i32.eq
(i32.load
;;@ std/carray.ts:9:17
(i32.add
(get_global $HEAP_BASE)
;;@ std/carray.ts:9:29
(i32.const 4)
)
)
;;@ std/carray.ts:9:35
(i32.const 0)
)
)
@ -123,17 +95,13 @@
(unreachable)
)
)
;;@ std/carray.ts:11:0
(if
(i32.eqz
;;@ std/carray.ts:11:7
(i32.eq
(call "$(lib)/array/CArray#__get"
(get_global $std/carray/arr)
;;@ std/carray.ts:11:11
(i32.const 0)
)
;;@ std/carray.ts:11:17
(i32.const 0)
)
)
@ -147,17 +115,13 @@
(unreachable)
)
)
;;@ std/carray.ts:12:0
(if
(i32.eqz
;;@ std/carray.ts:12:7
(i32.eq
(call "$(lib)/array/CArray#__get"
(get_global $std/carray/arr)
;;@ std/carray.ts:12:11
(i32.const 1)
)
;;@ std/carray.ts:12:17
(i32.const 0)
)
)
@ -171,32 +135,22 @@
(unreachable)
)
)
;;@ std/carray.ts:14:0
(call "$(lib)/array/CArray#__set"
(get_global $std/carray/arr)
;;@ std/carray.ts:14:4
(i32.const 0)
;;@ std/carray.ts:14:9
(i32.const 42)
)
;;@ std/carray.ts:15:0
(call "$(lib)/array/CArray#__set"
(get_global $std/carray/arr)
;;@ std/carray.ts:15:4
(i32.const 1)
;;@ std/carray.ts:15:9
(i32.const 24)
)
;;@ std/carray.ts:17:0
(if
(i32.eqz
;;@ std/carray.ts:17:7
(i32.eq
(i32.load
;;@ std/carray.ts:17:17
(get_global $HEAP_BASE)
)
;;@ std/carray.ts:17:31
(i32.const 42)
)
)
@ -210,20 +164,15 @@
(unreachable)
)
)
;;@ std/carray.ts:18:0
(if
(i32.eqz
;;@ std/carray.ts:18:7
(i32.eq
(i32.load
;;@ std/carray.ts:18:17
(i32.add
(get_global $HEAP_BASE)
;;@ std/carray.ts:18:29
(i32.const 4)
)
)
;;@ std/carray.ts:18:35
(i32.const 24)
)
)
@ -237,17 +186,13 @@
(unreachable)
)
)
;;@ std/carray.ts:20:0
(if
(i32.eqz
;;@ std/carray.ts:20:7
(i32.eq
(call "$(lib)/array/CArray#__get"
(get_global $std/carray/arr)
;;@ std/carray.ts:20:11
(i32.const 0)
)
;;@ std/carray.ts:20:17
(i32.const 42)
)
)
@ -261,17 +206,13 @@
(unreachable)
)
)
;;@ std/carray.ts:21:0
(if
(i32.eqz
;;@ std/carray.ts:21:7
(i32.eq
(call "$(lib)/array/CArray#__get"
(get_global $std/carray/arr)
;;@ std/carray.ts:21:11
(i32.const 1)
)
;;@ std/carray.ts:21:17
(i32.const 24)
)
)
@ -285,25 +226,19 @@
(unreachable)
)
)
;;@ std/carray.ts:23:0
(if
(i32.eqz
;;@ std/carray.ts:23:7
(i32.eq
(block (result i32)
(call "$(lib)/array/CArray#__set"
;;@ std/carray.ts:23:8
(get_global $std/carray/arr)
;;@ std/carray.ts:23:12
(i32.const 3)
(tee_local $0
;;@ std/carray.ts:23:17
(i32.const 9000)
)
)
(get_local $0)
)
;;@ std/carray.ts:23:26
(i32.const 9000)
)
)
@ -317,20 +252,15 @@
(unreachable)
)
)
;;@ std/carray.ts:25:0
(if
(i32.eqz
;;@ std/carray.ts:25:7
(i32.eq
(i32.load
;;@ std/carray.ts:25:17
(i32.add
(get_global $HEAP_BASE)
;;@ std/carray.ts:25:29
(i32.const 12)
)
)
;;@ std/carray.ts:25:36
(i32.const 9000)
)
)
@ -344,17 +274,13 @@
(unreachable)
)
)
;;@ std/carray.ts:26:0
(if
(i32.eqz
;;@ std/carray.ts:26:7
(i32.eq
(call "$(lib)/array/CArray#__get"
(get_global $std/carray/arr)
;;@ std/carray.ts:26:11
(i32.const 3)
)
;;@ std/carray.ts:26:17
(i32.const 9000)
)
)

View File

@ -18,106 +18,74 @@
(local $3 i32)
(local $4 i32)
(local $5 i32)
;;@ (lib)/allocator/arena.ts:15:2
(if
;;@ (lib)/allocator/arena.ts:15:6
(i32.eqz
;;@ (lib)/allocator/arena.ts:15:7
(get_local $0)
)
;;@ (lib)/allocator/arena.ts:15:20
(return
(i32.const 0)
)
)
;;@ (lib)/allocator/arena.ts:16:2
(set_local $1
;;@ (lib)/allocator/arena.ts:16:12
(get_global "$(lib)/allocator/arena/HEAP_OFFSET")
)
;;@ (lib)/allocator/arena.ts:17:2
(set_local $2
;;@ (lib)/allocator/arena.ts:17:12
(i32.and
(i32.add
;;@ (lib)/allocator/arena.ts:17:13
(i32.add
(get_local $1)
;;@ (lib)/allocator/arena.ts:17:19
(get_local $0)
)
;;@ (lib)/allocator/arena.ts:17:26
(i32.const 7)
)
;;@ (lib)/allocator/arena.ts:17:40
(i32.xor
;;@ (lib)/allocator/arena.ts:17:41
(i32.const 7)
(i32.const -1)
)
)
)
;;@ (lib)/allocator/arena.ts:18:2
(set_local $3
;;@ (lib)/allocator/arena.ts:18:14
(i32.shl
(current_memory)
;;@ (lib)/allocator/arena.ts:18:41
(i32.const 16)
)
)
;;@ (lib)/allocator/arena.ts:19:2
(if
;;@ (lib)/allocator/arena.ts:19:6
(i32.and
(if (result i32)
(i32.ne
(tee_local $4
(i32.gt_u
(get_local $2)
;;@ (lib)/allocator/arena.ts:19:12
(get_local $3)
)
)
(i32.const 0)
)
;;@ (lib)/allocator/arena.ts:19:21
(i32.lt_s
(grow_memory
;;@ (lib)/allocator/arena.ts:20:4
(select
(tee_local $4
;;@ (lib)/allocator/arena.ts:21:6
(i32.shr_u
(i32.sub
;;@ (lib)/allocator/arena.ts:21:7
(i32.and
;;@ (lib)/allocator/arena.ts:21:8
(i32.add
;;@ (lib)/allocator/arena.ts:21:9
(get_local $2)
;;@ (lib)/allocator/arena.ts:21:15
(i32.const 65535)
)
;;@ (lib)/allocator/arena.ts:21:25
(i32.xor
;;@ (lib)/allocator/arena.ts:21:26
(i32.const 65535)
(i32.const -1)
)
)
;;@ (lib)/allocator/arena.ts:21:36
(get_local $3)
)
;;@ (lib)/allocator/arena.ts:21:46
(i32.const 16)
)
)
(tee_local $5
;;@ (lib)/allocator/arena.ts:22:6
(i32.shr_u
(get_local $3)
;;@ (lib)/allocator/arena.ts:22:46
(i32.const 16)
)
)
@ -127,53 +95,42 @@
)
)
)
;;@ (lib)/allocator/arena.ts:24:6
(i32.const 0)
)
(get_local $4)
)
(i32.const 1)
)
;;@ (lib)/allocator/arena.ts:24:9
(unreachable)
)
;;@ (lib)/allocator/arena.ts:25:2
(set_global "$(lib)/allocator/arena/HEAP_OFFSET"
;;@ (lib)/allocator/arena.ts:25:16
(get_local $2)
)
;;@ (lib)/allocator/arena.ts:26:9
(return
(get_local $1)
)
)
(func $std/new/AClass#constructor (; 1 ;) (type $ifv) (param $0 i32) (param $1 f32)
;;@ std/new.ts:8:4
(i32.store
(get_local $0)
(i32.add
(i32.load
(get_local $0)
)
;;@ std/new.ts:8:19
(i32.const 1)
)
)
;;@ std/new.ts:9:4
(f32.store offset=4
(get_local $0)
;;@ std/new.ts:9:24
(get_local $1)
)
)
(func $start (; 2 ;) (type $v)
(local $0 i32)
(set_global "$(lib)/allocator/arena/HEAP_OFFSET"
;;@ (lib)/allocator/arena.ts:11:25
(get_global $HEAP_BASE)
)
(set_global $std/new/aClass
;;@ std/new.ts:13:13
(block (result i32)
(set_local $0
(call "$(lib)/allocator/arena/allocate_memory"
@ -182,17 +139,14 @@
)
(i32.store
(get_local $0)
;;@ std/new.ts:5:16
(i32.const 1)
)
(f32.store offset=4
(get_local $0)
;;@ std/new.ts:6:22
(f32.const 2)
)
(call $std/new/AClass#constructor
(get_local $0)
;;@ std/new.ts:13:24
(f32.const 3)
)
(get_local $0)

View File

@ -8,7 +8,6 @@
(export "memory" (memory $0))
(func $switch/doSwitch (; 0 ;) (type $ii) (param $0 i32) (result i32)
(local $1 i32)
;;@ switch.ts:2:2
(block $break|0
(block $case4|0
(block $case3|0
@ -16,52 +15,44 @@
(block $case1|0
(block $case0|0
(set_local $1
;;@ switch.ts:2:10
(get_local $0)
)
(br_if $case0|0
(i32.eq
(get_local $1)
;;@ switch.ts:3:9
(i32.const 1)
)
)
(br_if $case1|0
(i32.eq
(get_local $1)
;;@ switch.ts:5:9
(i32.const 0)
)
)
(br_if $case3|0
(i32.eq
(get_local $1)
;;@ switch.ts:8:9
(i32.const 2)
)
)
(br_if $case4|0
(i32.eq
(get_local $1)
;;@ switch.ts:9:9
(i32.const 3)
)
)
(br $case2|0)
)
;;@ switch.ts:4:13
(return
(i32.const 1)
)
)
)
;;@ switch.ts:7:13
(return
(i32.const 0)
)
)
)
;;@ switch.ts:10:13
(return
(i32.const 23)
)
@ -69,51 +60,43 @@
)
(func $switch/doSwitchDefaultFirst (; 1 ;) (type $ii) (param $0 i32) (result i32)
(local $1 i32)
;;@ switch.ts:15:2
(block $break|0
(block $case3|0
(block $case2|0
(block $case1|0
(block $case0|0
(set_local $1
;;@ switch.ts:15:10
(get_local $0)
)
(br_if $case1|0
(i32.eq
(get_local $1)
;;@ switch.ts:18:9
(i32.const 1)
)
)
(br_if $case2|0
(i32.eq
(get_local $1)
;;@ switch.ts:20:9
(i32.const 2)
)
)
(br_if $case3|0
(i32.eq
(get_local $1)
;;@ switch.ts:21:9
(i32.const 3)
)
)
(br $case0|0)
)
;;@ switch.ts:17:13
(return
(i32.const 0)
)
)
;;@ switch.ts:19:13
(return
(i32.const 1)
)
)
)
;;@ switch.ts:22:13
(return
(i32.const 23)
)
@ -121,50 +104,42 @@
)
(func $switch/doSwitchDefaultOmitted (; 2 ;) (type $ii) (param $0 i32) (result i32)
(local $1 i32)
;;@ switch.ts:27:2
(block $break|0
(block $case2|0
(block $case1|0
(block $case0|0
(set_local $1
;;@ switch.ts:27:10
(get_local $0)
)
(br_if $case0|0
(i32.eq
(get_local $1)
;;@ switch.ts:28:9
(i32.const 1)
)
)
(br_if $case1|0
(i32.eq
(get_local $1)
;;@ switch.ts:30:9
(i32.const 2)
)
)
(br_if $case2|0
(i32.eq
(get_local $1)
;;@ switch.ts:31:9
(i32.const 3)
)
)
(br $break|0)
)
;;@ switch.ts:29:13
(return
(i32.const 1)
)
)
)
;;@ switch.ts:32:13
(return
(i32.const 23)
)
)
;;@ switch.ts:34:9
(return
(i32.const 0)
)

View File

@ -6,80 +6,53 @@
(export "memory" (memory $0))
(start $start)
(func $start (; 0 ;) (type $v)
;;@ ternary.ts:1:0
(if
(i32.const 0)
;;@ ternary.ts:1:4
(unreachable)
;;@ ternary.ts:1:20
(drop
(i32.const 1)
)
)
;;@ ternary.ts:2:0
(if
(i32.const 1)
;;@ ternary.ts:2:4
(drop
(i32.const 1)
)
;;@ ternary.ts:2:8
(unreachable)
)
;;@ ternary.ts:3:0
(if
(if (result i32)
;;@ ternary.ts:3:1
(i32.const 0)
;;@ ternary.ts:3:5
(unreachable)
;;@ ternary.ts:3:21
(i32.const 1)
)
;;@ ternary.ts:3:26
(drop
(i32.const 1)
)
;;@ ternary.ts:3:30
(unreachable)
)
;;@ ternary.ts:7:0
(set_global $ternary/a
;;@ ternary.ts:7:4
(if (result i32)
(i32.const 0)
;;@ ternary.ts:7:8
(unreachable)
;;@ ternary.ts:7:24
(i32.const 1)
)
)
;;@ ternary.ts:8:0
(set_global $ternary/a
;;@ ternary.ts:8:4
(if (result i32)
(i32.const 1)
;;@ ternary.ts:8:8
(i32.const 1)
;;@ ternary.ts:8:12
(unreachable)
)
)
;;@ ternary.ts:9:0
(set_global $ternary/a
;;@ ternary.ts:9:4
(if (result i32)
(if (result i32)
;;@ ternary.ts:9:5
(i32.const 0)
;;@ ternary.ts:9:9
(unreachable)
;;@ ternary.ts:9:25
(i32.const 1)
)
;;@ ternary.ts:9:30
(i32.const 1)
;;@ ternary.ts:9:34
(unreachable)
)
)

View File

@ -37,22 +37,15 @@
(export "memory" (memory $0))
(start $start)
(func $tlsf/fls (; 1 ;) (type $ii) (param $0 i32) (result i32)
;;@ tlsf.ts:7:39
(return
;;@ tlsf.ts:7:9
(if (result i32)
(i32.eqz
;;@ tlsf.ts:7:10
(get_local $0)
)
;;@ tlsf.ts:7:17
(i32.const -1)
;;@ tlsf.ts:7:21
(i32.sub
(i32.const 31)
;;@ tlsf.ts:7:26
(i32.clz
;;@ tlsf.ts:7:35
(get_local $0)
)
)
@ -60,71 +53,50 @@
)
)
(func $tlsf/ffs (; 2 ;) (type $ii) (param $0 i32) (result i32)
;;@ tlsf.ts:17:35
(return
;;@ tlsf.ts:17:9
(if (result i32)
(i32.eqz
;;@ tlsf.ts:17:10
(get_local $0)
)
;;@ tlsf.ts:17:17
(i32.const -1)
;;@ tlsf.ts:17:22
(i32.ctz
;;@ tlsf.ts:17:31
(get_local $0)
)
)
)
)
(func $tlsf/block$set_next_free (; 3 ;) (type $iiv) (param $0 i32) (param $1 i32)
;;@ tlsf.ts:89:2
(i32.store
;;@ tlsf.ts:89:15
(i32.add
(get_local $0)
;;@ tlsf.ts:89:23
(i32.const 8)
)
;;@ tlsf.ts:89:47
(get_local $1)
)
)
(func $tlsf/block$set_prev_free (; 4 ;) (type $iiv) (param $0 i32) (param $1 i32)
;;@ tlsf.ts:97:2
(i32.store
;;@ tlsf.ts:97:15
(i32.add
(get_local $0)
;;@ tlsf.ts:97:23
(i32.const 12)
)
;;@ tlsf.ts:97:47
(get_local $1)
)
)
(func $tlsf/control$set_fl_bitmap (; 5 ;) (type $iiv) (param $0 i32) (param $1 i32)
;;@ tlsf.ts:153:2
(i32.store
;;@ tlsf.ts:153:13
(i32.add
(get_local $0)
;;@ tlsf.ts:153:19
(i32.const 16)
)
;;@ tlsf.ts:153:45
(get_local $1)
)
)
(func $tlsf/control$set_sl_bitmap (; 6 ;) (type $iiiv) (param $0 i32) (param $1 i32) (param $2 i32)
;;@ tlsf.ts:162:2
(if
(i32.eqz
;;@ tlsf.ts:162:9
(i32.lt_u
(get_local $1)
;;@ tlsf.ts:162:19
(i32.const 23)
)
)
@ -138,34 +110,25 @@
(unreachable)
)
)
;;@ tlsf.ts:163:2
(i32.store
;;@ tlsf.ts:163:13
(i32.add
(i32.add
(get_local $0)
;;@ tlsf.ts:163:19
(i32.const 20)
)
;;@ tlsf.ts:163:46
(i32.mul
(get_local $1)
;;@ tlsf.ts:163:56
(i32.const 4)
)
)
;;@ tlsf.ts:163:71
(get_local $2)
)
)
(func $tlsf/control$set_block (; 7 ;) (type $iiiiv) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
;;@ tlsf.ts:173:2
(if
(i32.eqz
;;@ tlsf.ts:173:9
(i32.lt_u
(get_local $1)
;;@ tlsf.ts:173:19
(i32.const 23)
)
)
@ -179,13 +142,10 @@
(unreachable)
)
)
;;@ tlsf.ts:174:2
(if
(i32.eqz
;;@ tlsf.ts:174:9
(i32.lt_u
(get_local $2)
;;@ tlsf.ts:174:19
(i32.const 32)
)
)
@ -199,116 +159,77 @@
(unreachable)
)
)
;;@ tlsf.ts:175:2
(i32.store
;;@ tlsf.ts:175:15
(i32.add
(i32.add
(get_local $0)
;;@ tlsf.ts:175:21
(i32.const 112)
)
;;@ tlsf.ts:175:45
(i32.mul
(i32.add
;;@ tlsf.ts:175:46
(i32.mul
(get_local $1)
;;@ tlsf.ts:175:56
(i32.const 32)
)
;;@ tlsf.ts:175:73
(get_local $2)
)
;;@ tlsf.ts:175:84
(i32.const 4)
)
)
;;@ tlsf.ts:175:101
(get_local $3)
)
)
(func $tlsf/control$construct (; 8 ;) (type $iv) (param $0 i32)
(local $1 i32)
(local $2 i32)
;;@ tlsf.ts:180:2
(call $tlsf/block$set_next_free
;;@ tlsf.ts:180:22
(get_local $0)
;;@ tlsf.ts:180:27
(get_local $0)
)
;;@ tlsf.ts:181:2
(call $tlsf/block$set_prev_free
;;@ tlsf.ts:181:22
(get_local $0)
;;@ tlsf.ts:181:27
(get_local $0)
)
;;@ tlsf.ts:182:2
(call $tlsf/control$set_fl_bitmap
;;@ tlsf.ts:182:24
(get_local $0)
;;@ tlsf.ts:182:29
(i32.const 0)
)
;;@ tlsf.ts:183:2
(block $break|0
;;@ tlsf.ts:183:7
(set_local $1
;;@ tlsf.ts:183:28
(i32.const 0)
)
(loop $continue|0
(if
;;@ tlsf.ts:183:31
(i32.lt_u
(get_local $1)
;;@ tlsf.ts:183:41
(i32.const 23)
)
(block
(block
;;@ tlsf.ts:184:4
(call $tlsf/control$set_sl_bitmap
;;@ tlsf.ts:184:26
(get_local $0)
;;@ tlsf.ts:184:31
(get_local $1)
;;@ tlsf.ts:184:40
(i32.const 0)
)
;;@ tlsf.ts:185:4
(block $break|1
;;@ tlsf.ts:185:9
(set_local $2
;;@ tlsf.ts:185:30
(i32.const 0)
)
(loop $continue|1
(if
;;@ tlsf.ts:185:33
(i32.lt_u
(get_local $2)
;;@ tlsf.ts:185:43
(i32.const 32)
)
(block
;;@ tlsf.ts:186:6
(call $tlsf/control$set_block
;;@ tlsf.ts:186:24
(get_local $0)
;;@ tlsf.ts:186:29
(get_local $1)
;;@ tlsf.ts:186:38
(get_local $2)
;;@ tlsf.ts:186:47
(get_local $0)
)
;;@ tlsf.ts:185:59
(set_local $2
(i32.add
;;@ tlsf.ts:185:61
(get_local $2)
(i32.const 1)
)
@ -319,10 +240,8 @@
)
)
)
;;@ tlsf.ts:183:57
(set_local $1
(i32.add
;;@ tlsf.ts:183:59
(get_local $1)
(i32.const 1)
)
@ -334,16 +253,12 @@
)
)
(func $start (; 9 ;) (type $v)
;;@ tlsf.ts:10:0
(if
(i32.eqz
;;@ tlsf.ts:10:7
(i32.eq
(call $tlsf/fls
;;@ tlsf.ts:10:11
(i32.const 0)
)
;;@ tlsf.ts:10:17
(i32.const -1)
)
)
@ -357,16 +272,12 @@
(unreachable)
)
)
;;@ tlsf.ts:11:0
(if
(i32.eqz
;;@ tlsf.ts:11:7
(i32.eq
(call $tlsf/fls
;;@ tlsf.ts:11:11
(i32.const 1)
)
;;@ tlsf.ts:11:17
(i32.const 0)
)
)
@ -380,16 +291,12 @@
(unreachable)
)
)
;;@ tlsf.ts:12:0
(if
(i32.eqz
;;@ tlsf.ts:12:7
(i32.eq
(call $tlsf/fls
;;@ tlsf.ts:12:11
(i32.const -2147483640)
)
;;@ tlsf.ts:12:26
(i32.const 31)
)
)
@ -403,16 +310,12 @@
(unreachable)
)
)
;;@ tlsf.ts:13:0
(if
(i32.eqz
;;@ tlsf.ts:13:7
(i32.eq
(call $tlsf/fls
;;@ tlsf.ts:13:11
(i32.const 2147483647)
)
;;@ tlsf.ts:13:26
(i32.const 30)
)
)
@ -426,16 +329,12 @@
(unreachable)
)
)
;;@ tlsf.ts:20:0
(if
(i32.eqz
;;@ tlsf.ts:20:7
(i32.eq
(call $tlsf/ffs
;;@ tlsf.ts:20:11
(i32.const 0)
)
;;@ tlsf.ts:20:17
(i32.const -1)
)
)
@ -449,16 +348,12 @@
(unreachable)
)
)
;;@ tlsf.ts:21:0
(if
(i32.eqz
;;@ tlsf.ts:21:7
(i32.eq
(call $tlsf/ffs
;;@ tlsf.ts:21:11
(i32.const 1)
)
;;@ tlsf.ts:21:17
(i32.const 0)
)
)
@ -472,16 +367,12 @@
(unreachable)
)
)
;;@ tlsf.ts:22:0
(if
(i32.eqz
;;@ tlsf.ts:22:7
(i32.eq
(call $tlsf/ffs
;;@ tlsf.ts:22:11
(i32.const -2147483648)
)
;;@ tlsf.ts:22:26
(i32.const 31)
)
)
@ -495,13 +386,10 @@
(unreachable)
)
)
;;@ tlsf.ts:29:0
(if
(i32.eqz
;;@ tlsf.ts:29:7
(i32.eq
(i32.const 8)
;;@ tlsf.ts:29:21
(i32.const 8)
)
)
@ -515,11 +403,8 @@
(unreachable)
)
)
;;@ tlsf.ts:190:0
(call $tlsf/control$construct
;;@ tlsf.ts:190:18
(i32.load
;;@ tlsf.ts:190:30
(i32.const 4)
)
)

View File

@ -7,7 +7,6 @@
(export "memory" (memory $0))
(start $start)
(func $typealias/alias (; 0 ;) (type $ii) (param $0 i32) (result i32)
;;@ typealias.ts:4:9
(return
(get_local $0)
)

View File

@ -13,170 +13,120 @@
(local $1 i64)
(local $2 f32)
(local $3 f64)
;;@ unary.ts:1:0
(drop
;;@ unary.ts:1:1
(i32.const 1)
)
;;@ unary.ts:2:0
(drop
(i32.const -1)
)
;;@ unary.ts:3:0
(drop
(i32.eqz
;;@ unary.ts:3:1
(i32.const 1)
)
)
;;@ unary.ts:4:0
(drop
(i32.xor
;;@ unary.ts:4:1
(i32.const 1)
(i32.const -1)
)
)
;;@ unary.ts:5:0
(drop
;;@ unary.ts:5:1
(f64.const 1.25)
)
;;@ unary.ts:6:0
(drop
(f64.const -1.25)
)
;;@ unary.ts:7:0
(drop
(f64.eq
;;@ unary.ts:7:1
(f64.const 1.25)
(f64.const 0)
)
)
;;@ unary.ts:11:0
(drop
;;@ unary.ts:11:1
(get_global $unary/i)
)
;;@ unary.ts:12:0
(drop
(i32.sub
(i32.const 0)
;;@ unary.ts:12:1
(get_global $unary/i)
)
)
;;@ unary.ts:13:0
(drop
(i32.eqz
;;@ unary.ts:13:1
(get_global $unary/i)
)
)
;;@ unary.ts:14:0
(drop
(i32.xor
;;@ unary.ts:14:1
(get_global $unary/i)
(i32.const -1)
)
)
;;@ unary.ts:15:0
(set_global $unary/i
(i32.add
;;@ unary.ts:15:2
(get_global $unary/i)
(i32.const 1)
)
)
;;@ unary.ts:16:0
(set_global $unary/i
(i32.sub
;;@ unary.ts:16:2
(get_global $unary/i)
(i32.const 1)
)
)
;;@ unary.ts:17:0
(set_global $unary/i
(i32.add
(get_global $unary/i)
(i32.const 1)
)
)
;;@ unary.ts:18:0
(set_global $unary/i
(i32.sub
(get_global $unary/i)
(i32.const 1)
)
)
;;@ unary.ts:20:0
(set_global $unary/i
;;@ unary.ts:20:4
(i32.add
(get_global $unary/i)
(i32.const 1)
)
)
(set_global $unary/i
(i32.sub
(get_global $unary/i)
(i32.const 1)
)
)
(set_global $unary/i
(i32.const 1)
)
;;@ unary.ts:21:0
(set_global $unary/i
;;@ unary.ts:21:4
(i32.const -1)
)
;;@ unary.ts:22:0
(set_global $unary/i
;;@ unary.ts:22:4
(i32.eqz
;;@ unary.ts:22:5
(i32.const 1)
)
)
;;@ unary.ts:23:0
(set_global $unary/i
;;@ unary.ts:23:4
(i32.xor
;;@ unary.ts:23:5
(i32.const 1)
(i32.const -1)
)
)
;;@ unary.ts:24:0
(set_global $unary/i
;;@ unary.ts:24:4
(get_global $unary/i)
)
;;@ unary.ts:25:0
(set_global $unary/i
;;@ unary.ts:25:4
(i32.sub
(i32.const 0)
;;@ unary.ts:25:5
(get_global $unary/i)
)
)
;;@ unary.ts:26:0
(set_global $unary/i
;;@ unary.ts:26:4
(i32.eqz
;;@ unary.ts:26:5
(get_global $unary/i)
)
)
;;@ unary.ts:27:0
(set_global $unary/i
;;@ unary.ts:27:4
(i32.xor
;;@ unary.ts:27:5
(get_global $unary/i)
(i32.const -1)
)
)
;;@ unary.ts:28:0
(set_global $unary/i
;;@ unary.ts:28:4
(block (result i32)
(set_global $unary/i
(i32.add
;;@ unary.ts:28:6
(get_global $unary/i)
(i32.const 1)
)
@ -184,13 +134,10 @@
(get_global $unary/i)
)
)
;;@ unary.ts:29:0
(set_global $unary/i
;;@ unary.ts:29:4
(block (result i32)
(set_global $unary/i
(i32.sub
;;@ unary.ts:29:6
(get_global $unary/i)
(i32.const 1)
)
@ -198,9 +145,7 @@
(get_global $unary/i)
)
)
;;@ unary.ts:30:0
(set_global $unary/i
;;@ unary.ts:30:4
(block (result i32)
(set_local $0
(get_global $unary/i)
@ -214,9 +159,7 @@
(get_local $0)
)
)
;;@ unary.ts:31:0
(set_global $unary/i
;;@ unary.ts:31:4
(block (result i32)
(set_local $0
(get_global $unary/i)
@ -230,133 +173,95 @@
(get_local $0)
)
)
;;@ unary.ts:35:0
(drop
;;@ unary.ts:35:1
(get_global $unary/I)
)
;;@ unary.ts:36:0
(drop
(i64.sub
(i64.const 0)
;;@ unary.ts:36:1
(get_global $unary/I)
)
)
;;@ unary.ts:37:0
(drop
(i64.eqz
;;@ unary.ts:37:1
(get_global $unary/I)
)
)
;;@ unary.ts:38:0
(drop
(i64.xor
;;@ unary.ts:38:1
(get_global $unary/I)
(i64.const -1)
)
)
;;@ unary.ts:39:0
(set_global $unary/I
(i64.add
;;@ unary.ts:39:2
(get_global $unary/I)
(i64.const 1)
)
)
;;@ unary.ts:40:0
(set_global $unary/I
(i64.sub
;;@ unary.ts:40:2
(get_global $unary/I)
(i64.const 1)
)
)
;;@ unary.ts:41:0
(set_global $unary/I
(i64.add
(get_global $unary/I)
(i64.const 1)
)
)
;;@ unary.ts:42:0
(set_global $unary/I
(i64.sub
(get_global $unary/I)
(i64.const 1)
)
)
;;@ unary.ts:44:0
(set_global $unary/I
;;@ unary.ts:44:4
(i64.add
(get_global $unary/I)
(i64.const 1)
)
)
(set_global $unary/I
(i64.sub
(get_global $unary/I)
(i64.const 1)
)
)
(set_global $unary/I
(i64.const 1)
)
;;@ unary.ts:45:0
(set_global $unary/I
;;@ unary.ts:45:4
(i64.const -1)
)
;;@ unary.ts:46:0
(set_global $unary/I
;;@ unary.ts:46:4
(i64.extend_s/i32
(i64.eqz
;;@ unary.ts:46:5
(i64.const 1)
)
)
)
;;@ unary.ts:47:0
(set_global $unary/I
;;@ unary.ts:47:4
(i64.xor
;;@ unary.ts:47:5
(i64.const 1)
(i64.const -1)
)
)
;;@ unary.ts:48:0
(set_global $unary/I
;;@ unary.ts:48:4
(get_global $unary/I)
)
;;@ unary.ts:49:0
(set_global $unary/I
;;@ unary.ts:49:4
(i64.sub
(i64.const 0)
;;@ unary.ts:49:5
(get_global $unary/I)
)
)
;;@ unary.ts:50:0
(set_global $unary/I
;;@ unary.ts:50:4
(i64.extend_s/i32
(i64.eqz
;;@ unary.ts:50:5
(get_global $unary/I)
)
)
)
;;@ unary.ts:51:0
(set_global $unary/I
;;@ unary.ts:51:4
(i64.xor
;;@ unary.ts:51:5
(get_global $unary/I)
(i64.const -1)
)
)
;;@ unary.ts:52:0
(set_global $unary/I
;;@ unary.ts:52:4
(block (result i64)
(set_global $unary/I
(i64.add
;;@ unary.ts:52:6
(get_global $unary/I)
(i64.const 1)
)
@ -364,13 +269,10 @@
(get_global $unary/I)
)
)
;;@ unary.ts:53:0
(set_global $unary/I
;;@ unary.ts:53:4
(block (result i64)
(set_global $unary/I
(i64.sub
;;@ unary.ts:53:6
(get_global $unary/I)
(i64.const 1)
)
@ -378,9 +280,7 @@
(get_global $unary/I)
)
)
;;@ unary.ts:54:0
(set_global $unary/I
;;@ unary.ts:54:4
(block (result i64)
(set_local $1
(get_global $unary/I)
@ -394,9 +294,7 @@
(get_local $1)
)
)
;;@ unary.ts:55:0
(set_global $unary/I
;;@ unary.ts:55:4
(block (result i64)
(set_local $1
(get_global $unary/I)
@ -410,104 +308,74 @@
(get_local $1)
)
)
;;@ unary.ts:59:0
(drop
;;@ unary.ts:59:1
(get_global $unary/f)
)
;;@ unary.ts:60:0
(drop
(f32.neg
;;@ unary.ts:60:1
(get_global $unary/f)
)
)
;;@ unary.ts:61:0
(drop
(f32.eq
;;@ unary.ts:61:1
(get_global $unary/f)
(f32.const 0)
)
)
;;@ unary.ts:62:0
(set_global $unary/f
(f32.add
;;@ unary.ts:62:2
(get_global $unary/f)
(f32.const 1)
)
)
;;@ unary.ts:63:0
(set_global $unary/f
(f32.sub
;;@ unary.ts:63:2
(get_global $unary/f)
(f32.const 1)
)
)
;;@ unary.ts:64:0
(set_global $unary/f
(f32.add
(get_global $unary/f)
(f32.const 1)
)
)
;;@ unary.ts:65:0
(set_global $unary/f
(f32.sub
(get_global $unary/f)
(f32.const 1)
)
)
;;@ unary.ts:67:0
(set_global $unary/f
;;@ unary.ts:67:4
(f32.add
(get_global $unary/f)
(f32.const 1)
)
)
(set_global $unary/f
(f32.sub
(get_global $unary/f)
(f32.const 1)
)
)
(set_global $unary/f
(f32.const 1.25)
)
;;@ unary.ts:68:0
(set_global $unary/f
;;@ unary.ts:68:4
(f32.const -1.25)
)
;;@ unary.ts:69:0
(set_global $unary/i
;;@ unary.ts:69:4
(f64.eq
;;@ unary.ts:69:5
(f64.const 1.25)
(f64.const 0)
)
)
;;@ unary.ts:70:0
(set_global $unary/f
;;@ unary.ts:70:4
(get_global $unary/f)
)
;;@ unary.ts:71:0
(set_global $unary/f
;;@ unary.ts:71:4
(f32.neg
;;@ unary.ts:71:5
(get_global $unary/f)
)
)
;;@ unary.ts:72:0
(set_global $unary/i
;;@ unary.ts:72:4
(f32.eq
;;@ unary.ts:72:5
(get_global $unary/f)
(f32.const 0)
)
)
;;@ unary.ts:73:0
(set_global $unary/f
;;@ unary.ts:73:4
(block (result f32)
(set_global $unary/f
(f32.add
;;@ unary.ts:73:6
(get_global $unary/f)
(f32.const 1)
)
@ -515,13 +383,10 @@
(get_global $unary/f)
)
)
;;@ unary.ts:74:0
(set_global $unary/f
;;@ unary.ts:74:4
(block (result f32)
(set_global $unary/f
(f32.sub
;;@ unary.ts:74:6
(get_global $unary/f)
(f32.const 1)
)
@ -529,9 +394,7 @@
(get_global $unary/f)
)
)
;;@ unary.ts:75:0
(set_global $unary/f
;;@ unary.ts:75:4
(block (result f32)
(set_local $2
(get_global $unary/f)
@ -545,9 +408,7 @@
(get_local $2)
)
)
;;@ unary.ts:76:0
(set_global $unary/f
;;@ unary.ts:76:4
(block (result f32)
(set_local $2
(get_global $unary/f)
@ -561,108 +422,78 @@
(get_local $2)
)
)
;;@ unary.ts:80:0
(drop
;;@ unary.ts:80:1
(get_global $unary/F)
)
;;@ unary.ts:81:0
(drop
(f64.neg
;;@ unary.ts:81:1
(get_global $unary/F)
)
)
;;@ unary.ts:82:0
(drop
(f64.eq
;;@ unary.ts:82:1
(get_global $unary/F)
(f64.const 0)
)
)
;;@ unary.ts:83:0
(set_global $unary/F
(f64.add
;;@ unary.ts:83:2
(get_global $unary/F)
(f64.const 1)
)
)
;;@ unary.ts:84:0
(set_global $unary/F
(f64.sub
;;@ unary.ts:84:2
(get_global $unary/F)
(f64.const 1)
)
)
;;@ unary.ts:85:0
(set_global $unary/F
(f64.add
(get_global $unary/F)
(f64.const 1)
)
)
;;@ unary.ts:86:0
(set_global $unary/F
(f64.sub
(get_global $unary/F)
(f64.const 1)
)
)
;;@ unary.ts:88:0
(set_global $unary/F
;;@ unary.ts:88:4
(f64.add
(get_global $unary/F)
(f64.const 1)
)
)
(set_global $unary/F
(f64.sub
(get_global $unary/F)
(f64.const 1)
)
)
(set_global $unary/F
(f64.const 1.25)
)
;;@ unary.ts:89:0
(set_global $unary/F
;;@ unary.ts:89:4
(f64.const -1.25)
)
;;@ unary.ts:90:0
(set_global $unary/I
;;@ unary.ts:90:4
(i64.extend_s/i32
(f64.eq
;;@ unary.ts:90:5
(f64.const 1.25)
(f64.const 0)
)
)
)
;;@ unary.ts:91:0
(set_global $unary/F
;;@ unary.ts:91:4
(get_global $unary/F)
)
;;@ unary.ts:92:0
(set_global $unary/F
;;@ unary.ts:92:4
(f64.neg
;;@ unary.ts:92:5
(get_global $unary/F)
)
)
;;@ unary.ts:93:0
(set_global $unary/I
;;@ unary.ts:93:4
(i64.extend_s/i32
(f64.eq
;;@ unary.ts:93:5
(get_global $unary/F)
(f64.const 0)
)
)
)
;;@ unary.ts:94:0
(set_global $unary/F
;;@ unary.ts:94:4
(block (result f64)
(set_global $unary/F
(f64.add
;;@ unary.ts:94:6
(get_global $unary/F)
(f64.const 1)
)
@ -670,13 +501,10 @@
(get_global $unary/F)
)
)
;;@ unary.ts:95:0
(set_global $unary/F
;;@ unary.ts:95:4
(block (result f64)
(set_global $unary/F
(f64.sub
;;@ unary.ts:95:6
(get_global $unary/F)
(f64.const 1)
)
@ -684,9 +512,7 @@
(get_global $unary/F)
)
)
;;@ unary.ts:96:0
(set_global $unary/F
;;@ unary.ts:96:4
(block (result f64)
(set_local $3
(get_global $unary/F)
@ -700,9 +526,7 @@
(get_local $3)
)
)
;;@ unary.ts:97:0
(set_global $unary/F
;;@ unary.ts:97:4
(block (result f64)
(set_local $3
(get_global $unary/F)

View File

@ -12,22 +12,18 @@
(start $start)
(func $start (; 1 ;) (type $v)
(local $0 i32)
;;@ while.ts:4:0
(block $break|0
(loop $continue|0
(if
;;@ while.ts:4:7
(get_global $while/n)
(block
(block
;;@ while.ts:5:2
(set_global $while/n
(i32.sub
(get_global $while/n)
(i32.const 1)
)
)
;;@ while.ts:6:2
(set_global $while/m
(i32.add
(get_global $while/m)
@ -40,13 +36,10 @@
)
)
)
;;@ while.ts:8:0
(if
(i32.eqz
;;@ while.ts:8:7
(i32.eq
(get_global $while/n)
;;@ while.ts:8:12
(i32.const 0)
)
)
@ -60,13 +53,10 @@
(unreachable)
)
)
;;@ while.ts:9:0
(if
(i32.eqz
;;@ while.ts:9:7
(i32.eq
(get_global $while/m)
;;@ while.ts:9:12
(i32.const 10)
)
)
@ -80,54 +70,42 @@
(unreachable)
)
)
;;@ while.ts:11:0
(set_global $while/n
;;@ while.ts:11:4
(i32.const 10)
)
;;@ while.ts:12:0
(set_global $while/m
;;@ while.ts:12:4
(i32.const 0)
)
;;@ while.ts:14:0
(block $break|1
(loop $continue|1
(if
;;@ while.ts:14:7
(get_global $while/n)
(block
(block
;;@ while.ts:15:2
(set_global $while/n
(i32.sub
(get_global $while/n)
(i32.const 1)
)
)
;;@ while.ts:16:2
(set_global $while/m
(i32.add
(get_global $while/m)
(i32.const 1)
)
)
;;@ while.ts:17:2
(block $break|2
(loop $continue|2
(if
;;@ while.ts:17:9
(get_global $while/n)
(block
(block
;;@ while.ts:18:4
(set_global $while/n
(i32.sub
(get_global $while/n)
(i32.const 1)
)
)
;;@ while.ts:19:4
(set_global $while/o
(i32.add
(get_global $while/o)
@ -140,13 +118,10 @@
)
)
)
;;@ while.ts:21:2
(if
(i32.eqz
;;@ while.ts:21:9
(i32.eq
(get_global $while/n)
;;@ while.ts:21:14
(i32.const 0)
)
)
@ -160,13 +135,10 @@
(unreachable)
)
)
;;@ while.ts:22:2
(if
(i32.eqz
;;@ while.ts:22:9
(i32.eq
(get_global $while/o)
;;@ while.ts:22:14
(i32.const 9)
)
)
@ -186,13 +158,10 @@
)
)
)
;;@ while.ts:24:0
(if
(i32.eqz
;;@ while.ts:24:7
(i32.eq
(get_global $while/n)
;;@ while.ts:24:12
(i32.const 0)
)
)
@ -206,13 +175,10 @@
(unreachable)
)
)
;;@ while.ts:25:0
(if
(i32.eqz
;;@ while.ts:25:7
(i32.eq
(get_global $while/m)
;;@ while.ts:25:12
(i32.const 1)
)
)
@ -226,13 +192,10 @@
(unreachable)
)
)
;;@ while.ts:26:0
(if
(i32.eqz
;;@ while.ts:26:7
(i32.eq
(get_global $while/o)
;;@ while.ts:26:12
(i32.const 9)
)
)
@ -246,21 +209,15 @@
(unreachable)
)
)
;;@ while.ts:28:0
(set_global $while/n
;;@ while.ts:28:4
(i32.const 1)
)
;;@ while.ts:29:0
(set_global $while/m
;;@ while.ts:29:4
(i32.const 0)
)
;;@ while.ts:30:0
(block $break|3
(loop $continue|3
(if
;;@ while.ts:30:7
(if (result i32)
(i32.ne
(tee_local $0
@ -279,11 +236,9 @@
)
(i32.const 0)
)
;;@ while.ts:30:14
(block (result i32)
(set_global $while/m
(i32.add
;;@ while.ts:30:16
(get_global $while/m)
(i32.const 1)
)
@ -293,20 +248,16 @@
(get_local $0)
)
(block
;;@ while.ts:30:18
(nop)
(br $continue|3)
)
)
)
)
;;@ while.ts:31:0
(if
(i32.eqz
;;@ while.ts:31:7
(i32.eq
(get_global $while/n)
;;@ while.ts:31:12
(i32.const -1)
)
)
@ -320,13 +271,10 @@
(unreachable)
)
)
;;@ while.ts:32:0
(if
(i32.eqz
;;@ while.ts:32:7
(i32.eq
(get_global $while/m)
;;@ while.ts:32:12
(i32.const 1)
)
)