diff options
author | Joerg Sonnenberger <joerg@bec.de> | 2016-03-07 17:19:15 +0000 |
---|---|---|
committer | Joerg Sonnenberger <joerg@bec.de> | 2016-03-07 17:19:15 +0000 |
commit | d0be8dcbf847710c71bcbbc0188c72f1c6a5cfcb (patch) | |
tree | ff745b16ccad839e511f8da94ea0b8b4e8b36736 /clang/lib/Basic/Targets.cpp | |
parent | b123c8b7e8945a967e59b0e359316890480b68f7 (diff) | |
download | bcm5719-llvm-d0be8dcbf847710c71bcbbc0188c72f1c6a5cfcb.tar.gz bcm5719-llvm-d0be8dcbf847710c71bcbbc0188c72f1c6a5cfcb.zip |
Implement __builtin_eh_return_data_regno for SPARC and SPARC64.
llvm-svn: 262838
Diffstat (limited to 'clang/lib/Basic/Targets.cpp')
-rw-r--r-- | clang/lib/Basic/Targets.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/clang/lib/Basic/Targets.cpp b/clang/lib/Basic/Targets.cpp index 05694cc5a72..5d64aa8fecc 100644 --- a/clang/lib/Basic/Targets.cpp +++ b/clang/lib/Basic/Targets.cpp @@ -5952,6 +5952,12 @@ public: SparcTargetInfo(const llvm::Triple &Triple) : TargetInfo(Triple), SoftFloat(false) {} + int getEHDataRegisterNumber(unsigned RegNo) const override { + if (RegNo == 0) return 24; + if (RegNo == 1) return 25; + return -1; + } + bool handleTargetFeatures(std::vector<std::string> &Features, DiagnosticsEngine &Diags) override { // The backend doesn't actually handle soft float yet, but in case someone |