summaryrefslogtreecommitdiffstats
path: root/clang/lib/Basic
diff options
context:
space:
mode:
authorChris Dewhurst <chris.dewhurst@lero.ie>2016-06-15 12:44:47 +0000
committerChris Dewhurst <chris.dewhurst@lero.ie>2016-06-15 12:44:47 +0000
commit0381cd7dbf50cd5159b16fed29ed7fbbf86e89f2 (patch)
treeef76cb968e2f7559e9235eede08fe2d4e14e80df /clang/lib/Basic
parent927b54e48add2022bba49adaf126a2cba6819ca2 (diff)
downloadbcm5719-llvm-0381cd7dbf50cd5159b16fed29ed7fbbf86e89f2.tar.gz
bcm5719-llvm-0381cd7dbf50cd5159b16fed29ed7fbbf86e89f2.zip
[Sparc] Change to let clang know that setjmp and longjmp intrinsics are implemented in the back-end.
Differential Revision: http://reviews.llvm.org/D19798 llvm-svn: 272782
Diffstat (limited to 'clang/lib/Basic')
-rw-r--r--clang/lib/Basic/Targets.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/clang/lib/Basic/Targets.cpp b/clang/lib/Basic/Targets.cpp
index 7f7af988a54..cc2925e8b43 100644
--- a/clang/lib/Basic/Targets.cpp
+++ b/clang/lib/Basic/Targets.cpp
@@ -6395,6 +6395,10 @@ public:
.Default(false);
}
+ bool hasSjLjLowering() const override {
+ return true;
+ }
+
ArrayRef<Builtin::Info> getTargetBuiltins() const override {
// FIXME: Implement!
return None;
@@ -6562,6 +6566,7 @@ public:
SparcV8TargetInfo(const llvm::Triple &Triple, const TargetOptions &Opts)
: SparcTargetInfo(Triple, Opts) {
resetDataLayout("E-m:e-p:32:32-i64:64-f128:64-n32-S64");
+ MaxAtomicPromoteWidth = MaxAtomicInlineWidth = 64;
// NetBSD / OpenBSD use long (same as llvm default); everyone else uses int.
switch (getTriple().getOS()) {
default:
OpenPOWER on IntegriCloud