| ;; NOTE: Assertions have been generated by update_lit_checks.py and should not be edited. |
| ;; RUN: wasm-opt -all %s -S -o - | filecheck %s |
| |
| ;; Check that we still parse the deprecated instruction mnemonics for descriptor |
| ;; casts |
| |
| (module |
| (rec |
| ;; CHECK: (rec |
| ;; CHECK-NEXT: (type $struct (descriptor $desc) (struct)) |
| (type $struct (descriptor $desc) (struct)) |
| ;; CHECK: (type $desc (describes $struct) (struct)) |
| (type $desc (describes $struct) (struct)) |
| ) |
| |
| ;; CHECK: (func $ref-cast-desc (type $3) (param $0 anyref) (param $1 (ref $desc)) (result (ref $struct)) |
| ;; CHECK-NEXT: (ref.cast_desc_eq (ref $struct) |
| ;; CHECK-NEXT: (local.get $0) |
| ;; CHECK-NEXT: (local.get $1) |
| ;; CHECK-NEXT: ) |
| ;; CHECK-NEXT: ) |
| (func $ref-cast-desc (param anyref) (param (ref $desc)) (result (ref $struct)) |
| (ref.cast_desc (ref $struct) |
| (local.get 0) |
| (local.get 1) |
| ) |
| ) |
| |
| ;; CHECK: (func $br-on-cast-desc (type $2) (param $0 anyref) (param $1 (ref $desc)) (result anyref) |
| ;; CHECK-NEXT: (block $l (result anyref) |
| ;; CHECK-NEXT: (br_on_cast_desc_eq $l anyref (ref $struct) |
| ;; CHECK-NEXT: (local.get $0) |
| ;; CHECK-NEXT: (local.get $1) |
| ;; CHECK-NEXT: ) |
| ;; CHECK-NEXT: ) |
| ;; CHECK-NEXT: ) |
| (func $br-on-cast-desc (param anyref) (param (ref $desc)) (result anyref) |
| (block $l (result anyref) |
| (br_on_cast_desc $l anyref (ref $struct) |
| (local.get 0) |
| (local.get 1) |
| ) |
| ) |
| ) |
| |
| ;; CHECK: (func $br-on-cast-desc_fail (type $2) (param $0 anyref) (param $1 (ref $desc)) (result anyref) |
| ;; CHECK-NEXT: (block $l (result anyref) |
| ;; CHECK-NEXT: (br_on_cast_desc_eq_fail $l anyref (ref $struct) |
| ;; CHECK-NEXT: (local.get $0) |
| ;; CHECK-NEXT: (local.get $1) |
| ;; CHECK-NEXT: ) |
| ;; CHECK-NEXT: ) |
| ;; CHECK-NEXT: ) |
| (func $br-on-cast-desc_fail (param anyref) (param (ref $desc)) (result anyref) |
| (block $l (result anyref) |
| (br_on_cast_desc_fail $l anyref (ref $struct) |
| (local.get 0) |
| (local.get 1) |
| ) |
| ) |
| ) |
| ) |