diff options
author | Alon Zakai <azakai@google.com> | 2021-08-09 14:20:50 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-08-09 14:20:50 -0700 |
commit | 86634774be6e060efec8f3048f82d61b8d91d5d7 (patch) | |
tree | 07beebe97d0fe235435650c233c815a8e812eaf8 /src/wasm-binary.h | |
parent | 329b3606b7f966f1ac3cbb1f9a46849ea4d5c785 (diff) | |
download | binaryen-86634774be6e060efec8f3048f82d61b8d91d5d7.tar.gz binaryen-86634774be6e060efec8f3048f82d61b8d91d5d7.tar.bz2 binaryen-86634774be6e060efec8f3048f82d61b8d91d5d7.zip |
Fix BrOn logic in RemoveUnusedBrs (#4062)
This only moves code around. visitBrOn was in the main part of the pass,
which was incorrect as it could interfere with other work being done there.
Specifically, we have a stack of Ifs there, and if we replace a BrOn with
an If, an assertion was hit. To fix this, run it like sinkBlocks(), in a separate
interleaved phase.
This fixes a bug reported by askeksa-google here:
https://github.com/WebAssembly/gc/issues/226#issuecomment-868739853
Diffstat (limited to 'src/wasm-binary.h')
0 files changed, 0 insertions, 0 deletions