From: Eric Christopher Date: Sat, 25 Mar 2017 02:55:21 +0000 (+0000) Subject: __BIGGEST_ALIGNMENT__ has always been 16 on all power platforms rather X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=6a69439a01178e409bc638398d97d8c0f861dc3a;p=clang __BIGGEST_ALIGNMENT__ has always been 16 on all power platforms rather than the default of 8 in clang, fix and update tests accordingly. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@298761 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/Basic/Targets.cpp b/lib/Basic/Targets.cpp index 0c794e9702..33fdfe7b6f 100644 --- a/lib/Basic/Targets.cpp +++ b/lib/Basic/Targets.cpp @@ -907,6 +907,7 @@ public: : TargetInfo(Triple), HasAltivec(false), HasVSX(false), HasP8Vector(false), HasP8Crypto(false), HasDirectMove(false), HasQPX(false), HasHTM(false), HasBPERMD(false), HasExtDiv(false), HasP9Vector(false) { + SuitableAlign = 128; SimdDefaultAlign = 128; LongDoubleWidth = LongDoubleAlign = 128; LongDoubleFormat = &llvm::APFloat::PPCDoubleDouble(); @@ -1750,7 +1751,6 @@ public: BoolWidth = BoolAlign = 32; //XXX support -mone-byte-bool? PtrDiffType = SignedInt; // for http://llvm.org/bugs/show_bug.cgi?id=15726 LongLongAlign = 32; - SuitableAlign = 128; resetDataLayout("E-m:o-p:32:32-f64:32:64-n32"); } BuiltinVaListKind getBuiltinVaListKind() const override { @@ -1763,7 +1763,6 @@ public: DarwinPPC64TargetInfo(const llvm::Triple &Triple, const TargetOptions &Opts) : DarwinTargetInfo(Triple, Opts) { HasAlignMac68kSupport = true; - SuitableAlign = 128; resetDataLayout("E-m:o-i64:64-n32:64"); } }; diff --git a/test/Preprocessor/init.c b/test/Preprocessor/init.c index 9d6eb70fb2..bd25334a68 100644 --- a/test/Preprocessor/init.c +++ b/test/Preprocessor/init.c @@ -5324,7 +5324,7 @@ // PPC603E:#define _ARCH_PPCGR 1 // PPC603E:#define _BIG_ENDIAN 1 // PPC603E-NOT:#define _LP64 -// PPC603E:#define __BIGGEST_ALIGNMENT__ 8 +// PPC603E:#define __BIGGEST_ALIGNMENT__ 16 // PPC603E:#define __BIG_ENDIAN__ 1 // PPC603E:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__ // PPC603E:#define __CHAR16_TYPE__ unsigned short @@ -5524,7 +5524,7 @@ // PPC64:#define _ARCH_PWR7 1 // PPC64:#define _BIG_ENDIAN 1 // PPC64:#define _LP64 1 -// PPC64:#define __BIGGEST_ALIGNMENT__ 8 +// PPC64:#define __BIGGEST_ALIGNMENT__ 16 // PPC64:#define __BIG_ENDIAN__ 1 // PPC64:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__ // PPC64:#define __CHAR16_TYPE__ unsigned short @@ -5728,7 +5728,7 @@ // PPC64LE:#define _CALL_ELF 2 // PPC64LE:#define _LITTLE_ENDIAN 1 // PPC64LE:#define _LP64 1 -// PPC64LE:#define __BIGGEST_ALIGNMENT__ 8 +// PPC64LE:#define __BIGGEST_ALIGNMENT__ 16 // PPC64LE:#define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__ // PPC64LE:#define __CHAR16_TYPE__ unsigned short // PPC64LE:#define __CHAR32_TYPE__ unsigned int @@ -6145,7 +6145,7 @@ // PPC64-LINUX:#define _ARCH_PPC64 1 // PPC64-LINUX:#define _BIG_ENDIAN 1 // PPC64-LINUX:#define _LP64 1 -// PPC64-LINUX:#define __BIGGEST_ALIGNMENT__ 8 +// PPC64-LINUX:#define __BIGGEST_ALIGNMENT__ 16 // PPC64-LINUX:#define __BIG_ENDIAN__ 1 // PPC64-LINUX:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__ // PPC64-LINUX:#define __CHAR16_TYPE__ unsigned short @@ -6351,7 +6351,7 @@ // PPC:#define _ARCH_PPC 1 // PPC:#define _BIG_ENDIAN 1 // PPC-NOT:#define _LP64 -// PPC:#define __BIGGEST_ALIGNMENT__ 8 +// PPC:#define __BIGGEST_ALIGNMENT__ 16 // PPC:#define __BIG_ENDIAN__ 1 // PPC:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__ // PPC:#define __CHAR16_TYPE__ unsigned short @@ -6542,7 +6542,7 @@ // PPC-LINUX:#define _ARCH_PPC 1 // PPC-LINUX:#define _BIG_ENDIAN 1 // PPC-LINUX-NOT:#define _LP64 -// PPC-LINUX:#define __BIGGEST_ALIGNMENT__ 8 +// PPC-LINUX:#define __BIGGEST_ALIGNMENT__ 16 // PPC-LINUX:#define __BIG_ENDIAN__ 1 // PPC-LINUX:#define __BYTE_ORDER__ __ORDER_BIG_ENDIAN__ // PPC-LINUX:#define __CHAR16_TYPE__ unsigned short