]> granicus.if.org Git - clang/commitdiff
Save getObjCGCAttrKind and use it in two places
authorFariborz Jahanian <fjahanian@apple.com>
Thu, 13 Jan 2011 21:35:27 +0000 (21:35 +0000)
committerFariborz Jahanian <fjahanian@apple.com>
Thu, 13 Jan 2011 21:35:27 +0000 (21:35 +0000)
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

clang.xcodeproj/project.pbxproj
lib/CodeGen/CGDeclCXX.cpp

index d7b97b7ac2225048b0a091de6328df1412088cb6..10b307365c6bcf94c55ce52e5fc8a65b61ce2695 100644 (file)
                        isa = PBXProject;
                        buildConfigurationList = 1DEB923508733DC60010E9CD /* Build configuration list for PBXProject "clang" */;
                        compatibilityVersion = "Xcode 2.4";
-                       developmentRegion = English;
                        hasScannedForEncodings = 1;
                        knownRegions = (
                                English,
index 84e03446f667ff0a3ddf04c2ba9f5323c4fff726..8b2d6f5e66939bfc484b467a2819ae06407ebfb4 100644 (file)
@@ -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);