diff options
author | Alon Zakai <azakai@google.com> | 2021-01-28 00:18:43 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-01-27 16:18:43 -0800 |
commit | 53c471a445ef26eac7befc3f3a5e0a53870df8cb (patch) | |
tree | 419fb53072864affda454f942528416c258136c8 /test/heap-types.wast.fromBinary | |
parent | a5aa66c52e0b92597a3b90cf34ccc3b7dee775d0 (diff) | |
download | binaryen-53c471a445ef26eac7befc3f3a5e0a53870df8cb.tar.gz binaryen-53c471a445ef26eac7befc3f3a5e0a53870df8cb.tar.bz2 binaryen-53c471a445ef26eac7befc3f3a5e0a53870df8cb.zip |
[GC] Update br_on_cast: the text format also no longer has a heap type (#3523)
As a result, we cannot handle a br_on_cast with an unreachable RTT. The
binary format solves the problem by ignoring unreachable code, and this makes
the text format do the same.
A nice benefit of this is that we can remove the castType extra field.
Diffstat (limited to 'test/heap-types.wast.fromBinary')
-rw-r--r-- | test/heap-types.wast.fromBinary | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/test/heap-types.wast.fromBinary b/test/heap-types.wast.fromBinary index 9f0220c53..d1003a685 100644 --- a/test/heap-types.wast.fromBinary +++ b/test/heap-types.wast.fromBinary @@ -184,15 +184,17 @@ (drop (block $label$1 (result (ref null ${i8_mut:i16_ref?|{i32_f32_f64}|_mut:ref?|{i32_f32_f64}|})) (local.set $temp.A - (br_on_cast $label$1 ${i8_mut:i16_ref?|{i32_f32_f64}|_mut:ref?|{i32_f32_f64}|} + (br_on_cast $label$1 (ref.null ${i32_f32_f64}) (rtt.canon ${i8_mut:i16_ref?|{i32_f32_f64}|_mut:ref?|{i32_f32_f64}|}) ) ) - (drop - (ref.null ${i32_f32_f64}) + (block $label$2 + (drop + (ref.null ${i32_f32_f64}) + ) + (unreachable) ) - (unreachable) ) ) ) |