| ;; NOTE: Assertions have been generated by update_lit_checks.py --output=fuzz-exec and should not be edited. | |
| ;; RUN: wasm-opt %s -all --fuzz-exec -q -o /dev/null 2>&1 | filecheck %s | |
| (module | |
| (memory $0 i64 16 17) | |
| (data $0 "\00\00\00\00\00") | |
| ;; CHECK: [fuzz-exec] export memory.init.trap | |
| ;; CHECK-NEXT: [trap out of bounds segment access in memory.init] | |
| (func $memory.init.trap (export "memory.init.trap") | |
| ;; Trap on OOB on the segment offset. | |
| (memory.init $0 | |
| (i64.const 0) | |
| (i32.const -3) | |
| (i32.const 1) | |
| ) | |
| ) | |
| ;; CHECK: [fuzz-exec] export memory.init.trap2 | |
| ;; CHECK-NEXT: [trap out of bounds segment access in memory.init] | |
| (func $memory.init.trap2 (export "memory.init.trap2") | |
| ;; Trap on OOB on the size. | |
| (memory.init $0 | |
| (i64.const 0) | |
| (i32.const 1) | |
| (i32.const 10) | |
| ) | |
| ) | |
| ;; CHECK: [fuzz-exec] export memory.grow.fail | |
| ;; CHECK-NEXT: [fuzz-exec] note result: memory.grow.fail => -1 | |
| (func $memory.grow.fail (export "memory.grow.fail") (result i64) | |
| (memory.grow | |
| (i64.const -1) | |
| ) | |
| ) | |
| ) | |
| ;; CHECK: [fuzz-exec] export memory.init.trap | |
| ;; CHECK-NEXT: [trap out of bounds segment access in memory.init] | |
| ;; CHECK: [fuzz-exec] export memory.init.trap2 | |
| ;; CHECK-NEXT: [trap out of bounds segment access in memory.init] | |
| ;; CHECK: [fuzz-exec] export memory.grow.fail | |
| ;; CHECK-NEXT: [fuzz-exec] note result: memory.grow.fail => -1 | |
| ;; CHECK-NEXT: [fuzz-exec] comparing memory.grow.fail | |
| ;; CHECK-NEXT: [fuzz-exec] comparing memory.init.trap | |
| ;; CHECK-NEXT: [fuzz-exec] comparing memory.init.trap2 |