[cfe-commits] r153216 - in /cfe/trunk: lib/AST/ASTContext.cpp test/Sema/align-x86.c

Chad Rosier mcrosier at apple.com
Wed Mar 21 13:20:48 PDT 2012


Author: mcrosier
Date: Wed Mar 21 15:20:47 2012
New Revision: 153216

URL: http://llvm.org/viewvc/llvm-project?rev=153216&view=rev
Log:
Report the natural alignment of unsigned long long, not the preferred alignment.
rdar://11054144

Modified:
    cfe/trunk/lib/AST/ASTContext.cpp
    cfe/trunk/test/Sema/align-x86.c

Modified: cfe/trunk/lib/AST/ASTContext.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/AST/ASTContext.cpp?rev=153216&r1=153215&r2=153216&view=diff
==============================================================================
--- cfe/trunk/lib/AST/ASTContext.cpp (original)
+++ cfe/trunk/lib/AST/ASTContext.cpp Wed Mar 21 15:20:47 2012
@@ -1165,7 +1165,8 @@
   if (const ComplexType* CT = T->getAs<ComplexType>())
     T = CT->getElementType().getTypePtr();
   if (T->isSpecificBuiltinType(BuiltinType::Double) ||
-      T->isSpecificBuiltinType(BuiltinType::LongLong))
+      T->isSpecificBuiltinType(BuiltinType::LongLong) ||
+      T->isSpecificBuiltinType(BuiltinType::ULongLong))
     return std::max(ABIAlign, (unsigned)getTypeSize(T));
 
   return ABIAlign;

Modified: cfe/trunk/test/Sema/align-x86.c
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Sema/align-x86.c?rev=153216&r1=153215&r2=153216&view=diff
==============================================================================
--- cfe/trunk/test/Sema/align-x86.c (original)
+++ cfe/trunk/test/Sema/align-x86.c Wed Mar 21 15:20:47 2012
@@ -9,6 +9,10 @@
 short chk1[__alignof__(g2) == 8 ? 1 : -1]; 
 short chk2[__alignof__(long long) == 8 ? 1 : -1];
 
+unsigned long long g5;
+short chk1[__alignof__(g5) == 8 ? 1 : -1]; 
+short chk2[__alignof__(unsigned long long) == 8 ? 1 : -1];
+
 _Complex double g3;
 short chk1[__alignof__(g3) == 8 ? 1 : -1]; 
 short chk2[__alignof__(_Complex double) == 8 ? 1 : -1];





More information about the cfe-commits mailing list