diff options
author | Fariborz Jahanian <fjahanian@apple.com> | 2011-01-13 21:35:27 +0000 |
---|---|---|
committer | Fariborz Jahanian <fjahanian@apple.com> | 2011-01-13 21:35:27 +0000 |
commit | 0990b00ba0627d76d53432afe729041ca3f4579b (patch) | |
tree | cde632c93ba613eafde161a5b1f568774486253a /lib/CodeGen/CGDeclCXX.cpp | |
parent | d1d8ddc5bae35610c243cc92812e72b83667d227 (diff) |
Save getObjCGCAttrKind and use it in two places
for efficiancy (still part of //rdar://8761767).
Per John's comment.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@123401 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/CodeGen/CGDeclCXX.cpp')
-rw-r--r-- | lib/CodeGen/CGDeclCXX.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/lib/CodeGen/CGDeclCXX.cpp b/lib/CodeGen/CGDeclCXX.cpp index 84e03446f6..8b2d6f5e66 100644 --- a/lib/CodeGen/CGDeclCXX.cpp +++ b/lib/CodeGen/CGDeclCXX.cpp @@ -36,10 +36,11 @@ static void EmitDeclInit(CodeGenFunction &CGF, const VarDecl &D, if (!CGF.hasAggregateLLVMType(T)) { llvm::Value *V = CGF.EmitScalarExpr(Init); CodeGenModule &CGM = CGF.CGM; - if (CGF.getContext().getObjCGCAttrKind(T) == Qualifiers::Strong) + Qualifiers::GC GCAttr = CGM.getContext().getObjCGCAttrKind(T); + if (GCAttr == Qualifiers::Strong) CGM.getObjCRuntime().EmitObjCGlobalAssign(CGF, V, DeclPtr, D.isThreadSpecified()); - else if (CGF.getContext().getObjCGCAttrKind(T) == Qualifiers::Weak) + else if (GCAttr == Qualifiers::Weak) CGM.getObjCRuntime().EmitObjCWeakAssign(CGF, V, DeclPtr); else CGF.EmitStoreOfScalar(V, DeclPtr, isVolatile, Alignment, T); |