diff options
author | John McCall <rjmccall@apple.com> | 2011-06-24 23:21:27 +0000 |
---|---|---|
committer | John McCall <rjmccall@apple.com> | 2011-06-24 23:21:27 +0000 |
commit | 0c24c808e4dce43e88abf2d5f98546b901bd4315 (patch) | |
tree | e4f8276e99677f144f3e5a4dfda860369e67da2f /lib/CodeGen/CodeGenFunction.h | |
parent | 537c3461166ce074d05fb7c96ffa98ed54c9aaa0 (diff) |
Honor objc_precise_lifetime in GC mode by feeding the value
in the variable to an inline asm which gets run when the variable
goes out of scope.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@133840 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/CodeGen/CodeGenFunction.h')
-rw-r--r-- | lib/CodeGen/CodeGenFunction.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/lib/CodeGen/CodeGenFunction.h b/lib/CodeGen/CodeGenFunction.h index fea2e6111a..717f319fd3 100644 --- a/lib/CodeGen/CodeGenFunction.h +++ b/lib/CodeGen/CodeGenFunction.h @@ -2146,6 +2146,10 @@ public: void EmitGCMemmoveCollectable(llvm::Value *DestPtr, llvm::Value *SrcPtr, QualType Ty); + /// EmitExtendGCLifetime - Given a pointer to an Objective-C object, + /// make sure it survives garbage collection until this point. + void EmitExtendGCLifetime(llvm::Value *object); + /// EmitComplexExpr - Emit the computation of the specified expression of /// complex type, returning the result. ComplexPairTy EmitComplexExpr(const Expr *E, |