From: Chris Dewhurst Date: Wed, 15 Jun 2016 12:44:47 +0000 (+0000) Subject: [Sparc] Change to let clang know that setjmp and longjmp intrinsics are implemented... X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=b9953be781c9f0d7a4909f9f52542da8a9228210;p=clang [Sparc] Change to let clang know that setjmp and longjmp intrinsics are implemented in the back-end. Differential Revision: http://reviews.llvm.org/D19798 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@272782 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/Basic/Targets.cpp b/lib/Basic/Targets.cpp index 7f7af988a5..cc2925e8b4 100644 --- a/lib/Basic/Targets.cpp +++ b/lib/Basic/Targets.cpp @@ -6395,6 +6395,10 @@ public: .Default(false); } + bool hasSjLjLowering() const override { + return true; + } + ArrayRef 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: