From 1e9b8d38881c3213d1e67b0c47ab9b2c00721a5c Mon Sep 17 00:00:00 2001 From: dim Date: Fri, 25 Dec 2015 14:26:58 +0000 Subject: Import clang 3.7.1 release (r255217). --- lib/Basic/Targets.cpp | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'lib/Basic/Targets.cpp') diff --git a/lib/Basic/Targets.cpp b/lib/Basic/Targets.cpp index e4db004..9e44f7d 100644 --- a/lib/Basic/Targets.cpp +++ b/lib/Basic/Targets.cpp @@ -3968,7 +3968,13 @@ public: class MinGWX86_64TargetInfo : public WindowsX86_64TargetInfo { public: MinGWX86_64TargetInfo(const llvm::Triple &Triple) - : WindowsX86_64TargetInfo(Triple) {} + : WindowsX86_64TargetInfo(Triple) { + // Mingw64 rounds long double size and alignment up to 16 bytes, but sticks + // with x86 FP ops. Weird. + LongDoubleWidth = LongDoubleAlign = 128; + LongDoubleFormat = &llvm::APFloat::x87DoubleExtended; + } + void getTargetDefines(const LangOptions &Opts, MacroBuilder &Builder) const override { WindowsX86_64TargetInfo::getTargetDefines(Opts, Builder); -- cgit v1.1