summaryrefslogtreecommitdiff
path: root/contrib/llvm/tools/clang/lib/Basic/Targets.cpp
diff options
context:
space:
mode:
authorDimitry Andric <dim@FreeBSD.org>2014-02-20 21:59:15 +0000
committerDimitry Andric <dim@FreeBSD.org>2014-02-20 21:59:15 +0000
commite18c3d5a5af9931e832513fc5b24016da5ce1de7 (patch)
tree50d5ccda787645225336cebf0ac01094ca35224f /contrib/llvm/tools/clang/lib/Basic/Targets.cpp
parent48173d357a39dbd278d174bf468c543f2a1eef7a (diff)
Notes
Diffstat (limited to 'contrib/llvm/tools/clang/lib/Basic/Targets.cpp')
-rw-r--r--contrib/llvm/tools/clang/lib/Basic/Targets.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/contrib/llvm/tools/clang/lib/Basic/Targets.cpp b/contrib/llvm/tools/clang/lib/Basic/Targets.cpp
index bccd0d72d8f5..70b7ac5a9cd9 100644
--- a/contrib/llvm/tools/clang/lib/Basic/Targets.cpp
+++ b/contrib/llvm/tools/clang/lib/Basic/Targets.cpp
@@ -4529,6 +4529,13 @@ public:
UIntMaxType = UnsignedLong;
}
Int64Type = IntMaxType;
+
+ // The SPARCv8 System V ABI has long double 128-bits in size, but 64-bit
+ // aligned. The SPARCv9 SCD 2.4.1 says 16-byte aligned.
+ LongDoubleWidth = 128;
+ LongDoubleAlign = 128;
+ LongDoubleFormat = &llvm::APFloat::IEEEquad;
+ MaxAtomicPromoteWidth = MaxAtomicInlineWidth = 64;
}
virtual void getTargetDefines(const LangOptions &Opts,