blob: 815a0ea7ee26f4199d5a004e4e09dae76dc18b80 [file] [log] [blame]
(module
(type $none_=>_none (func))
(type $i32_=>_none (func (param i32)))
(type $none_=>_i32 (func (result i32)))
(type $i32_=>_i32 (func (param i32) (result i32)))
(type $f32_=>_none (func (param f32)))
(type $none_=>_f64 (func (result f64)))
(type $i32_i32_i32_=>_none (func (param i32 i32 i32)))
(type $f64_f64_=>_f64 (func (param f64 f64) (result f64)))
(type $i32_i32_=>_none (func (param i32 i32)))
(type $i32_i32_i32_i32_=>_none (func (param i32 i32 i32 i32)))
(type $i32_i32_i32_i32_i32_i32_i32_=>_none (func (param i32 i32 i32 i32 i32 i32 i32)))
(type $i32_f32_=>_none (func (param i32 f32)))
(type $i32_f64_f32_=>_none (func (param i32 f64 f32)))
(type $f32_f64_=>_none (func (param f32 f64)))
(type $i32_i32_=>_i32 (func (param i32 i32) (result i32)))
(type $f64_=>_i32 (func (param f64) (result i32)))
(type $f64_i32_=>_i32 (func (param f64 i32) (result i32)))
(type $none_=>_f32 (func (result f32)))
(type $i32_f32_f64_=>_f32 (func (param i32 f32 f64) (result f32)))
(type $f64_=>_f64 (func (param f64) (result f64)))
(import "env" "memory" (memory $memory 256 256))
(data (global.get $__memory_base) "unit.asm.js")
(import "env" "table" (table $table 25 25 funcref))
(elem (global.get $__table_base) $big_negative $big_negative $big_negative $big_negative $w $w $importedDoubles $w $fr $cneg $fr $fr $fr $fr $fr $fr $vi $vi $vi $vi $vi $vi $vi $vi $ii)
(import "env" "__memory_base" (global $__memory_base i32))
(import "env" "__table_base" (global $__table_base i32))
(import "env" "gb" (global $n$asm2wasm$import i32))
(import "env" "setTempRet0" (func $setTempRet0 (param i32) (result i32)))
(import "env" "abort" (func $abort (param f64) (result f64)))
(import "env" "print" (func $print (param i32)))
(import "env" "h" (func $h (param i32)))
(import "env" "return_int" (func $return_int (result i32)))
(import "env" "emscripten_log" (func $emscripten_log))
(import "asm2wasm" "f64-to-int" (func $f64-to-int (param f64) (result i32)))
(import "asm2wasm" "f64-rem" (func $f64-rem (param f64 f64) (result f64)))
(global $Int (mut i32) (i32.const 0))
(global $nonZero (mut i32) (i32.const 1337))
(global $exportedNumber i32 (i32.const 42))
(export "big_negative" (func $big_negative))
(export "pick" (func $big_negative))
(export "doubleCompares" (func $doubleCompares))
(export "intOps" (func $intOps))
(export "conversions" (func $conversions))
(export "switcher" (func $switcher))
(export "frem" (func $frem))
(export "frem_float" (func $frem_float))
(export "big_uint_div_u" (func $big_uint_div_u))
(export "trapping_sint_div_s" (func $trapping_sint_div_s))
(export "fr" (func $fr))
(export "negZero" (func $negZero))
(export "neg" (func $neg))
(export "smallCompare" (func $smallCompare))
(export "cneg_nosemicolon" (func $cneg_nosemicolon))
(export "forLoop" (func $forLoop))
(export "ceiling_32_64" (func $ceiling_32_64))
(export "aborts" (func $aborts))
(export "continues" (func $continues))
(export "bitcasts" (func $bitcasts))
(export "recursiveBlockMerging" (func $recursiveBlockMerging))
(export "lb" (func $lb))
(export "zeroInit" (func $zeroInit))
(export "phi" (func $phi))
(export "smallIf" (func $smallIf))
(export "dropCall" (func $dropCall))
(export "useGlobalSet" (func $useGlobalSet))
(export "usesGlobalSet2" (func $usesGlobalSet2))
(export "breakThroughMany" (func $breakThroughMany))
(export "ifChainEmpty" (func $ifChainEmpty))
(export "heap8NoShift" (func $heap8NoShift))
(export "conditionalTypeFun" (func $conditionalTypeFun))
(export "loadSigned" (func $loadSigned))
(export "globalOpts" (func $globalOpts))
(export "dropCallImport" (func $dropCallImport))
(export "loophi" (func $loophi))
(export "loophi2" (func $loophi2))
(export "loophi2b" (func $loophi2b))
(export "relooperJumpThreading" (func $relooperJumpThreading))
(export "relooperJumpThreading__ZN4game14preloadweaponsEv" (func $relooperJumpThreading__ZN4game14preloadweaponsEv))
(export "__Z12multi_varargiz" (func $__Z12multi_varargiz))
(export "jumpThreadDrop" (func $jumpThreadDrop))
(export "dropIgnoredImportInIf" (func $dropIgnoredImportInIf))
(export "dropIgnoredImportsInIf" (func $dropIgnoredImportsInIf))
(export "relooperJumpThreading_irreducible" (func $relooperJumpThreading_irreducible))
(export "store_fround" (func $store_fround))
(export "exportedNumber" (global $exportedNumber))
(export "relocatableAndModules" (func $relocatableAndModules))
(export "exported_f32_user" (func $exported_f32_user))
(export "keepAlive" (func $keepAlive))
(func $big_negative (; has Stack IR ;)
(nop)
)
(func $importedDoubles (; has Stack IR ;) (result f64)
(if
(i32.gt_s
(global.get $Int)
(i32.const 0)
)
(return
(f64.const -3.4)
)
)
(f64.const 1.2)
)
(func $doubleCompares (; has Stack IR ;) (param $0 f64) (param $1 f64) (result f64)
(if
(f64.gt
(local.get $0)
(f64.const 0)
)
(return
(f64.const 1.2)
)
)
(if
(f64.gt
(local.get $0)
(f64.const 0)
)
(return
(f64.const -3.4)
)
)
(if
(i32.gt_s
(global.get $n$asm2wasm$import)
(i32.const 0)
)
(return
(f64.const 5.6)
)
)
(if
(f64.lt
(local.get $0)
(local.get $1)
)
(return
(local.get $0)
)
)
(local.get $1)
)
(func $intOps (; has Stack IR ;) (param $0 i32) (result i32)
(i32.eqz
(local.get $0)
)
)
(func $conversions (; has Stack IR ;) (param $0 i32) (param $1 f64) (param $2 f32)
(drop
(call $f64-to-int
(local.get $1)
)
)
(drop
(call $f64-to-int
(f64.promote_f32
(local.get $2)
)
)
)
)
(func $switcher (; has Stack IR ;) (param $0 i32) (result i32)
(block $switch
(block $switch-case0
(block $switch-case
(br_table $switch-case $switch-case0 $switch
(i32.sub
(local.get $0)
(i32.const 1)
)
)
)
(return
(i32.const 1)
)
)
(return
(i32.const 2)
)
)
(block $switch1
(block $switch-case3
(block $switch-case2
(br_table $switch-case3 $switch1 $switch1 $switch1 $switch1 $switch1 $switch1 $switch-case2 $switch1
(i32.sub
(local.get $0)
(i32.const 5)
)
)
)
(return
(i32.const 121)
)
)
(return
(i32.const 51)
)
)
(loop $label$continue$L1
(block $label$break$L1
(loop $label$continue$L3
(block $label$break$L3
(br_table $label$break$L3 $label$break$L1 $label$break$L1 $label$break$L1 $label$break$L1 $label$break$L1 $label$continue$L3 $label$break$L1
(i32.add
(local.get $0)
(i32.const -110)
)
)
)
)
(call $h
(i32.const 120)
)
(br $label$continue$L1)
)
)
(i32.const 0)
)
(func $frem (; has Stack IR ;) (result f64)
(call $f64-rem
(f64.const 5.5)
(f64.const 1.2)
)
)
(func $frem_float (; has Stack IR ;) (result f32)
(f32.demote_f64
(call $f64-rem
(f64.const 5.5)
(f64.const 1.2000000476837158)
)
)
)
(func $big_uint_div_u (; has Stack IR ;) (result i32)
(i32.const 2147483647)
)
(func $trapping_sint_div_s (; has Stack IR ;) (result i32)
(i32.const 0)
)
(func $fr (; has Stack IR ;) (param $0 f32)
(nop)
)
(func $negZero (; has Stack IR ;) (result f64)
(f64.const -0)
)
(func $neg (; has Stack IR ;)
(call_indirect (type $f32_=>_none)
(f32.const -0)
(i32.const 9)
)
)
(func $cneg (; has Stack IR ;) (param $0 f32)
(call_indirect (type $f32_=>_none)
(local.get $0)
(i32.const 9)
)
)
(func $smallCompare (; has Stack IR ;) (param $0 i32) (param $1 i32) (result i32)
(if (result i32)
(i32.lt_u
(local.tee $0
(select
(i32.add
(local.get $0)
(i32.const 1)
)
(local.get $0)
(i32.lt_s
(local.get $0)
(local.get $1)
)
)
)
(local.get $1)
)
(i32.add
(local.get $0)
(i32.const 1)
)
(local.get $0)
)
)
(func $cneg_nosemicolon (; has Stack IR ;)
(call_indirect (type $i32_=>_none)
(i32.const 1)
(i32.const 17)
)
)
(func $forLoop (; has Stack IR ;)
(local $0 i32)
(local.set $0
(i32.const 1)
)
(loop $for-in
(if
(i32.lt_s
(local.get $0)
(i32.const 200)
)
(block
(call $h
(local.get $0)
)
(local.set $0
(i32.add
(local.get $0)
(i32.const 1)
)
)
(br $for-in)
)
)
)
)
(func $ceiling_32_64 (; has Stack IR ;) (param $0 f32) (param $1 f64)
(nop)
)
(func $aborts (; has Stack IR ;)
(drop
(call $abort
(f64.const 0)
)
)
(drop
(call $abort
(f64.convert_i32_s
(i32.const 55)
)
)
)
(drop
(call $abort
(f64.const 0)
)
)
(drop
(call $abort
(f64.const 12.34)
)
)
(drop
(call $abort
(f64.const 56.779998779296875)
)
)
)
(func $continues (; has Stack IR ;)
(loop $while-in
(call $print
(i32.const 1)
)
(loop $unlikely-continue
(call $print
(i32.const 5)
)
(br_if $unlikely-continue
(call $return_int)
)
)
(call $print
(i32.const 2)
)
(br $while-in)
)
)
(func $bitcasts (; has Stack IR ;) (param $0 i32) (param $1 f32)
(nop)
)
(func $recursiveBlockMerging (; has Stack IR ;) (param $0 i32) (result i32)
(drop
(call $lb
(i32.add
(local.get $0)
(i32.const 22)
)
)
)
(drop
(call $lb
(i32.const 1)
)
)
(drop
(call $lb
(i32.const 2)
)
)
(i32.add
(i32.add
(i32.add
(call $lb
(i32.const 3)
)
(local.get $0)
)
(block (result i32)
(drop
(call $lb
(i32.const 4)
)
)
(drop
(call $lb
(i32.const 5)
)
)
(drop
(call $lb
(i32.const 6)
)
)
(call $lb
(i32.const 7)
)
)
)
(block (result i32)
(drop
(call $lb
(i32.const 8)
)
)
(drop
(call $lb
(i32.const 9)
)
)
(drop
(call $lb
(i32.const 10)
)
)
(drop
(call $lb
(i32.const 11)
)
)
(call $lb
(i32.const 12)
)
)
)
)
(func $lb (; has Stack IR ;) (param $0 i32) (result i32)
(i32.store
(local.get $0)
(i32.add
(global.get $n$asm2wasm$import)
(i32.const 144)
)
)
(i32.const 0)
)
(func $zeroInit (; has Stack IR ;) (param $0 i32)
(local $1 i32)
(if
(i32.eq
(if (result i32)
(call $lb
(i32.const 0)
)
(if (result i32)
(call $lb
(i32.const 1)
)
(i32.const 3)
(local.get $1)
)
(i32.const 3)
)
(i32.const 3)
)
(drop
(call $lb
(i32.const 2)
)
)
)
)
(func $phi (; has Stack IR ;) (result i32)
(block $do-once (result i32)
(drop
(br_if $do-once
(i32.const 0)
(call $lb
(i32.const 1)
)
)
)
(i32.const 1)
)
)
(func $smallIf (; has Stack IR ;)
(if
(call $return_int)
(drop
(call $lb
(i32.const 3)
)
)
)
)
(func $dropCall (; has Stack IR ;) (result i32)
(if
(call $return_int)
(block
(drop
(call $phi)
)
(drop
(call $setTempRet0
(i32.const 10)
)
)
(call $zeroInit
(call $setTempRet0
(i32.const 10)
)
)
)
)
(call $phi)
)
(func $useGlobalSet (; has Stack IR ;) (result i32)
(global.set $Int
(i32.const 10)
)
(global.set $Int
(i32.const 20)
)
(global.set $Int
(i32.const 30)
)
(i32.const 30)
)
(func $usesGlobalSet2 (; has Stack IR ;) (result i32)
(global.set $Int
(i32.const 40)
)
(i32.const 50)
)
(func $breakThroughMany (; has Stack IR ;) (param $0 i32)
(if
(local.get $0)
(loop $while-in
(if
(local.get $0)
(block
(call $zeroInit
(i32.const 0)
)
(br $while-in)
)
)
)
)
)
(func $ifChainEmpty (; has Stack IR ;) (param $0 i32) (result i32)
(if
(i32.eq
(local.get $0)
(i32.const 4)
)
(return
(i32.const 0)
)
)
(i32.const 0)
)
(func $heap8NoShift (; has Stack IR ;) (param $0 i32) (result i32)
(i32.load8_s
(local.get $0)
)
)
(func $conditionalTypeFun (; has Stack IR ;)
(drop
(if (result i32)
(call $return_int)
(call $f64-to-int
(call $abort
(f64.convert_i32_s
(i32.const 5)
)
)
)
(i32.const 2)
)
)
(drop
(if (result f64)
(call $return_int)
(call $abort
(f64.convert_i32_s
(i32.const 7)
)
)
(f64.const 4.5)
)
)
)
(func $loadSigned (; has Stack IR ;) (param $0 i32)
(call $loadSigned
(i32.load8_s
(local.get $0)
)
)
(call $loadSigned
(i32.load8_s
(local.get $0)
)
)
(call $loadSigned
(i32.load16_s
(local.get $0)
)
)
(call $loadSigned
(i32.load16_s
(local.get $0)
)
)
(call $loadSigned
(i32.shr_s
(i32.shl
(i32.load8_s
(local.get $0)
)
(i32.const 24)
)
(i32.const 16)
)
)
(call $loadSigned
(i32.shr_s
(i32.shl
(i32.load8_u
(local.get $0)
)
(i32.const 16)
)
(i32.const 24)
)
)
(call $loadSigned
(i32.shr_s
(i32.shl
(i32.load16_s
(local.get $0)
)
(i32.const 16)
)
(i32.const 24)
)
)
(call $loadSigned
(i32.shr_s
(i32.shl
(i32.load16_u
(local.get $0)
)
(i32.const 24)
)
(i32.const 16)
)
)
)
(func $w (; has Stack IR ;) (result f64)
(f64.const 0)
)
(func $globalOpts (; has Stack IR ;)
(local $0 i32)
(i32.store8
(i32.const 13)
(i32.load
(i32.const 12)
)
)
(call $globalOpts)
(local.set $0
(global.get $Int)
)
(if
(call $return_int)
(global.set $Int
(i32.const 20)
)
)
(global.set $Int
(local.get $0)
)
(call $globalOpts)
(local.set $0
(global.get $Int)
)
(call $globalOpts)
(global.set $Int
(local.get $0)
)
)
(func $dropCallImport (; has Stack IR ;)
(if
(call $return_int)
(drop
(call $return_int)
)
)
)
(func $loophi (; has Stack IR ;) (param $0 i32) (param $1 i32)
(loop $while-in
(block $while-out
(call $loophi
(local.get $0)
(i32.const 0)
)
(br_if $while-out
(select
(local.get $0)
(i32.const 0)
(local.get $0)
)
)
(br_if $while-in
(i32.eq
(local.get $1)
(local.tee $0
(i32.add
(local.get $0)
(i32.const 1)
)
)
)
)
)
)
)
(func $loophi2 (; has Stack IR ;) (result i32)
(local $0 i32)
(local $1 i32)
(local $2 i32)
(loop $label$continue$L7
(block $label$break$L7
(local.set $0
(i32.const 0)
)
(loop $while-in
(local.set $2
(local.get $0)
)
(br_if $label$break$L7
(select
(call $return_int)
(i32.const 0)
(local.get $2)
)
)
(br_if $while-in
(local.tee $0
(i32.add
(local.get $0)
(i32.const 1)
)
)
)
)
(br $label$continue$L7)
)
)
(local.get $1)
)
(func $loophi2b (; has Stack IR ;) (result i32)
(local $0 i32)
(local $1 i32)
(loop $label$continue$L7
(block $label$break$L7
(local.set $0
(i32.const 0)
)
(loop $while-in
(local.set $1
(local.get $0)
)
(br_if $label$break$L7
(select
(call $return_int)
(i32.const 0)
(local.get $1)
)
)
(br_if $while-in
(local.tee $0
(i32.add
(local.get $0)
(i32.const 1)
)
)
)
)
(br $label$continue$L7)
)
)
(local.get $0)
)
(func $relooperJumpThreading (; has Stack IR ;) (param $0 i32) (result i32)
(block $__rjto$0
(block $__rjti$0
(if
(local.get $0)
(block
(call $h
(i32.const 0)
)
(br $__rjti$0)
)
)
(br $__rjto$0)
)
(call $h
(i32.const 1)
)
)
(call $h
(i32.const -1)
)
(loop $while-in
(br_if $while-in
(i32.eqz
(local.tee $0
(i32.add
(local.get $0)
(i32.const 1)
)
)
)
)
)
(call $h
(i32.const 2)
)
(call $h
(i32.const 3)
)
(call $h
(i32.const -2)
)
(block $__rjto$3
(block $__rjti$3
(block $__rjti$2
(if
(local.get $0)
(block
(call $h
(i32.const 4)
)
(br_if $__rjti$2
(i32.eq
(local.get $0)
(i32.const 3)
)
)
(br $__rjti$3)
)
)
(br $__rjto$3)
)
(call $h
(i32.const 5)
)
(br $__rjto$3)
)
(call $h
(i32.const 6)
)
)
(call $h
(i32.const -3)
)
(block $__rjto$5
(block $__rjti$5
(block $__rjti$4
(if
(local.get $0)
(block
(call $h
(i32.const 7)
)
(br_if $__rjti$4
(i32.eq
(local.get $0)
(i32.const 5)
)
)
(br $__rjti$5)
)
)
(br $__rjto$5)
)
(call $h
(i32.const 8)
)
(br_if $__rjti$5
(i32.eq
(local.get $0)
(i32.const 6)
)
)
(br $__rjto$5)
)
(call $h
(i32.const 9)
)
)
(call $h
(i32.const -4)
)
(block $label$break$L1
(block $__rjti$6
(if
(local.get $0)
(block
(call $h
(i32.const 10)
)
(br $__rjti$6)
)
)
(br $label$break$L1)
)
(call $h
(i32.const 11)
)
)
(call $h
(i32.const -5)
)
(block $label$break$L10
(block $__rjti$8
(block $__rjti$7
(if
(local.get $0)
(block
(call $h
(i32.const 12)
)
(br_if $__rjti$7
(i32.eq
(local.get $0)
(i32.const 8)
)
)
(br $__rjti$8)
)
)
(br $label$break$L10)
)
(call $h
(i32.const 13)
)
(br_if $__rjti$8
(local.get $0)
)
(br $label$break$L10)
)
(call $h
(i32.const 14)
)
)
(call $h
(i32.const -6)
)
(local.get $0)
)
(func $relooperJumpThreading__ZN4game14preloadweaponsEv (; has Stack IR ;) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32) (param $4 i32) (param $5 i32) (param $6 i32)
(loop $while-in
(block $__rjti$1
(if
(local.get $1)
(br_if $__rjti$1
(i32.eqz
(local.get $2)
)
)
(br_if $__rjti$1
(i32.eqz
(local.get $3)
)
)
)
(br $while-in)
)
(i32.store
(local.get $4)
(local.get $5)
)
(br $while-in)
)
)
(func $relooperJumpThreading_irreducible (; has Stack IR ;) (param $0 i32)
(local $1 i32)
(if
(i32.eq
(local.get $0)
(i32.const 100)
)
(loop $while-in
(call $relooperJumpThreading_irreducible
(i32.const 1337)
)
(br $while-in)
)
)
(local.set $1
(select
(i32.const 2)
(i32.const 10)
(i32.eq
(local.get $0)
(i32.const 200)
)
)
)
(if
(i32.eq
(local.tee $1
(select
(i32.const 2)
(local.get $1)
(i32.eq
(local.get $0)
(i32.const 300)
)
)
)
(i32.const 2)
)
(call $relooperJumpThreading_irreducible
(i32.const 1448)
)
)
(if
(i32.eq
(local.get $1)
(i32.const 10)
)
(call $relooperJumpThreading_irreducible
(i32.const 2000)
)
)
)
(func $__Z12multi_varargiz (; has Stack IR ;) (param $0 i32) (param $1 i32) (param $2 i32) (param $3 i32)
(if
(local.get $3)
(loop $while-in
(br_if $while-in
(i32.eqz
(local.get $2)
)
)
)
(drop
(call $lb
(i32.const 1)
)
)
)
)
(func $jumpThreadDrop (; has Stack IR ;) (result i32)
(call $return_int)
)
(func $dropIgnoredImportInIf (; has Stack IR ;) (param $0 i32) (param $1 i32) (param $2 i32)
(if
(local.get $0)
(drop
(call $lb
(local.get $2)
)
)
)
)
(func $dropIgnoredImportsInIf (; has Stack IR ;) (param $0 i32) (param $1 i32) (param $2 i32)
(drop
(if (result i32)
(local.get $0)
(call $lb
(local.get $1)
)
(call $lb
(local.get $2)
)
)
)
)
(func $store_fround (; has Stack IR ;) (param $0 i32)
(f64.store
(i32.const 80)
(f64.promote_f32
(f32.convert_i32_s
(local.get $0)
)
)
)
)
(func $relocatableAndModules (; has Stack IR ;) (result i32)
(call_indirect (type $none_=>_none)
(i32.const 10)
)
(call_indirect (type $none_=>_none)
(i32.const 20)
)
(call_indirect (type $f64_i32_=>_i32)
(f64.const 1.5)
(i32.const 200)
(i32.const 30)
)
)
(func $exported_f32_user (; has Stack IR ;) (param $0 i32) (param $1 f32) (param $2 f64) (result f32)
(local.get $1)
)
(func $keepAlive (; has Stack IR ;)
(drop
(call $f64-to-int
(f64.const 100)
)
)
(drop
(call $f64-to-int
(f64.const 100)
)
)
(call_indirect (type $i32_=>_none)
(i32.const 0)
(i32.const 17)
)
(call_indirect (type $i32_=>_none)
(i32.const 0)
(block (result i32)
(global.set $Int
(i32.const 1)
)
(i32.const 17)
)
)
(call $emscripten_log)
(drop
(call $f64-to-int
(call $abort
(f64.const 0)
)
)
)
(drop
(call $f64-to-int
(f64.sub
(f64.const 2.31)
(f64.mul
(call $f64-rem
(f64.const 9.78)
(f64.const 1)
)
(f64.const 2.31)
)
)
)
)
(global.set $nonZero
(i32.add
(global.get $nonZero)
(i32.const 1)
)
)
)
(func $vi (; has Stack IR ;) (param $0 i32)
(nop)
)
(func $ii (; has Stack IR ;) (param $0 i32) (result i32)
(local.get $0)
)
)