From 71b09bbb07c5ef6f971947578af4a3569a8f90d2 Mon Sep 17 00:00:00 2001 From: Andrew Lenharth Date: Tue, 22 Nov 2005 21:45:19 +0000 Subject: turns out, demotion and invokes and critical edges don't mix llvm-svn: 24487 --- llvm/lib/Transforms/Scalar/Reg2Mem.cpp | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'llvm/lib/Transforms/Scalar') diff --git a/llvm/lib/Transforms/Scalar/Reg2Mem.cpp b/llvm/lib/Transforms/Scalar/Reg2Mem.cpp index b04c362a25d..e964d2b466c 100644 --- a/llvm/lib/Transforms/Scalar/Reg2Mem.cpp +++ b/llvm/lib/Transforms/Scalar/Reg2Mem.cpp @@ -34,6 +34,10 @@ namespace { struct RegToMem : public FunctionPass { + virtual void getAnalysisUsage(AnalysisUsage &AU) const { + AU.addRequiredID(BreakCriticalEdgesID); + } + bool valueEscapes(Instruction* i) { BasicBlock* bb = i->getParent(); for(Value::use_iterator ii = i->use_begin(), ie = i->use_end(); -- cgit v1.2.3