Make PruneEH update the nounwind/noreturn attributes
on functions as it calculates them.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44802 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/include/llvm/Instructions.h b/include/llvm/Instructions.h
index 2d721bb..bc5e0b4 100644
--- a/include/llvm/Instructions.h
+++ b/include/llvm/Instructions.h
@@ -937,6 +937,11 @@
return doesNotAccessMemory() || paramHasAttr(0, ParamAttr::ReadOnly);
}
+ /// @brief Determine if the call cannot return.
+ bool isNoReturn() const {
+ return paramHasAttr(0, ParamAttr::NoReturn);
+ }
+
/// @brief Determine if the call cannot unwind.
bool isNoUnwind() const {
return paramHasAttr(0, ParamAttr::NoUnwind);
@@ -1736,6 +1741,11 @@
return doesNotAccessMemory() || paramHasAttr(0, ParamAttr::ReadOnly);
}
+ /// @brief Determine if the call cannot return.
+ bool isNoReturn() const {
+ return paramHasAttr(0, ParamAttr::NoReturn);
+ }
+
/// @brief Determine if the call cannot unwind.
bool isNoUnwind() const {
return paramHasAttr(0, ParamAttr::NoUnwind);