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 | 1bd2556cccdb1336bf05e2e34d2d972ea484046e (patch) | |
| tree | c1757685102650639bc3d8dc5a15fcc77018152f /clang/lib/CodeGen/CodeGenFunction.h | |
| parent | 6e3dfa6025c301df749adb1251a9ea592bffb391 (diff) | |
| download | llvm-1bd2556cccdb1336bf05e2e34d2d972ea484046e.zip llvm-1bd2556cccdb1336bf05e2e34d2d972ea484046e.tar.gz llvm-1bd2556cccdb1336bf05e2e34d2d972ea484046e.tar.bz2 | |
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.
llvm-svn: 133840
Diffstat (limited to 'clang/lib/CodeGen/CodeGenFunction.h')
| -rw-r--r-- | clang/lib/CodeGen/CodeGenFunction.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/clang/lib/CodeGen/CodeGenFunction.h b/clang/lib/CodeGen/CodeGenFunction.h index fea2e61..717f319 100644 --- a/clang/lib/CodeGen/CodeGenFunction.h +++ b/clang/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, |
