diff options
author | Roman Divacky <rdivacky@freebsd.org> | 2012-03-13 19:20:17 +0000 |
---|---|---|
committer | Roman Divacky <rdivacky@freebsd.org> | 2012-03-13 19:20:17 +0000 |
commit | efe9c0dffc174d92c255e1ec77f791ef007102dc (patch) | |
tree | 485e192b87a707c79f0db39357cd887872e12378 | |
parent | 00b43848e4a320b0845c1004694fa50920096c75 (diff) |
Fix the long double to be of width/align 64. Rename va_list_test to
powerpc_types and add testing for the (long) double there.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@152647 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | lib/Basic/Targets.cpp | 8 | ||||
-rw-r--r-- | test/CodeGen/powerpc_types.c (renamed from test/CodeGen/va_list_test.c) | 4 |
2 files changed, 10 insertions, 2 deletions
diff --git a/lib/Basic/Targets.cpp b/lib/Basic/Targets.cpp index 85dfd78570..8ca91b3a37 100644 --- a/lib/Basic/Targets.cpp +++ b/lib/Basic/Targets.cpp @@ -872,8 +872,10 @@ public: break; } - if (getTriple().getOS() == llvm::Triple::FreeBSD) + if (getTriple().getOS() == llvm::Triple::FreeBSD) { + LongDoubleWidth = LongDoubleAlign = 64; LongDoubleFormat = &llvm::APFloat::IEEEdouble; + } } virtual const char *getVAListDeclaration() const { @@ -900,8 +902,10 @@ public: 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-v128:128:128-n32:64"; - if (getTriple().getOS() == llvm::Triple::FreeBSD) + if (getTriple().getOS() == llvm::Triple::FreeBSD) { + LongDoubleWidth = LongDoubleAlign = 64; LongDoubleFormat = &llvm::APFloat::IEEEdouble; + } } virtual const char *getVAListDeclaration() const { return "typedef char* __builtin_va_list;"; diff --git a/test/CodeGen/va_list_test.c b/test/CodeGen/powerpc_types.c index 74f7837d2d..b7d0f5de49 100644 --- a/test/CodeGen/va_list_test.c +++ b/test/CodeGen/powerpc_types.c @@ -4,3 +4,7 @@ int va_list_size = sizeof(va_list); // SVR4-CHECK: va_list_size = global i32 12, align 4 +int long_double_size = sizeof(long double); +// SVR4-CHECK: long_double_size = global i32 8, align 4 +int double_size = sizeof(double); +// SVR4-CHECK: double_size = global i32 8, align 4 |