summaryrefslogtreecommitdiffstats
path: root/clang/lib
diff options
context:
space:
mode:
authorRobert Lytton <robert@xmos.com>2014-01-27 17:56:25 +0000
committerRobert Lytton <robert@xmos.com>2014-01-27 17:56:25 +0000
commit1a2292614c23d98a8421ee7de872ac18a543be4c (patch)
treebc3bc33fb4dea053f3331f06337ae80255495d0b /clang/lib
parent6bf8f803f21c1603731ac7fc3064dc3a1ef7a698 (diff)
downloadbcm5719-llvm-1a2292614c23d98a8421ee7de872ac18a543be4c.tar.gz
bcm5719-llvm-1a2292614c23d98a8421ee7de872ac18a543be4c.zip
XCore target exception handling
Implement __builtin_eh_return_data_regno() llvm-svn: 200231
Diffstat (limited to 'clang/lib')
-rw-r--r--clang/lib/Basic/Targets.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/clang/lib/Basic/Targets.cpp b/clang/lib/Basic/Targets.cpp
index e1c51efc70c..94c8ea95989 100644
--- a/clang/lib/Basic/Targets.cpp
+++ b/clang/lib/Basic/Targets.cpp
@@ -5514,6 +5514,10 @@ public:
TargetInfo::ConstraintInfo &Info) const {
return false;
}
+ virtual int getEHDataRegisterNumber(unsigned RegNo) const {
+ // R0=ExceptionPointerRegister R1=ExceptionSelectorRegister
+ return (RegNo < 2)? RegNo : -1;
+ }
};
const Builtin::Info XCoreTargetInfo::BuiltinInfo[] = {
OpenPOWER on IntegriCloud