| ;; NOTE: Assertions have been generated by update_lit_checks.py and should not be edited. |
| ;; RUN: wasm-opt %s -all --strip-eh -S -o - | filecheck %s |
| |
| ;; Remove all EH instructions and tags. Converts 'throw's into 'unreachable's. |
| |
| (module |
| (tag $e-i32 (param i32)) |
| (tag $e-f32 (param f32)) |
| |
| ;; CHECK: (func $throw-i32 (type $0) |
| ;; CHECK-NEXT: (unreachable) |
| ;; CHECK-NEXT: ) |
| (func $throw-i32 |
| (throw $e-i32 (i32.const 0)) |
| ) |
| ;; CHECK: (func $throw-f32 (type $0) |
| ;; CHECK-NEXT: (unreachable) |
| ;; CHECK-NEXT: ) |
| (func $throw-f32 |
| (throw $e-f32 (f32.const 0.0)) |
| ) |
| |
| ;; CHECK: (func $try-catch (type $0) |
| ;; CHECK-NEXT: (block $out |
| ;; CHECK-NEXT: (call $throw-f32) |
| ;; CHECK-NEXT: ) |
| ;; CHECK-NEXT: ) |
| (func $try-catch |
| (block $out |
| (try_table (catch_all $out) |
| (call $throw-f32) |
| ) |
| ) |
| ) |
| ) |