diff options
author | Alon Zakai <azakai@google.com> | 2022-10-13 14:54:45 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-10-13 21:54:45 +0000 |
commit | 3e44a9fc542572592ee1ee1bdec19bf1904faaa3 (patch) | |
tree | 13228879b1d107e51771fe8dd1da03b0d113ed92 /test | |
parent | b11a8e06f9d098160a6d0c333b485249cd544d99 (diff) | |
download | binaryen-3e44a9fc542572592ee1ee1bdec19bf1904faaa3.tar.gz binaryen-3e44a9fc542572592ee1ee1bdec19bf1904faaa3.tar.bz2 binaryen-3e44a9fc542572592ee1ee1bdec19bf1904faaa3.zip |
[Wasm GC][GUFA] Avoid Many in roots (#5142)
Instead of Many, use a proper Cone Type for the data, as appropriate.
Diffstat (limited to 'test')
-rw-r--r-- | test/lit/passes/gufa-refs.wast | 26 |
1 files changed, 13 insertions, 13 deletions
diff --git a/test/lit/passes/gufa-refs.wast b/test/lit/passes/gufa-refs.wast index a1ff92522..48f6edc34 100644 --- a/test/lit/passes/gufa-refs.wast +++ b/test/lit/passes/gufa-refs.wast @@ -2552,14 +2552,19 @@ ;; CHECK-NEXT: ) ;; CHECK-NEXT: ) ;; CHECK-NEXT: (drop - ;; CHECK-NEXT: (ref.cast_static $struct - ;; CHECK-NEXT: (select (result i31ref) - ;; CHECK-NEXT: (ref.null none) - ;; CHECK-NEXT: (i31.new - ;; CHECK-NEXT: (i32.const 0) + ;; CHECK-NEXT: (block (result nullref) + ;; CHECK-NEXT: (drop + ;; CHECK-NEXT: (ref.cast_static $struct + ;; CHECK-NEXT: (select (result i31ref) + ;; CHECK-NEXT: (ref.null none) + ;; CHECK-NEXT: (i31.new + ;; CHECK-NEXT: (i32.const 0) + ;; CHECK-NEXT: ) + ;; CHECK-NEXT: (call $import) + ;; CHECK-NEXT: ) ;; CHECK-NEXT: ) - ;; CHECK-NEXT: (call $import) ;; CHECK-NEXT: ) + ;; CHECK-NEXT: (ref.null none) ;; CHECK-NEXT: ) ;; CHECK-NEXT: ) ;; CHECK-NEXT: (drop @@ -2948,10 +2953,7 @@ ;; CHECK-NEXT: ) ;; CHECK-NEXT: ) ;; CHECK-NEXT: (drop - ;; CHECK-NEXT: (ref.eq - ;; CHECK-NEXT: (local.get $nn-struct) - ;; CHECK-NEXT: (local.get $nn-other) - ;; CHECK-NEXT: ) + ;; CHECK-NEXT: (i32.const 0) ;; CHECK-NEXT: ) ;; CHECK-NEXT: (drop ;; CHECK-NEXT: (ref.eq @@ -3022,9 +3024,7 @@ (local.get $nn-struct2) ) ) - ;; Non-null on both sides, and incompatible types, so we should be able to - ;; infer 0, but we need cone types for that. Until we have them, these are - ;; Many and so we infer nothing. TODO + ;; Non-null on both sides, and incompatible types. We can infer 0 here. (drop (ref.eq (local.get $nn-struct) |