[cfe-commits] r77491 - in /cfe/trunk: clang.xcodeproj/project.pbxproj lib/AST/RecordLayoutBuilder.cpp lib/CodeGen/CGRecordLayoutBuilder.cpp lib/CodeGen/TargetABIInfo.cpp

Fariborz Jahanian fjahanian at apple.com
Wed Jul 29 11:50:08 PDT 2009


Author: fjahanian
Date: Wed Jul 29 13:50:06 2009
New Revision: 77491

URL: http://llvm.org/viewvc/llvm-project?rev=77491&view=rev
Log:
No longer need to keep base class offsets in the offset
table as it has its own place now.

Modified:
    cfe/trunk/clang.xcodeproj/project.pbxproj
    cfe/trunk/lib/AST/RecordLayoutBuilder.cpp
    cfe/trunk/lib/CodeGen/CGRecordLayoutBuilder.cpp
    cfe/trunk/lib/CodeGen/TargetABIInfo.cpp

Modified: cfe/trunk/clang.xcodeproj/project.pbxproj
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/clang.xcodeproj/project.pbxproj?rev=77491&r1=77490&r2=77491&view=diff

==============================================================================
--- cfe/trunk/clang.xcodeproj/project.pbxproj (original)
+++ cfe/trunk/clang.xcodeproj/project.pbxproj Wed Jul 29 13:50:06 2009
@@ -1056,10 +1056,10 @@
 				35EF676F0DAD1D2C00B19414 /* SemaDeclCXX.cpp */,
 				DE704B250D0FBEBE009C7762 /* SemaDeclObjC.cpp */,
 				DE67E7100C020ED400F66BC5 /* SemaExpr.cpp */,
-				DE67E70E0C020ECF00F66BC5 /* SemaExprCXX.cpp */,
 				DE47999B0D2EBE1A00706D2D /* SemaExprObjC.cpp */,
 				3557D1EF0EB13BB700C59739 /* SemaInherit.cpp */,
 				DE3B921C0EB1A81400D01046 /* SemaInherit.h */,
+				DE67E70E0C020ECF00F66BC5 /* SemaExprCXX.cpp */,
 				3599299A0DE2425300A8A33E /* SemaInit.cpp */,
 				357EA27C0F2526F300439B60 /* SemaLookup.cpp */,
 				35E194680ECB82FB00F21733 /* SemaNamedCast.cpp */,

Modified: cfe/trunk/lib/AST/RecordLayoutBuilder.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/AST/RecordLayoutBuilder.cpp?rev=77491&r1=77490&r2=77491&view=diff

==============================================================================
--- cfe/trunk/lib/AST/RecordLayoutBuilder.cpp (original)
+++ cfe/trunk/lib/AST/RecordLayoutBuilder.cpp Wed Jul 29 13:50:06 2009
@@ -54,9 +54,6 @@
   Bases.push_back(RD);
   BaseOffsets.push_back(Size);
 
-  // Non-virtual base class has offset too.
-  FieldOffsets.push_back(Size);
-
   // Reserve space for this base.
   Size += BaseSize;
   

Modified: cfe/trunk/lib/CodeGen/CGRecordLayoutBuilder.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/CodeGen/CGRecordLayoutBuilder.cpp?rev=77491&r1=77490&r2=77491&view=diff

==============================================================================
--- cfe/trunk/lib/CodeGen/CGRecordLayoutBuilder.cpp (original)
+++ cfe/trunk/lib/CodeGen/CGRecordLayoutBuilder.cpp Wed Jul 29 13:50:06 2009
@@ -199,9 +199,6 @@
   const ASTRecordLayout &Layout = Types.getContext().getASTRecordLayout(D);
   
   unsigned FieldNo = 0;
-  // FIXME. This will probably change when virtual bases are supported.
-  if (const CXXRecordDecl *CXXRD = dyn_cast<CXXRecordDecl>(D))
-    FieldNo += CXXRD->getNumBases();
 
   for (RecordDecl::field_iterator Field = D->field_begin(), 
        FieldEnd = D->field_end(); Field != FieldEnd; ++Field, ++FieldNo) {

Modified: cfe/trunk/lib/CodeGen/TargetABIInfo.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/CodeGen/TargetABIInfo.cpp?rev=77491&r1=77490&r2=77491&view=diff

==============================================================================
--- cfe/trunk/lib/CodeGen/TargetABIInfo.cpp (original)
+++ cfe/trunk/lib/CodeGen/TargetABIInfo.cpp Wed Jul 29 13:50:06 2009
@@ -723,10 +723,6 @@
     // Reset Lo class, this will be recomputed.
     Current = NoClass;
     unsigned idx = 0;
-    // FIXME. This will probably change when virtual bases are supported.
-    if (const CXXRecordDecl *CXXRD = dyn_cast<CXXRecordDecl>(RD))
-      idx += CXXRD->getNumBases();
-
     for (RecordDecl::field_iterator i = RD->field_begin(), e = RD->field_end();
            i != e; ++i, ++idx) {
       uint64_t Offset = OffsetBase + Layout.getFieldOffset(idx);





More information about the cfe-commits mailing list