(module (type $i64_i64_=>_i64 (func (param i64 i64) (result i64))) (type $i64_i64_i64_=>_none (func (param i64 i64 i64))) (type $i64_i64_=>_i32 (func (param i64 i64) (result i32))) (type $i64_i64_i32_=>_none (func (param i64 i64 i32))) (type $i64_i64_v128_=>_none (func (param i64 i64 v128))) (type $i64_i64_=>_v128 (func (param i64 i64) (result v128))) (type $none_=>_none (func)) (type $i64_i64_f64_=>_none (func (param i64 i64 f64))) (type $i64_i64_=>_f64 (func (param i64 i64) (result f64))) (type $i64_i64_f32_=>_none (func (param i64 i64 f32))) (type $i64_i64_=>_f32 (func (param i64 i64) (result f32))) (type $none_=>_i64 (func (result i64))) (import "env" "emscripten_get_sbrk_ptr" (func $emscripten_get_sbrk_ptr (result i64))) (import "env" "segfault" (func $segfault)) (import "env" "alignfault" (func $alignfault)) (memory $0 (shared i64 100 100)) (func $loads (drop (call $SAFE_HEAP_LOAD_i32_4_4 (i64.const 1) (i64.const 0) ) ) (drop (call $SAFE_HEAP_LOAD_i32_4_A (i64.const 1) (i64.const 0) ) ) (drop (call $SAFE_HEAP_LOAD_i32_4_4 (i64.const 2) (i64.const 31) ) ) (drop (call $SAFE_HEAP_LOAD_i32_4_2 (i64.const 3) (i64.const 0) ) ) (drop (call $SAFE_HEAP_LOAD_i32_4_1 (i64.const 4) (i64.const 0) ) ) (drop (call $SAFE_HEAP_LOAD_i32_1_1 (i64.const 5) (i64.const 0) ) ) (drop (call $SAFE_HEAP_LOAD_i32_2_U_2 (i64.const 6) (i64.const 0) ) ) (drop (call $SAFE_HEAP_LOAD_i64_1_1 (i64.const 7) (i64.const 0) ) ) (drop (call $SAFE_HEAP_LOAD_i64_2_U_2 (i64.const 8) (i64.const 0) ) ) (drop (call $SAFE_HEAP_LOAD_i64_4_4 (i64.const 9) (i64.const 0) ) ) (drop (call $SAFE_HEAP_LOAD_i64_8_4 (i64.const 10) (i64.const 0) ) ) (drop (call $SAFE_HEAP_LOAD_i64_8_8 (i64.const 11) (i64.const 0) ) ) (drop (call $SAFE_HEAP_LOAD_f32_4_4 (i64.const 12) (i64.const 0) ) ) (drop (call $SAFE_HEAP_LOAD_f64_8_8 (i64.const 13) (i64.const 0) ) ) (drop (call $SAFE_HEAP_LOAD_v128_16_16 (i64.const 14) (i64.const 0) ) ) ) (func $stores (call $SAFE_HEAP_STORE_i32_4_4 (i64.const 1) (i64.const 0) (i32.const 100) ) (call $SAFE_HEAP_STORE_i32_4_A (i64.const 1) (i64.const 0) (i32.const 100) ) (call $SAFE_HEAP_STORE_i32_4_4 (i64.const 2) (i64.const 31) (i32.const 200) ) (call $SAFE_HEAP_STORE_i32_4_2 (i64.const 3) (i64.const 0) (i32.const 300) ) (call $SAFE_HEAP_STORE_i32_4_1 (i64.const 4) (i64.const 0) (i32.const 400) ) (call $SAFE_HEAP_STORE_i32_1_1 (i64.const 5) (i64.const 0) (i32.const 500) ) (call $SAFE_HEAP_STORE_i32_2_2 (i64.const 6) (i64.const 0) (i32.const 600) ) (call $SAFE_HEAP_STORE_i64_1_1 (i64.const 7) (i64.const 0) (i64.const 700) ) (call $SAFE_HEAP_STORE_i64_2_2 (i64.const 8) (i64.const 0) (i64.const 800) ) (call $SAFE_HEAP_STORE_i64_4_4 (i64.const 9) (i64.const 0) (i64.const 900) ) (call $SAFE_HEAP_STORE_i64_8_4 (i64.const 10) (i64.const 0) (i64.const 1000) ) (call $SAFE_HEAP_STORE_i64_8_8 (i64.const 11) (i64.const 0) (i64.const 1100) ) (call $SAFE_HEAP_STORE_f32_4_4 (i64.const 12) (i64.const 0) (f32.const 1200) ) (call $SAFE_HEAP_STORE_f64_8_8 (i64.const 13) (i64.const 0) (f64.const 1300) ) (call $SAFE_HEAP_STORE_v128_16_16 (i64.const 14) (i64.const 0) (v128.const i32x4 0x00000001 0x00000002 0x00000003 0x00000004) ) ) (func $SAFE_HEAP_LOAD_i32_1_A (param $0 i64) (param $1 i64) (result i32) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 1) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (i32.shr_s (i32.shl (i32.atomic.load8_u (local.get $2) ) (i32.const 24) ) (i32.const 24) ) ) (func $SAFE_HEAP_LOAD_i32_1_1 (param $0 i64) (param $1 i64) (result i32) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 1) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (i32.load8_s (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i32_1_U_A (param $0 i64) (param $1 i64) (result i32) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 1) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (i32.atomic.load8_u (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i32_1_U_1 (param $0 i64) (param $1 i64) (result i32) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 1) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (i32.load8_u (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i32_2_1 (param $0 i64) (param $1 i64) (result i32) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 2) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (i32.load16_s align=1 (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i32_2_A (param $0 i64) (param $1 i64) (result i32) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 2) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 1) ) (call $alignfault) ) (i32.shr_s (i32.shl (i32.atomic.load16_u (local.get $2) ) (i32.const 16) ) (i32.const 16) ) ) (func $SAFE_HEAP_LOAD_i32_2_2 (param $0 i64) (param $1 i64) (result i32) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 2) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 1) ) (call $alignfault) ) (i32.load16_s (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i32_2_U_1 (param $0 i64) (param $1 i64) (result i32) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 2) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (i32.load16_u align=1 (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i32_2_U_A (param $0 i64) (param $1 i64) (result i32) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 2) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 1) ) (call $alignfault) ) (i32.atomic.load16_u (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i32_2_U_2 (param $0 i64) (param $1 i64) (result i32) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 2) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 1) ) (call $alignfault) ) (i32.load16_u (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i32_4_1 (param $0 i64) (param $1 i64) (result i32) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 4) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (i32.load align=1 (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i32_4_2 (param $0 i64) (param $1 i64) (result i32) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 4) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 1) ) (call $alignfault) ) (i32.load align=2 (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i32_4_A (param $0 i64) (param $1 i64) (result i32) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 4) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 3) ) (call $alignfault) ) (i32.atomic.load (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i32_4_4 (param $0 i64) (param $1 i64) (result i32) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 4) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 3) ) (call $alignfault) ) (i32.load (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i64_1_A (param $0 i64) (param $1 i64) (result i64) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 1) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (i64.shr_s (i64.shl (i64.atomic.load8_u (local.get $2) ) (i64.const 56) ) (i64.const 56) ) ) (func $SAFE_HEAP_LOAD_i64_1_1 (param $0 i64) (param $1 i64) (result i64) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 1) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (i64.load8_s (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i64_1_U_A (param $0 i64) (param $1 i64) (result i64) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 1) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (i64.atomic.load8_u (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i64_1_U_1 (param $0 i64) (param $1 i64) (result i64) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 1) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (i64.load8_u (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i64_2_1 (param $0 i64) (param $1 i64) (result i64) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 2) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (i64.load16_s align=1 (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i64_2_A (param $0 i64) (param $1 i64) (result i64) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 2) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 1) ) (call $alignfault) ) (i64.shr_s (i64.shl (i64.atomic.load16_u (local.get $2) ) (i64.const 48) ) (i64.const 48) ) ) (func $SAFE_HEAP_LOAD_i64_2_2 (param $0 i64) (param $1 i64) (result i64) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 2) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 1) ) (call $alignfault) ) (i64.load16_s (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i64_2_U_1 (param $0 i64) (param $1 i64) (result i64) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 2) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (i64.load16_u align=1 (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i64_2_U_A (param $0 i64) (param $1 i64) (result i64) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 2) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 1) ) (call $alignfault) ) (i64.atomic.load16_u (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i64_2_U_2 (param $0 i64) (param $1 i64) (result i64) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 2) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 1) ) (call $alignfault) ) (i64.load16_u (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i64_4_1 (param $0 i64) (param $1 i64) (result i64) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 4) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (i64.load32_s align=1 (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i64_4_2 (param $0 i64) (param $1 i64) (result i64) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 4) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 1) ) (call $alignfault) ) (i64.load32_s align=2 (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i64_4_A (param $0 i64) (param $1 i64) (result i64) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 4) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 3) ) (call $alignfault) ) (i64.shr_s (i64.shl (i64.atomic.load32_u (local.get $2) ) (i64.const 32) ) (i64.const 32) ) ) (func $SAFE_HEAP_LOAD_i64_4_4 (param $0 i64) (param $1 i64) (result i64) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 4) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 3) ) (call $alignfault) ) (i64.load32_s (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i64_4_U_1 (param $0 i64) (param $1 i64) (result i64) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 4) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (i64.load32_u align=1 (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i64_4_U_2 (param $0 i64) (param $1 i64) (result i64) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 4) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 1) ) (call $alignfault) ) (i64.load32_u align=2 (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i64_4_U_A (param $0 i64) (param $1 i64) (result i64) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 4) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 3) ) (call $alignfault) ) (i64.atomic.load32_u (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i64_4_U_4 (param $0 i64) (param $1 i64) (result i64) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 4) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 3) ) (call $alignfault) ) (i64.load32_u (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i64_8_1 (param $0 i64) (param $1 i64) (result i64) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 8) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (i64.load align=1 (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i64_8_2 (param $0 i64) (param $1 i64) (result i64) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 8) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 1) ) (call $alignfault) ) (i64.load align=2 (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i64_8_4 (param $0 i64) (param $1 i64) (result i64) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 8) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 3) ) (call $alignfault) ) (i64.load align=4 (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i64_8_A (param $0 i64) (param $1 i64) (result i64) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 8) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 7) ) (call $alignfault) ) (i64.atomic.load (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i64_8_8 (param $0 i64) (param $1 i64) (result i64) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 8) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 7) ) (call $alignfault) ) (i64.load (local.get $2) ) ) (func $SAFE_HEAP_LOAD_f32_4_1 (param $0 i64) (param $1 i64) (result f32) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 4) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (f32.load align=1 (local.get $2) ) ) (func $SAFE_HEAP_LOAD_f32_4_2 (param $0 i64) (param $1 i64) (result f32) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 4) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 1) ) (call $alignfault) ) (f32.load align=2 (local.get $2) ) ) (func $SAFE_HEAP_LOAD_f32_4_4 (param $0 i64) (param $1 i64) (result f32) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 4) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 3) ) (call $alignfault) ) (f32.load (local.get $2) ) ) (func $SAFE_HEAP_LOAD_f64_8_1 (param $0 i64) (param $1 i64) (result f64) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 8) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (f64.load align=1 (local.get $2) ) ) (func $SAFE_HEAP_LOAD_f64_8_2 (param $0 i64) (param $1 i64) (result f64) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 8) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 1) ) (call $alignfault) ) (f64.load align=2 (local.get $2) ) ) (func $SAFE_HEAP_LOAD_f64_8_4 (param $0 i64) (param $1 i64) (result f64) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 8) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 3) ) (call $alignfault) ) (f64.load align=4 (local.get $2) ) ) (func $SAFE_HEAP_LOAD_f64_8_8 (param $0 i64) (param $1 i64) (result f64) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 8) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 7) ) (call $alignfault) ) (f64.load (local.get $2) ) ) (func $SAFE_HEAP_LOAD_v128_16_1 (param $0 i64) (param $1 i64) (result v128) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 16) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (v128.load align=1 (local.get $2) ) ) (func $SAFE_HEAP_LOAD_v128_16_2 (param $0 i64) (param $1 i64) (result v128) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 16) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 1) ) (call $alignfault) ) (v128.load align=2 (local.get $2) ) ) (func $SAFE_HEAP_LOAD_v128_16_4 (param $0 i64) (param $1 i64) (result v128) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 16) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 3) ) (call $alignfault) ) (v128.load align=4 (local.get $2) ) ) (func $SAFE_HEAP_LOAD_v128_16_8 (param $0 i64) (param $1 i64) (result v128) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 16) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 7) ) (call $alignfault) ) (v128.load align=8 (local.get $2) ) ) (func $SAFE_HEAP_LOAD_v128_16_16 (param $0 i64) (param $1 i64) (result v128) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 16) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 15) ) (call $alignfault) ) (v128.load (local.get $2) ) ) (func $SAFE_HEAP_STORE_i32_1_A (param $0 i64) (param $1 i64) (param $2 i32) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 1) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (i32.atomic.store8 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_i32_1_1 (param $0 i64) (param $1 i64) (param $2 i32) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 1) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (i32.store8 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_i32_2_1 (param $0 i64) (param $1 i64) (param $2 i32) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 2) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (i32.store16 align=1 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_i32_2_A (param $0 i64) (param $1 i64) (param $2 i32) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 2) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $3) ) (i32.const 1) ) (call $alignfault) ) (i32.atomic.store16 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_i32_2_2 (param $0 i64) (param $1 i64) (param $2 i32) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 2) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $3) ) (i32.const 1) ) (call $alignfault) ) (i32.store16 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_i32_4_1 (param $0 i64) (param $1 i64) (param $2 i32) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 4) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (i32.store align=1 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_i32_4_2 (param $0 i64) (param $1 i64) (param $2 i32) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 4) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $3) ) (i32.const 1) ) (call $alignfault) ) (i32.store align=2 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_i32_4_A (param $0 i64) (param $1 i64) (param $2 i32) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 4) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $3) ) (i32.const 3) ) (call $alignfault) ) (i32.atomic.store (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_i32_4_4 (param $0 i64) (param $1 i64) (param $2 i32) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 4) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $3) ) (i32.const 3) ) (call $alignfault) ) (i32.store (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_i64_1_A (param $0 i64) (param $1 i64) (param $2 i64) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 1) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (i64.atomic.store8 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_i64_1_1 (param $0 i64) (param $1 i64) (param $2 i64) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 1) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (i64.store8 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_i64_2_1 (param $0 i64) (param $1 i64) (param $2 i64) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 2) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (i64.store16 align=1 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_i64_2_A (param $0 i64) (param $1 i64) (param $2 i64) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 2) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $3) ) (i32.const 1) ) (call $alignfault) ) (i64.atomic.store16 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_i64_2_2 (param $0 i64) (param $1 i64) (param $2 i64) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 2) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $3) ) (i32.const 1) ) (call $alignfault) ) (i64.store16 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_i64_4_1 (param $0 i64) (param $1 i64) (param $2 i64) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 4) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (i64.store32 align=1 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_i64_4_2 (param $0 i64) (param $1 i64) (param $2 i64) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 4) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $3) ) (i32.const 1) ) (call $alignfault) ) (i64.store32 align=2 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_i64_4_A (param $0 i64) (param $1 i64) (param $2 i64) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 4) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $3) ) (i32.const 3) ) (call $alignfault) ) (i64.atomic.store32 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_i64_4_4 (param $0 i64) (param $1 i64) (param $2 i64) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 4) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $3) ) (i32.const 3) ) (call $alignfault) ) (i64.store32 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_i64_8_1 (param $0 i64) (param $1 i64) (param $2 i64) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 8) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (i64.store align=1 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_i64_8_2 (param $0 i64) (param $1 i64) (param $2 i64) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 8) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $3) ) (i32.const 1) ) (call $alignfault) ) (i64.store align=2 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_i64_8_4 (param $0 i64) (param $1 i64) (param $2 i64) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 8) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $3) ) (i32.const 3) ) (call $alignfault) ) (i64.store align=4 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_i64_8_A (param $0 i64) (param $1 i64) (param $2 i64) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 8) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $3) ) (i32.const 7) ) (call $alignfault) ) (i64.atomic.store (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_i64_8_8 (param $0 i64) (param $1 i64) (param $2 i64) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 8) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $3) ) (i32.const 7) ) (call $alignfault) ) (i64.store (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_f32_4_1 (param $0 i64) (param $1 i64) (param $2 f32) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 4) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (f32.store align=1 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_f32_4_2 (param $0 i64) (param $1 i64) (param $2 f32) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 4) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $3) ) (i32.const 1) ) (call $alignfault) ) (f32.store align=2 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_f32_4_4 (param $0 i64) (param $1 i64) (param $2 f32) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 4) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $3) ) (i32.const 3) ) (call $alignfault) ) (f32.store (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_f64_8_1 (param $0 i64) (param $1 i64) (param $2 f64) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 8) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (f64.store align=1 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_f64_8_2 (param $0 i64) (param $1 i64) (param $2 f64) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 8) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $3) ) (i32.const 1) ) (call $alignfault) ) (f64.store align=2 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_f64_8_4 (param $0 i64) (param $1 i64) (param $2 f64) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 8) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $3) ) (i32.const 3) ) (call $alignfault) ) (f64.store align=4 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_f64_8_8 (param $0 i64) (param $1 i64) (param $2 f64) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 8) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $3) ) (i32.const 7) ) (call $alignfault) ) (f64.store (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_v128_16_1 (param $0 i64) (param $1 i64) (param $2 v128) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 16) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (v128.store align=1 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_v128_16_2 (param $0 i64) (param $1 i64) (param $2 v128) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 16) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $3) ) (i32.const 1) ) (call $alignfault) ) (v128.store align=2 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_v128_16_4 (param $0 i64) (param $1 i64) (param $2 v128) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 16) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $3) ) (i32.const 3) ) (call $alignfault) ) (v128.store align=4 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_v128_16_8 (param $0 i64) (param $1 i64) (param $2 v128) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 16) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $3) ) (i32.const 7) ) (call $alignfault) ) (v128.store align=8 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_v128_16_16 (param $0 i64) (param $1 i64) (param $2 v128) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 16) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $3) ) (i32.const 15) ) (call $alignfault) ) (v128.store (local.get $3) (local.get $2) ) ) ) (module (type $i64_i64_=>_i64 (func (param i64 i64) (result i64))) (type $i64_i64_i64_=>_none (func (param i64 i64 i64))) (type $i64_i64_=>_i32 (func (param i64 i64) (result i32))) (type $i64_i64_i32_=>_none (func (param i64 i64 i32))) (type $i64_i64_v128_=>_none (func (param i64 i64 v128))) (type $i64_i64_=>_v128 (func (param i64 i64) (result v128))) (type $i64_i64_f64_=>_none (func (param i64 i64 f64))) (type $i64_i64_=>_f64 (func (param i64 i64) (result f64))) (type $none_=>_none (func)) (type $i64_i64_f32_=>_none (func (param i64 i64 f32))) (type $i64_i64_=>_f32 (func (param i64 i64) (result f32))) (type $none_=>_i64 (func (result i64))) (import "env" "emscripten_get_sbrk_ptr" (func $emscripten_get_sbrk_ptr (result i64))) (import "env" "segfault" (func $segfault)) (import "env" "alignfault" (func $alignfault)) (memory $0 i64 100 100) (func $loads (drop (call $SAFE_HEAP_LOAD_i32_4_4 (i64.const 1) (i64.const 0) ) ) ) (func $SAFE_HEAP_LOAD_i32_1_1 (param $0 i64) (param $1 i64) (result i32) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 1) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (i32.load8_s (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i32_1_U_1 (param $0 i64) (param $1 i64) (result i32) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 1) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (i32.load8_u (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i32_2_1 (param $0 i64) (param $1 i64) (result i32) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 2) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (i32.load16_s align=1 (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i32_2_2 (param $0 i64) (param $1 i64) (result i32) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 2) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 1) ) (call $alignfault) ) (i32.load16_s (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i32_2_U_1 (param $0 i64) (param $1 i64) (result i32) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 2) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (i32.load16_u align=1 (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i32_2_U_2 (param $0 i64) (param $1 i64) (result i32) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 2) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 1) ) (call $alignfault) ) (i32.load16_u (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i32_4_1 (param $0 i64) (param $1 i64) (result i32) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 4) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (i32.load align=1 (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i32_4_2 (param $0 i64) (param $1 i64) (result i32) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 4) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 1) ) (call $alignfault) ) (i32.load align=2 (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i32_4_4 (param $0 i64) (param $1 i64) (result i32) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 4) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 3) ) (call $alignfault) ) (i32.load (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i64_1_1 (param $0 i64) (param $1 i64) (result i64) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 1) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (i64.load8_s (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i64_1_U_1 (param $0 i64) (param $1 i64) (result i64) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 1) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (i64.load8_u (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i64_2_1 (param $0 i64) (param $1 i64) (result i64) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 2) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (i64.load16_s align=1 (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i64_2_2 (param $0 i64) (param $1 i64) (result i64) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 2) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 1) ) (call $alignfault) ) (i64.load16_s (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i64_2_U_1 (param $0 i64) (param $1 i64) (result i64) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 2) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (i64.load16_u align=1 (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i64_2_U_2 (param $0 i64) (param $1 i64) (result i64) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 2) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 1) ) (call $alignfault) ) (i64.load16_u (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i64_4_1 (param $0 i64) (param $1 i64) (result i64) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 4) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (i64.load32_s align=1 (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i64_4_2 (param $0 i64) (param $1 i64) (result i64) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 4) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 1) ) (call $alignfault) ) (i64.load32_s align=2 (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i64_4_4 (param $0 i64) (param $1 i64) (result i64) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 4) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 3) ) (call $alignfault) ) (i64.load32_s (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i64_4_U_1 (param $0 i64) (param $1 i64) (result i64) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 4) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (i64.load32_u align=1 (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i64_4_U_2 (param $0 i64) (param $1 i64) (result i64) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 4) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 1) ) (call $alignfault) ) (i64.load32_u align=2 (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i64_4_U_4 (param $0 i64) (param $1 i64) (result i64) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 4) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 3) ) (call $alignfault) ) (i64.load32_u (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i64_8_1 (param $0 i64) (param $1 i64) (result i64) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 8) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (i64.load align=1 (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i64_8_2 (param $0 i64) (param $1 i64) (result i64) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 8) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 1) ) (call $alignfault) ) (i64.load align=2 (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i64_8_4 (param $0 i64) (param $1 i64) (result i64) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 8) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 3) ) (call $alignfault) ) (i64.load align=4 (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i64_8_8 (param $0 i64) (param $1 i64) (result i64) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 8) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 7) ) (call $alignfault) ) (i64.load (local.get $2) ) ) (func $SAFE_HEAP_LOAD_f32_4_1 (param $0 i64) (param $1 i64) (result f32) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 4) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (f32.load align=1 (local.get $2) ) ) (func $SAFE_HEAP_LOAD_f32_4_2 (param $0 i64) (param $1 i64) (result f32) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 4) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 1) ) (call $alignfault) ) (f32.load align=2 (local.get $2) ) ) (func $SAFE_HEAP_LOAD_f32_4_4 (param $0 i64) (param $1 i64) (result f32) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 4) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 3) ) (call $alignfault) ) (f32.load (local.get $2) ) ) (func $SAFE_HEAP_LOAD_f64_8_1 (param $0 i64) (param $1 i64) (result f64) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 8) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (f64.load align=1 (local.get $2) ) ) (func $SAFE_HEAP_LOAD_f64_8_2 (param $0 i64) (param $1 i64) (result f64) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 8) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 1) ) (call $alignfault) ) (f64.load align=2 (local.get $2) ) ) (func $SAFE_HEAP_LOAD_f64_8_4 (param $0 i64) (param $1 i64) (result f64) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 8) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 3) ) (call $alignfault) ) (f64.load align=4 (local.get $2) ) ) (func $SAFE_HEAP_LOAD_f64_8_8 (param $0 i64) (param $1 i64) (result f64) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 8) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 7) ) (call $alignfault) ) (f64.load (local.get $2) ) ) (func $SAFE_HEAP_LOAD_v128_16_1 (param $0 i64) (param $1 i64) (result v128) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 16) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (v128.load align=1 (local.get $2) ) ) (func $SAFE_HEAP_LOAD_v128_16_2 (param $0 i64) (param $1 i64) (result v128) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 16) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 1) ) (call $alignfault) ) (v128.load align=2 (local.get $2) ) ) (func $SAFE_HEAP_LOAD_v128_16_4 (param $0 i64) (param $1 i64) (result v128) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 16) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 3) ) (call $alignfault) ) (v128.load align=4 (local.get $2) ) ) (func $SAFE_HEAP_LOAD_v128_16_8 (param $0 i64) (param $1 i64) (result v128) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 16) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 7) ) (call $alignfault) ) (v128.load align=8 (local.get $2) ) ) (func $SAFE_HEAP_LOAD_v128_16_16 (param $0 i64) (param $1 i64) (result v128) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 16) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 15) ) (call $alignfault) ) (v128.load (local.get $2) ) ) (func $SAFE_HEAP_STORE_i32_1_1 (param $0 i64) (param $1 i64) (param $2 i32) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 1) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (i32.store8 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_i32_2_1 (param $0 i64) (param $1 i64) (param $2 i32) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 2) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (i32.store16 align=1 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_i32_2_2 (param $0 i64) (param $1 i64) (param $2 i32) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 2) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $3) ) (i32.const 1) ) (call $alignfault) ) (i32.store16 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_i32_4_1 (param $0 i64) (param $1 i64) (param $2 i32) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 4) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (i32.store align=1 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_i32_4_2 (param $0 i64) (param $1 i64) (param $2 i32) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 4) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $3) ) (i32.const 1) ) (call $alignfault) ) (i32.store align=2 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_i32_4_4 (param $0 i64) (param $1 i64) (param $2 i32) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 4) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $3) ) (i32.const 3) ) (call $alignfault) ) (i32.store (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_i64_1_1 (param $0 i64) (param $1 i64) (param $2 i64) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 1) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (i64.store8 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_i64_2_1 (param $0 i64) (param $1 i64) (param $2 i64) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 2) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (i64.store16 align=1 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_i64_2_2 (param $0 i64) (param $1 i64) (param $2 i64) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 2) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $3) ) (i32.const 1) ) (call $alignfault) ) (i64.store16 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_i64_4_1 (param $0 i64) (param $1 i64) (param $2 i64) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 4) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (i64.store32 align=1 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_i64_4_2 (param $0 i64) (param $1 i64) (param $2 i64) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 4) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $3) ) (i32.const 1) ) (call $alignfault) ) (i64.store32 align=2 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_i64_4_4 (param $0 i64) (param $1 i64) (param $2 i64) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 4) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $3) ) (i32.const 3) ) (call $alignfault) ) (i64.store32 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_i64_8_1 (param $0 i64) (param $1 i64) (param $2 i64) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 8) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (i64.store align=1 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_i64_8_2 (param $0 i64) (param $1 i64) (param $2 i64) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 8) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $3) ) (i32.const 1) ) (call $alignfault) ) (i64.store align=2 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_i64_8_4 (param $0 i64) (param $1 i64) (param $2 i64) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 8) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $3) ) (i32.const 3) ) (call $alignfault) ) (i64.store align=4 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_i64_8_8 (param $0 i64) (param $1 i64) (param $2 i64) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 8) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $3) ) (i32.const 7) ) (call $alignfault) ) (i64.store (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_f32_4_1 (param $0 i64) (param $1 i64) (param $2 f32) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 4) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (f32.store align=1 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_f32_4_2 (param $0 i64) (param $1 i64) (param $2 f32) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 4) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $3) ) (i32.const 1) ) (call $alignfault) ) (f32.store align=2 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_f32_4_4 (param $0 i64) (param $1 i64) (param $2 f32) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 4) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $3) ) (i32.const 3) ) (call $alignfault) ) (f32.store (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_f64_8_1 (param $0 i64) (param $1 i64) (param $2 f64) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 8) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (f64.store align=1 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_f64_8_2 (param $0 i64) (param $1 i64) (param $2 f64) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 8) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $3) ) (i32.const 1) ) (call $alignfault) ) (f64.store align=2 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_f64_8_4 (param $0 i64) (param $1 i64) (param $2 f64) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 8) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $3) ) (i32.const 3) ) (call $alignfault) ) (f64.store align=4 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_f64_8_8 (param $0 i64) (param $1 i64) (param $2 f64) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 8) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $3) ) (i32.const 7) ) (call $alignfault) ) (f64.store (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_v128_16_1 (param $0 i64) (param $1 i64) (param $2 v128) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 16) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (v128.store align=1 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_v128_16_2 (param $0 i64) (param $1 i64) (param $2 v128) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 16) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $3) ) (i32.const 1) ) (call $alignfault) ) (v128.store align=2 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_v128_16_4 (param $0 i64) (param $1 i64) (param $2 v128) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 16) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $3) ) (i32.const 3) ) (call $alignfault) ) (v128.store align=4 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_v128_16_8 (param $0 i64) (param $1 i64) (param $2 v128) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 16) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $3) ) (i32.const 7) ) (call $alignfault) ) (v128.store align=8 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_v128_16_16 (param $0 i64) (param $1 i64) (param $2 v128) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 16) ) (i64.load (call $emscripten_get_sbrk_ptr) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $3) ) (i32.const 15) ) (call $alignfault) ) (v128.store (local.get $3) (local.get $2) ) ) ) (module (type $i64_i64_=>_i64 (func (param i64 i64) (result i64))) (type $i64_i64_i64_=>_none (func (param i64 i64 i64))) (type $i64_i64_=>_i32 (func (param i64 i64) (result i32))) (type $i64_i64_i32_=>_none (func (param i64 i64 i32))) (type $i64_i64_v128_=>_none (func (param i64 i64 v128))) (type $i64_i64_=>_v128 (func (param i64 i64) (result v128))) (type $i64_i64_f64_=>_none (func (param i64 i64 f64))) (type $i64_i64_=>_f64 (func (param i64 i64) (result f64))) (type $none_=>_none (func)) (type $i64_i64_f32_=>_none (func (param i64 i64 f32))) (type $i64_i64_=>_f32 (func (param i64 i64) (result f32))) (type $none_=>_i64 (func (result i64))) (import "env" "emscripten_get_sbrk_ptr" (func $foo (result i64))) (import "env" "segfault" (func $segfault)) (import "env" "alignfault" (func $alignfault)) (memory $0 (shared i64 100 100)) (func $actions (drop (call $SAFE_HEAP_LOAD_i32_4_4 (i64.const 1) (i64.const 0) ) ) (call $SAFE_HEAP_STORE_i32_4_4 (i64.const 1) (i64.const 0) (i32.const 100) ) ) (func $SAFE_HEAP_LOAD_i32_1_A (param $0 i64) (param $1 i64) (result i32) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 1) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (i32.shr_s (i32.shl (i32.atomic.load8_u (local.get $2) ) (i32.const 24) ) (i32.const 24) ) ) (func $SAFE_HEAP_LOAD_i32_1_1 (param $0 i64) (param $1 i64) (result i32) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 1) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (i32.load8_s (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i32_1_U_A (param $0 i64) (param $1 i64) (result i32) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 1) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (i32.atomic.load8_u (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i32_1_U_1 (param $0 i64) (param $1 i64) (result i32) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 1) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (i32.load8_u (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i32_2_1 (param $0 i64) (param $1 i64) (result i32) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 2) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (i32.load16_s align=1 (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i32_2_A (param $0 i64) (param $1 i64) (result i32) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 2) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 1) ) (call $alignfault) ) (i32.shr_s (i32.shl (i32.atomic.load16_u (local.get $2) ) (i32.const 16) ) (i32.const 16) ) ) (func $SAFE_HEAP_LOAD_i32_2_2 (param $0 i64) (param $1 i64) (result i32) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 2) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 1) ) (call $alignfault) ) (i32.load16_s (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i32_2_U_1 (param $0 i64) (param $1 i64) (result i32) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 2) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (i32.load16_u align=1 (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i32_2_U_A (param $0 i64) (param $1 i64) (result i32) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 2) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 1) ) (call $alignfault) ) (i32.atomic.load16_u (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i32_2_U_2 (param $0 i64) (param $1 i64) (result i32) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 2) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 1) ) (call $alignfault) ) (i32.load16_u (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i32_4_1 (param $0 i64) (param $1 i64) (result i32) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 4) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (i32.load align=1 (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i32_4_2 (param $0 i64) (param $1 i64) (result i32) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 4) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 1) ) (call $alignfault) ) (i32.load align=2 (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i32_4_A (param $0 i64) (param $1 i64) (result i32) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 4) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 3) ) (call $alignfault) ) (i32.atomic.load (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i32_4_4 (param $0 i64) (param $1 i64) (result i32) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 4) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 3) ) (call $alignfault) ) (i32.load (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i64_1_A (param $0 i64) (param $1 i64) (result i64) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 1) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (i64.shr_s (i64.shl (i64.atomic.load8_u (local.get $2) ) (i64.const 56) ) (i64.const 56) ) ) (func $SAFE_HEAP_LOAD_i64_1_1 (param $0 i64) (param $1 i64) (result i64) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 1) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (i64.load8_s (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i64_1_U_A (param $0 i64) (param $1 i64) (result i64) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 1) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (i64.atomic.load8_u (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i64_1_U_1 (param $0 i64) (param $1 i64) (result i64) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 1) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (i64.load8_u (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i64_2_1 (param $0 i64) (param $1 i64) (result i64) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 2) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (i64.load16_s align=1 (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i64_2_A (param $0 i64) (param $1 i64) (result i64) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 2) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 1) ) (call $alignfault) ) (i64.shr_s (i64.shl (i64.atomic.load16_u (local.get $2) ) (i64.const 48) ) (i64.const 48) ) ) (func $SAFE_HEAP_LOAD_i64_2_2 (param $0 i64) (param $1 i64) (result i64) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 2) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 1) ) (call $alignfault) ) (i64.load16_s (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i64_2_U_1 (param $0 i64) (param $1 i64) (result i64) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 2) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (i64.load16_u align=1 (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i64_2_U_A (param $0 i64) (param $1 i64) (result i64) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 2) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 1) ) (call $alignfault) ) (i64.atomic.load16_u (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i64_2_U_2 (param $0 i64) (param $1 i64) (result i64) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 2) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 1) ) (call $alignfault) ) (i64.load16_u (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i64_4_1 (param $0 i64) (param $1 i64) (result i64) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 4) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (i64.load32_s align=1 (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i64_4_2 (param $0 i64) (param $1 i64) (result i64) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 4) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 1) ) (call $alignfault) ) (i64.load32_s align=2 (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i64_4_A (param $0 i64) (param $1 i64) (result i64) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 4) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 3) ) (call $alignfault) ) (i64.shr_s (i64.shl (i64.atomic.load32_u (local.get $2) ) (i64.const 32) ) (i64.const 32) ) ) (func $SAFE_HEAP_LOAD_i64_4_4 (param $0 i64) (param $1 i64) (result i64) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 4) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 3) ) (call $alignfault) ) (i64.load32_s (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i64_4_U_1 (param $0 i64) (param $1 i64) (result i64) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 4) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (i64.load32_u align=1 (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i64_4_U_2 (param $0 i64) (param $1 i64) (result i64) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 4) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 1) ) (call $alignfault) ) (i64.load32_u align=2 (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i64_4_U_A (param $0 i64) (param $1 i64) (result i64) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 4) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 3) ) (call $alignfault) ) (i64.atomic.load32_u (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i64_4_U_4 (param $0 i64) (param $1 i64) (result i64) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 4) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 3) ) (call $alignfault) ) (i64.load32_u (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i64_8_1 (param $0 i64) (param $1 i64) (result i64) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 8) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (i64.load align=1 (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i64_8_2 (param $0 i64) (param $1 i64) (result i64) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 8) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 1) ) (call $alignfault) ) (i64.load align=2 (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i64_8_4 (param $0 i64) (param $1 i64) (result i64) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 8) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 3) ) (call $alignfault) ) (i64.load align=4 (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i64_8_A (param $0 i64) (param $1 i64) (result i64) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 8) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 7) ) (call $alignfault) ) (i64.atomic.load (local.get $2) ) ) (func $SAFE_HEAP_LOAD_i64_8_8 (param $0 i64) (param $1 i64) (result i64) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 8) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 7) ) (call $alignfault) ) (i64.load (local.get $2) ) ) (func $SAFE_HEAP_LOAD_f32_4_1 (param $0 i64) (param $1 i64) (result f32) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 4) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (f32.load align=1 (local.get $2) ) ) (func $SAFE_HEAP_LOAD_f32_4_2 (param $0 i64) (param $1 i64) (result f32) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 4) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 1) ) (call $alignfault) ) (f32.load align=2 (local.get $2) ) ) (func $SAFE_HEAP_LOAD_f32_4_4 (param $0 i64) (param $1 i64) (result f32) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 4) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 3) ) (call $alignfault) ) (f32.load (local.get $2) ) ) (func $SAFE_HEAP_LOAD_f64_8_1 (param $0 i64) (param $1 i64) (result f64) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 8) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (f64.load align=1 (local.get $2) ) ) (func $SAFE_HEAP_LOAD_f64_8_2 (param $0 i64) (param $1 i64) (result f64) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 8) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 1) ) (call $alignfault) ) (f64.load align=2 (local.get $2) ) ) (func $SAFE_HEAP_LOAD_f64_8_4 (param $0 i64) (param $1 i64) (result f64) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 8) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 3) ) (call $alignfault) ) (f64.load align=4 (local.get $2) ) ) (func $SAFE_HEAP_LOAD_f64_8_8 (param $0 i64) (param $1 i64) (result f64) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 8) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 7) ) (call $alignfault) ) (f64.load (local.get $2) ) ) (func $SAFE_HEAP_LOAD_v128_16_1 (param $0 i64) (param $1 i64) (result v128) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 16) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (v128.load align=1 (local.get $2) ) ) (func $SAFE_HEAP_LOAD_v128_16_2 (param $0 i64) (param $1 i64) (result v128) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 16) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 1) ) (call $alignfault) ) (v128.load align=2 (local.get $2) ) ) (func $SAFE_HEAP_LOAD_v128_16_4 (param $0 i64) (param $1 i64) (result v128) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 16) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 3) ) (call $alignfault) ) (v128.load align=4 (local.get $2) ) ) (func $SAFE_HEAP_LOAD_v128_16_8 (param $0 i64) (param $1 i64) (result v128) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 16) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 7) ) (call $alignfault) ) (v128.load align=8 (local.get $2) ) ) (func $SAFE_HEAP_LOAD_v128_16_16 (param $0 i64) (param $1 i64) (result v128) (local $2 i64) (local.set $2 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $2) (i64.const 0) ) (i64.gt_u (i64.add (local.get $2) (i64.const 16) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $2) ) (i32.const 15) ) (call $alignfault) ) (v128.load (local.get $2) ) ) (func $SAFE_HEAP_STORE_i32_1_A (param $0 i64) (param $1 i64) (param $2 i32) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 1) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (i32.atomic.store8 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_i32_1_1 (param $0 i64) (param $1 i64) (param $2 i32) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 1) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (i32.store8 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_i32_2_1 (param $0 i64) (param $1 i64) (param $2 i32) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 2) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (i32.store16 align=1 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_i32_2_A (param $0 i64) (param $1 i64) (param $2 i32) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 2) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $3) ) (i32.const 1) ) (call $alignfault) ) (i32.atomic.store16 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_i32_2_2 (param $0 i64) (param $1 i64) (param $2 i32) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 2) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $3) ) (i32.const 1) ) (call $alignfault) ) (i32.store16 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_i32_4_1 (param $0 i64) (param $1 i64) (param $2 i32) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 4) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (i32.store align=1 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_i32_4_2 (param $0 i64) (param $1 i64) (param $2 i32) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 4) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $3) ) (i32.const 1) ) (call $alignfault) ) (i32.store align=2 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_i32_4_A (param $0 i64) (param $1 i64) (param $2 i32) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 4) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $3) ) (i32.const 3) ) (call $alignfault) ) (i32.atomic.store (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_i32_4_4 (param $0 i64) (param $1 i64) (param $2 i32) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 4) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $3) ) (i32.const 3) ) (call $alignfault) ) (i32.store (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_i64_1_A (param $0 i64) (param $1 i64) (param $2 i64) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 1) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (i64.atomic.store8 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_i64_1_1 (param $0 i64) (param $1 i64) (param $2 i64) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 1) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (i64.store8 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_i64_2_1 (param $0 i64) (param $1 i64) (param $2 i64) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 2) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (i64.store16 align=1 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_i64_2_A (param $0 i64) (param $1 i64) (param $2 i64) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 2) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $3) ) (i32.const 1) ) (call $alignfault) ) (i64.atomic.store16 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_i64_2_2 (param $0 i64) (param $1 i64) (param $2 i64) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 2) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $3) ) (i32.const 1) ) (call $alignfault) ) (i64.store16 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_i64_4_1 (param $0 i64) (param $1 i64) (param $2 i64) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 4) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (i64.store32 align=1 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_i64_4_2 (param $0 i64) (param $1 i64) (param $2 i64) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 4) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $3) ) (i32.const 1) ) (call $alignfault) ) (i64.store32 align=2 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_i64_4_A (param $0 i64) (param $1 i64) (param $2 i64) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 4) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $3) ) (i32.const 3) ) (call $alignfault) ) (i64.atomic.store32 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_i64_4_4 (param $0 i64) (param $1 i64) (param $2 i64) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 4) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $3) ) (i32.const 3) ) (call $alignfault) ) (i64.store32 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_i64_8_1 (param $0 i64) (param $1 i64) (param $2 i64) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 8) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (i64.store align=1 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_i64_8_2 (param $0 i64) (param $1 i64) (param $2 i64) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 8) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $3) ) (i32.const 1) ) (call $alignfault) ) (i64.store align=2 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_i64_8_4 (param $0 i64) (param $1 i64) (param $2 i64) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 8) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $3) ) (i32.const 3) ) (call $alignfault) ) (i64.store align=4 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_i64_8_A (param $0 i64) (param $1 i64) (param $2 i64) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 8) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $3) ) (i32.const 7) ) (call $alignfault) ) (i64.atomic.store (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_i64_8_8 (param $0 i64) (param $1 i64) (param $2 i64) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 8) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $3) ) (i32.const 7) ) (call $alignfault) ) (i64.store (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_f32_4_1 (param $0 i64) (param $1 i64) (param $2 f32) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 4) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (f32.store align=1 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_f32_4_2 (param $0 i64) (param $1 i64) (param $2 f32) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 4) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $3) ) (i32.const 1) ) (call $alignfault) ) (f32.store align=2 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_f32_4_4 (param $0 i64) (param $1 i64) (param $2 f32) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 4) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $3) ) (i32.const 3) ) (call $alignfault) ) (f32.store (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_f64_8_1 (param $0 i64) (param $1 i64) (param $2 f64) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 8) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (f64.store align=1 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_f64_8_2 (param $0 i64) (param $1 i64) (param $2 f64) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 8) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $3) ) (i32.const 1) ) (call $alignfault) ) (f64.store align=2 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_f64_8_4 (param $0 i64) (param $1 i64) (param $2 f64) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 8) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $3) ) (i32.const 3) ) (call $alignfault) ) (f64.store align=4 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_f64_8_8 (param $0 i64) (param $1 i64) (param $2 f64) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 8) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $3) ) (i32.const 7) ) (call $alignfault) ) (f64.store (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_v128_16_1 (param $0 i64) (param $1 i64) (param $2 v128) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 16) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (v128.store align=1 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_v128_16_2 (param $0 i64) (param $1 i64) (param $2 v128) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 16) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $3) ) (i32.const 1) ) (call $alignfault) ) (v128.store align=2 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_v128_16_4 (param $0 i64) (param $1 i64) (param $2 v128) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 16) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $3) ) (i32.const 3) ) (call $alignfault) ) (v128.store align=4 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_v128_16_8 (param $0 i64) (param $1 i64) (param $2 v128) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 16) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $3) ) (i32.const 7) ) (call $alignfault) ) (v128.store align=8 (local.get $3) (local.get $2) ) ) (func $SAFE_HEAP_STORE_v128_16_16 (param $0 i64) (param $1 i64) (param $2 v128) (local $3 i64) (local.set $3 (i64.add (local.get $0) (local.get $1) ) ) (if (i32.or (i64.eq (local.get $3) (i64.const 0) ) (i64.gt_u (i64.add (local.get $3) (i64.const 16) ) (i64.load (call $foo) ) ) ) (call $segfault) ) (if (i32.and (i32.wrap_i64 (local.get $3) ) (i32.const 15) ) (call $alignfault) ) (v128.store (local.get $3) (local.get $2) ) ) )