summaryrefslogtreecommitdiffstats
path: root/llvm/utils/TableGen/CodeGenTarget.cpp
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2012-05-27 23:20:41 +0000
committerChris Lattner <sabre@nondot.org>2012-05-27 23:20:41 +0000
commitff9e08baf983da23bfd34da7d5260697de963f48 (patch)
tree31ba2e365b7cb256619d26ea8ec8a82b81d7098f /llvm/utils/TableGen/CodeGenTarget.cpp
parent27f14297174bb203bee96fa8e5152f1f398389a1 (diff)
downloadbcm5719-llvm-ff9e08baf983da23bfd34da7d5260697de963f48.tar.gz
bcm5719-llvm-ff9e08baf983da23bfd34da7d5260697de963f48.zip
rdar://11542750 - llvm.trap should be marked no return.
llvm-svn: 157551
Diffstat (limited to 'llvm/utils/TableGen/CodeGenTarget.cpp')
-rw-r--r--llvm/utils/TableGen/CodeGenTarget.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/llvm/utils/TableGen/CodeGenTarget.cpp b/llvm/utils/TableGen/CodeGenTarget.cpp
index cf6793570a2..dfa9526cc91 100644
--- a/llvm/utils/TableGen/CodeGenTarget.cpp
+++ b/llvm/utils/TableGen/CodeGenTarget.cpp
@@ -387,6 +387,7 @@ CodeGenIntrinsic::CodeGenIntrinsic(Record *R) {
isOverloaded = false;
isCommutative = false;
canThrow = false;
+ isNoReturn = false;
if (DefName.size() <= 4 ||
std::string(DefName.begin(), DefName.begin() + 4) != "int_")
@@ -511,6 +512,8 @@ CodeGenIntrinsic::CodeGenIntrinsic(Record *R) {
isCommutative = true;
else if (Property->getName() == "Throws")
canThrow = true;
+ else if (Property->getName() == "IntrNoReturn")
+ isNoReturn = true;
else if (Property->isSubClassOf("NoCapture")) {
unsigned ArgNo = Property->getValueAsInt("ArgNo");
ArgumentAttributes.push_back(std::make_pair(ArgNo, NoCapture));
OpenPOWER on IntegriCloud