Fixed in r141617. Thanks for that Eli! - Lang.
On Oct 10, 2011, at 5:37 PM, Eli Friedman wrote: > On Mon, Oct 10, 2011 at 4:44 PM, Lang Hames <[email protected]> wrote: >> Author: lhames >> Date: Mon Oct 10 18:44:43 2011 >> New Revision: 141601 >> >> URL: http://llvm.org/viewvc/llvm-project?rev=141601&view=rev >> Log: >> Update target data strings for ARM and X86 to include the natural stack >> alignment parameter "S<size>" that was introduced in r141599. >> >> >> Modified: >> cfe/trunk/lib/Basic/Targets.cpp >> >> Modified: cfe/trunk/lib/Basic/Targets.cpp >> URL: >> http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Basic/Targets.cpp?rev=141601&r1=141600&r2=141601&view=diff >> ============================================================================== >> --- cfe/trunk/lib/Basic/Targets.cpp (original) >> +++ cfe/trunk/lib/Basic/Targets.cpp Mon Oct 10 18:44:43 2011 >> @@ -1974,7 +1974,7 @@ >> LongDoubleAlign = 32; >> DescriptionString = "e-p:32:32:32-i1:8:8-i8:8:8-i16:16:16-i32:32:32-" >> >> "i64:32:64-f32:32:32-f64:32:64-v64:64:64-v128:128:128-" >> - "a0:0:64-f80:32:32-n8:16:32"; >> + "a0:0:64-f80:32:32-n8:16:32-S32"; > > x86-32 Linux actually uses 128-bit stack alignment. And I think > that's true for most x86-32 platforms besides Windows. > > -Eli > >> SizeType = UnsignedInt; >> PtrDiffType = SignedInt; >> IntPtrType = SignedInt; >> @@ -2020,7 +2020,7 @@ >> IntPtrType = SignedLong; >> DescriptionString = "e-p:32:32:32-i1:8:8-i8:8:8-i16:16:16-i32:32:32-" >> >> "i64:32:64-f32:32:32-f64:32:64-v64:64:64-v128:128:128-" >> - "a0:0:64-f80:128:128-n8:16:32"; >> + "a0:0:64-f80:128:128-n8:16:32-S128"; >> HasAlignMac68kSupport = true; >> } >> >> @@ -2038,7 +2038,7 @@ >> DoubleAlign = LongLongAlign = 64; >> DescriptionString = "e-p:32:32:32-i1:8:8-i8:8:8-i16:16:16-i32:32:32-" >> >> "i64:64:64-f32:32:32-f64:64:64-f80:128:128-v64:64:64-" >> - "v128:128:128-a0:0:64-f80:32:32-n8:16:32"; >> + "v128:128:128-a0:0:64-f80:32:32-n8:16:32-S32"; >> } >> virtual void getTargetDefines(const LangOptions &Opts, >> MacroBuilder &Builder) const { >> @@ -2108,7 +2108,7 @@ >> DoubleAlign = LongLongAlign = 64; >> DescriptionString = "e-p:32:32:32-i1:8:8-i8:8:8-i16:16:16-i32:32:32-" >> >> "i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-" >> - "a0:0:64-f80:32:32-n8:16:32"; >> + "a0:0:64-f80:32:32-n8:16:32-S32"; >> } >> virtual void getTargetDefines(const LangOptions &Opts, >> MacroBuilder &Builder) const { >> @@ -2215,7 +2215,7 @@ >> >> DescriptionString = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-" >> >> "i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-" >> - "a0:0:64-s0:64:64-f80:128:128-n8:16:32:64"; >> + "a0:0:64-s0:64:64-f80:128:128-n8:16:32:64-S128"; >> >> // Use fpret only for long double. >> RealTypeUsesObjCFPRet = (1 << TargetInfo::LongDouble); >> @@ -2382,11 +2382,11 @@ >> // so set preferred for small types to 32. >> DescriptionString = >> ("e-p:32:32:32-i1:8:32-i8:8:32-i16:16:32-i32:32:32-" >> "i64:64:64-f32:32:32-f64:64:64-" >> - "v64:64:64-v128:64:128-a0:0:32-n32"); >> + "v64:64:64-v128:64:128-a0:0:32-n32-S64"); >> } else { >> DescriptionString = ("e-p:32:32:32-i1:8:8-i8:8:8-i16:16:16-i32:32:32-" >> "i64:64:64-f32:32:32-f64:64:64-" >> - "v64:64:64-v128:64:128-a0:0:64-n32"); >> + "v64:64:64-v128:64:128-a0:0:64-n32-S64"); >> } >> >> // ARM targets default to using the ARM C++ ABI. >> @@ -2424,11 +2424,11 @@ >> // so set preferred for small types to 32. >> DescriptionString = >> ("e-p:32:32:32-i1:8:32-i8:8:32-i16:16:32-i32:32:32-" >> "i64:32:64-f32:32:32-f64:32:64-" >> - "v64:32:64-v128:32:128-a0:0:32-n32"); >> + "v64:32:64-v128:32:128-a0:0:32-n32-S32"); >> } else { >> DescriptionString = >> ("e-p:32:32:32-i1:8:8-i8:8:8-i16:16:16-i32:32:32-" >> "i64:32:64-f32:32:32-f64:32:64-" >> - "v64:32:64-v128:32:128-a0:0:32-n32"); >> + "v64:32:64-v128:32:128-a0:0:32-n32-S32"); >> } >> >> // FIXME: Override "preferred align" for double and long long. >> >> >> _______________________________________________ >> cfe-commits mailing list >> [email protected] >> http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits >> > > _______________________________________________ > cfe-commits mailing list > [email protected] > http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits _______________________________________________ cfe-commits mailing list [email protected] http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
