Declare that lowerinvoke doesn't interact with other lowering passes.
Patch written by Domagoj Babic!
llvm-svn: 28367
diff --git a/llvm/lib/Transforms/Scalar/LowerSelect.cpp b/llvm/lib/Transforms/Scalar/LowerSelect.cpp
index 27dd430..464d30d 100644
--- a/llvm/lib/Transforms/Scalar/LowerSelect.cpp
+++ b/llvm/lib/Transforms/Scalar/LowerSelect.cpp
@@ -39,10 +39,12 @@
virtual void getAnalysisUsage(AnalysisUsage &AU) const {
// This certainly destroys the CFG.
- // This is a cluster of orthogonal Transforms:
+ // This is a cluster of orthogonal Transforms:
AU.addPreserved<UnifyFunctionExitNodes>();
AU.addPreservedID(PromoteMemoryToRegisterID);
AU.addPreservedID(LowerSwitchID);
+ AU.addPreservedID(LowerInvokePassID);
+ AU.addPreservedID(LowerAllocationsID);
}
bool runOnFunction(Function &F);