This is an archive of the discontinued LLVM Phabricator instance.

[WebAssembly] Fix unwind mismatch stat computation
ClosedPublic

Authored by aheejin on Oct 6 2019, 7:17 AM.

Details

Summary

There was a bug when computing the number of unwind destination
mismatches in CFGStackify. When there are many mismatched calls that
share the same (original) destination BB, they have to be counted
separately.

This also fixes a typo and runs fixUnwindMismatches only when the wasm
exception handling is enabled. This is to prevent unnecessary
computations and does not change behavior.

Event Timeline

aheejin created this revision.Oct 6 2019, 7:17 AM
Herald added a project: Restricted Project. · View Herald TranscriptOct 6 2019, 7:17 AM
aheejin updated this revision to Diff 223418.Oct 6 2019, 7:34 AM

Rebase onto D68553

dschuff accepted this revision.Oct 7 2019, 8:41 AM
This revision is now accepted and ready to land.Oct 7 2019, 8:41 AM
shchenz added a subscriber: shchenz.Oct 7 2019, 7:12 PM
shchenz added inline comments.
llvm/test/CodeGen/WebAssembly/cfg-stackify-eh.ll
706

This causes make check-llvm fail for release llc.

Need to add ; REQUIRES: asserts at the beginning?

Thank you! Done in r374015.

This revision was automatically updated to reflect the committed changes.