summaryrefslogtreecommitdiffstats
path: root/clang/lib/CodeGen/EHScopeStack.h
diff options
context:
space:
mode:
authorTim Shen <timshen91@gmail.com>2016-07-01 21:08:47 +0000
committerTim Shen <timshen91@gmail.com>2016-07-01 21:08:47 +0000
commit421119fd891cc68d76f28bd0d9afa78e222e3a04 (patch)
tree302448290d3e873dde526799aa6ea76c20f0e689 /clang/lib/CodeGen/EHScopeStack.h
parent1bba89612b1a03bf3f35455e2ae1e2fb3af7849a (diff)
downloadbcm5719-llvm-421119fd891cc68d76f28bd0d9afa78e222e3a04.tar.gz
bcm5719-llvm-421119fd891cc68d76f28bd0d9afa78e222e3a04.zip
[Temporary, Lifetime] Add lifetime marks for temporaries
With all MaterializeTemporaryExprs coming with a ExprWithCleanups, it's easy to add correct lifetime.end marks into the right RunCleanupsScope. Differential Revision: http://reviews.llvm.org/D20499 llvm-svn: 274385
Diffstat (limited to 'clang/lib/CodeGen/EHScopeStack.h')
-rw-r--r--clang/lib/CodeGen/EHScopeStack.h5
1 files changed, 4 insertions, 1 deletions
diff --git a/clang/lib/CodeGen/EHScopeStack.h b/clang/lib/CodeGen/EHScopeStack.h
index 8352c75d64f..4717a667d2d 100644
--- a/clang/lib/CodeGen/EHScopeStack.h
+++ b/clang/lib/CodeGen/EHScopeStack.h
@@ -89,7 +89,10 @@ enum CleanupKind : unsigned {
InactiveCleanup = 0x4,
InactiveEHCleanup = EHCleanup | InactiveCleanup,
InactiveNormalCleanup = NormalCleanup | InactiveCleanup,
- InactiveNormalAndEHCleanup = NormalAndEHCleanup | InactiveCleanup
+ InactiveNormalAndEHCleanup = NormalAndEHCleanup | InactiveCleanup,
+
+ LifetimeMarker = 0x8,
+ NormalEHLifetimeMarker = LifetimeMarker | NormalAndEHCleanup,
};
/// A stack of scopes which respond to exceptions, including cleanups
OpenPOWER on IntegriCloud