]> granicus.if.org Git - clang/commitdiff
It turns out BuildAggrIvarLayout wasn't even using the shadow struct,
authorDaniel Dunbar <daniel@zuster.org>
Sun, 3 May 2009 14:22:14 +0000 (14:22 +0000)
committerDaniel Dunbar <daniel@zuster.org>
Sun, 3 May 2009 14:22:14 +0000 (14:22 +0000)
just computing it!

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@70779 91177308-0d34-0410-b5e6-96231b3b80d8

lib/CodeGen/CGObjCMac.cpp

index 35fb54fae43e7575c4c706b85c8413136a70ff85..a5450ff1be537bb1464e1a4ebfb74262deb28a01 100644 (file)
@@ -35,14 +35,6 @@ using namespace CodeGen;
 // don't belong in CGObjCRuntime either so we will live with it for
 // now.
 
-static const llvm::StructType *
-GetConcreteClassStruct(CodeGen::CodeGenModule &CGM,
-                       const ObjCInterfaceDecl *OID) {
-  assert(!OID->isForwardDecl() && "Invalid interface decl!");
-  const RecordDecl *RD = CGM.getContext().addRecordToClass(OID);
-  return cast<llvm::StructType>(CGM.getTypes().ConvertTagDeclType(RD));
-}
-
 /// FindIvarInterface - Find the interface containing the ivar. 
 ///
 /// FIXME: We shouldn't need to do this, the containing context should
@@ -3117,9 +3109,7 @@ llvm::Constant *CGObjCCommonMac::BuildIvarLayout(
   SkipIvars.clear(); 
   IvarsInfo.clear();
   
-  const llvm::StructLayout *Layout = 
-    CGM.getTargetData().getStructLayout(GetConcreteClassStruct(CGM, OI));
-  BuildAggrIvarLayout(OI, Layout, 0, RecFields, 0, ForStrongLayout, hasUnion);
+  BuildAggrIvarLayout(OI, 0, 0, RecFields, 0, ForStrongLayout, hasUnion);
   if (IvarsInfo.empty())
     return llvm::Constant::getNullValue(PtrTy);