diff options
author | Bill Wendling <isanbard@gmail.com> | 2011-11-07 19:38:34 +0000 |
---|---|---|
committer | Bill Wendling <isanbard@gmail.com> | 2011-11-07 19:38:34 +0000 |
commit | 7496461f44e26ebba6d69e0a74d1628dafcb7e48 (patch) | |
tree | a61c39f6e482f178a6fc503b9d172619c4b30820 /llvm/lib/Transforms/Utils/DemoteRegToStack.cpp | |
parent | 09d3af4c2b8e1bb96d4898638b4a14a59cc6d305 (diff) | |
download | llvm-7496461f44e26ebba6d69e0a74d1628dafcb7e48.zip llvm-7496461f44e26ebba6d69e0a74d1628dafcb7e48.tar.gz llvm-7496461f44e26ebba6d69e0a74d1628dafcb7e48.tar.bz2 |
Make sure we don't insert instructions before a landingpad instruction.
<rdar://problem/10405911>
llvm-svn: 144000
Diffstat (limited to 'llvm/lib/Transforms/Utils/DemoteRegToStack.cpp')
-rw-r--r-- | llvm/lib/Transforms/Utils/DemoteRegToStack.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/llvm/lib/Transforms/Utils/DemoteRegToStack.cpp b/llvm/lib/Transforms/Utils/DemoteRegToStack.cpp index 8cc2649..3ef6b01 100644 --- a/llvm/lib/Transforms/Utils/DemoteRegToStack.cpp +++ b/llvm/lib/Transforms/Utils/DemoteRegToStack.cpp @@ -97,8 +97,8 @@ AllocaInst* llvm::DemoteRegToStack(Instruction &I, bool VolatileLoads, InsertPt = II.getNormalDest()->begin(); } - for (; isa<PHINode>(InsertPt); ++InsertPt) - /* empty */; // Don't insert before any PHI nodes. + for (; isa<PHINode>(InsertPt) || isa<LandingPadInst>(InsertPt); ++InsertPt) + /* empty */; // Don't insert before any PHI nodes or landingpad instrs. new StoreInst(&I, Slot, InsertPt); return Slot; |