diff options
author | Heejin Ahn <aheejin@gmail.com> | 2018-06-25 01:20:21 +0000 |
---|---|---|
committer | Heejin Ahn <aheejin@gmail.com> | 2018-06-25 01:20:21 +0000 |
commit | 04c48949116d2e3407f76856476c00417abdb076 (patch) | |
tree | 073ce1dc1343c7fefeb183da238b8b1bd52c2620 /llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp | |
parent | 4934f76b58403059e810a4559dcbde27bfab65d4 (diff) | |
download | llvm-04c48949116d2e3407f76856476c00417abdb076.zip llvm-04c48949116d2e3407f76856476c00417abdb076.tar.gz llvm-04c48949116d2e3407f76856476c00417abdb076.tar.bz2 |
[WebAssembly] Add WebAssemblyException information analysis
Summary:
A WebAssemblyException object contains BBs that belong to a 'catch' part
of the try-catch-end structure. Because CFGSort requires all the BBs
within a catch part to be sorted together as it does for loops, this
pass calculates the nesting structure of catch part of exceptions in a
function. Now this assumes the use of Windows EH instructions.
Reviewers: dschuff, majnemer
Subscribers: jfb, mgorny, sbc100, jgravelle-google, sunfish, llvm-commits
Differential Revision: https://reviews.llvm.org/D44134
llvm-svn: 335439
Diffstat (limited to 'llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp')
-rw-r--r-- | llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp b/llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp index b44eb5b..02810d7 100644 --- a/llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp +++ b/llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp @@ -66,6 +66,7 @@ extern "C" void LLVMInitializeWebAssemblyTarget() { initializeWebAssemblyExplicitLocalsPass(PR); initializeWebAssemblyFixIrreducibleControlFlowPass(PR); initializeWebAssemblyLateEHPreparePass(PR); + initializeWebAssemblyExceptionInfoPass(PR); initializeWebAssemblyCFGSortPass(PR); initializeWebAssemblyCFGStackifyPass(PR); initializeWebAssemblyLowerBrUnlessPass(PR); |