@@ -151,7 +151,7 @@ class LLVM_LIBRARY_VISIBILITY SparcV8TargetInfo : public SparcTargetInfo {
151151public:
152152 SparcV8TargetInfo (const llvm::Triple &Triple, const TargetOptions &Opts)
153153 : SparcTargetInfo(Triple, Opts) {
154- resetDataLayout (" E-m:e-p:32:32-i64:64-f128:64-n32-S64" );
154+ resetDataLayout (" E-m:e-p:32:32-i64:64-i128:128- f128:64-n32-S64" );
155155 // NetBSD / OpenBSD use long (same as llvm default); everyone else uses int.
156156 switch (getTriple ().getOS ()) {
157157 default :
@@ -188,7 +188,7 @@ class LLVM_LIBRARY_VISIBILITY SparcV8elTargetInfo : public SparcV8TargetInfo {
188188public:
189189 SparcV8elTargetInfo (const llvm::Triple &Triple, const TargetOptions &Opts)
190190 : SparcV8TargetInfo(Triple, Opts) {
191- resetDataLayout (" e-m:e-p:32:32-i64:64-f128:64-n32-S64" );
191+ resetDataLayout (" e-m:e-p:32:32-i64:64-i128:128- f128:64-n32-S64" );
192192 }
193193};
194194
@@ -198,7 +198,7 @@ class LLVM_LIBRARY_VISIBILITY SparcV9TargetInfo : public SparcTargetInfo {
198198 SparcV9TargetInfo (const llvm::Triple &Triple, const TargetOptions &Opts)
199199 : SparcTargetInfo(Triple, Opts) {
200200 // FIXME: Support Sparc quad-precision long double?
201- resetDataLayout (" E-m:e-i64:64-n32:64-S128" );
201+ resetDataLayout (" E-m:e-i64:64-i128:128- n32:64-S128" );
202202 // This is an LP64 platform.
203203 LongWidth = LongAlign = PointerWidth = PointerAlign = 64 ;
204204
0 commit comments