summaryrefslogtreecommitdiffstats
path: root/clang/lib/CodeGen/CGException.cpp
diff options
context:
space:
mode:
authorJohn McCall <rjmccall@apple.com>2011-11-10 10:43:54 +0000
committerJohn McCall <rjmccall@apple.com>2011-11-10 10:43:54 +0000
commitf4beacd05964613b0be312cfc107e1f4a6aaf484 (patch)
treeab389f9cee38e12fcb74b1ebcd1c8d577dd90481 /clang/lib/CodeGen/CGException.cpp
parentc5a9aaca1183d84b5ef8ab61a7851398f28512ac (diff)
downloadbcm5719-llvm-f4beacd05964613b0be312cfc107e1f4a6aaf484.tar.gz
bcm5719-llvm-f4beacd05964613b0be312cfc107e1f4a6aaf484.zip
Whenever explicitly activating or deactivating a cleanup, we
need to provide a 'dominating IP' which is guaranteed to dominate the (de)activation point but which cannot be avoided along any execution path from the (de)activation point to the push-point of the cleanup. Using the entry block is bad mojo. llvm-svn: 144276
Diffstat (limited to 'clang/lib/CodeGen/CGException.cpp')
-rw-r--r--clang/lib/CodeGen/CGException.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/clang/lib/CodeGen/CGException.cpp b/clang/lib/CodeGen/CGException.cpp
index 5e4fb988193..15fc6a1e599 100644
--- a/clang/lib/CodeGen/CGException.cpp
+++ b/clang/lib/CodeGen/CGException.cpp
@@ -359,7 +359,7 @@ static void EmitAnyExprToExn(CodeGenFunction &CGF, const Expr *e,
/*IsInit*/ true);
// Deactivate the cleanup block.
- CGF.DeactivateCleanupBlock(cleanup);
+ CGF.DeactivateCleanupBlock(cleanup, cast<llvm::Instruction>(typedAddr));
}
llvm::Value *CodeGenFunction::getExceptionSlot() {
OpenPOWER on IntegriCloud