This is an archive of the discontinued LLVM Phabricator instance.

[WebAssembly] Fix landingpad-only case in Emscripten EH
ClosedPublic

Authored by aheejin on Jan 6 2020, 4:25 PM.

Details

Summary

Previously we didn't set Changed to true when there are only landing
pads but not invokes. This fixes it and we set Changed to true
whenever we have landing pads. (There can't be invokes without landing
pads, so that case is covered too)

The test case for this has to be a separate file because this pass is a
ModulePass and Changed is computed based on the whole module.

Diff Detail

Event Timeline

aheejin created this revision.Jan 6 2020, 4:25 PM
Herald added a project: Restricted Project. · View Herald TranscriptJan 6 2020, 4:25 PM

Unit tests: pass. 61259 tests passed, 0 failed and 736 were skipped.

clang-tidy: pass.

clang-format: pass.

Build artifacts: diff.json, clang-tidy.txt, clang-format.patch, CMakeCache.txt, console-log.txt, test-results.xml

tlively accepted this revision.Jan 6 2020, 4:44 PM

LGTM! I checked locally and this fixes https://github.com/rust-lang/rust/issues/66308. Thanks for solving this so quickly :)

This revision is now accepted and ready to land.Jan 6 2020, 4:44 PM
This revision was automatically updated to reflect the committed changes.