This is an archive of the discontinued LLVM Phabricator instance.

[WebAssembly] Use llvm utility functions in EH/SjLj
ClosedPublic

Authored by aheejin on Jan 4 2022, 12:46 PM.

Details

Summary

This uses changeToCall and changeToInvokeAndSplitBasicBlock from
lib/Transforms/Utils, replacing the custom logic. One difference of
those functions from our previous logic is they delete the original
CallInst/InvokeInst, which makes them tricky to use while iterating
through instructions/BBs. So this CL gathers the candidate calls first
and run them through changeToInvokeAndSplitBasicBlock later.

Also this renames some variables.

Diff Detail

Event Timeline

aheejin created this revision.Jan 4 2022, 12:46 PM
aheejin requested review of this revision.Jan 4 2022, 12:46 PM
Herald added a project: Restricted Project. · View Herald TranscriptJan 4 2022, 12:46 PM
aheejin retitled this revision from [WebAssembly] Use llvm utility functions to [WebAssembly] Use llvm utility functions in EH/SjLj.Jan 4 2022, 12:47 PM
aheejin edited the summary of this revision. (Show Details)Jan 4 2022, 4:27 PM
dschuff accepted this revision.Jan 4 2022, 4:49 PM
This revision is now accepted and ready to land.Jan 4 2022, 4:49 PM
This revision was landed with ongoing or failed builds.Jan 4 2022, 5:48 PM
This revision was automatically updated to reflect the committed changes.