(module
 (type $FUNCSIG$vi (func (param i32)))
 (type $FUNCSIG$ii (func (param i32) (result i32)))
 (import "env" "memoryBase" (global $memoryBase$asm2wasm$import i32))
 (import "env" "abortStackOverflow" (func $abortStackOverflow (param i32)))
 (import "env" "_puts" (func $_puts (param i32) (result i32)))
 (global $STACKTOP (mut i32) (i32.const 0))
 (global $STACK_MAX (mut i32) (i32.const 0))
 (global $_global i32 (i32.const 5242912))
 (export "__ZN3FooC2Ev" (func $__ZN3FooC2Ev))
 (export "__post_instantiate" (func $__post_instantiate))
 (export "runPostSets" (func $runPostSets))
 (export "_global" (global $_global))
 (func $__ZN3FooC2Ev (; 2 ;) (; has Stack IR ;) (param $0 i32)
  (local.set $0
   (global.get $STACKTOP)
  )
  (global.set $STACKTOP
   (i32.add
    (global.get $STACKTOP)
    (i32.const 16)
   )
  )
  (if
   (i32.ge_s
    (global.get $STACKTOP)
    (global.get $STACK_MAX)
   )
   (call $abortStackOverflow
    (i32.const 16)
   )
  )
  (drop
   (call $_puts
    (global.get $memoryBase$asm2wasm$import)
   )
  )
  (global.set $STACKTOP
   (local.get $0)
  )
 )
 (func $runPostSets (; 3 ;) (; has Stack IR ;)
  (nop)
 )
 (func $__post_instantiate (; 4 ;) (; has Stack IR ;)
  (global.set $STACKTOP
   (i32.add
    (global.get $memoryBase$asm2wasm$import)
    (i32.const 32)
   )
  )
  (global.set $STACK_MAX
   (i32.add
    (global.get $STACKTOP)
    (i32.const 5242880)
   )
  )
  (call $__ZN3FooC2Ev
   (i32.add
    (global.get $memoryBase$asm2wasm$import)
    (i32.const 5242912)
   )
  )
 )
)