forked from OSchip/llvm-project
According to i686 ABI, long double size on x86 is 12 bytes not 16 bytes.
See https://gcc.gnu.org/onlinedocs/gcc-3.2/gcc/i386-and-x86-64-Options.html llvm-svn: 245459
This commit is contained in:
parent
e1292f8e4e
commit
7890a01263
|
@ -3785,7 +3785,8 @@ class MinGWX86_32TargetInfo : public WindowsX86_32TargetInfo {
|
|||
public:
|
||||
MinGWX86_32TargetInfo(const llvm::Triple &Triple)
|
||||
: WindowsX86_32TargetInfo(Triple) {
|
||||
LongDoubleWidth = LongDoubleAlign = 128;
|
||||
LongDoubleWidth = 96;
|
||||
LongDoubleAlign = 128;
|
||||
LongDoubleFormat = &llvm::APFloat::x87DoubleExtended;
|
||||
}
|
||||
void getTargetDefines(const LangOptions &Opts,
|
||||
|
|
|
@ -0,0 +1,5 @@
|
|||
// RUN: %clang_cc1 -triple i686-pc-windows-gnu -S %s -o - | FileCheck %s -check-prefix=CHECK_I686
|
||||
// CHECK_I686: lda,12
|
||||
// RUN: %clang_cc1 -triple x86_64-pc-windows-gnu -S %s -o - | FileCheck %s -check-prefix=CHECK_X86_64
|
||||
// CHECK_X86_64: lda,16
|
||||
long double lda;
|
Loading…
Reference in New Issue