summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorBill Wendling <isanbard@gmail.com>2012-10-03 17:54:26 +0000
committerBill Wendling <isanbard@gmail.com>2012-10-03 17:54:26 +0000
commit847d165459a8d4c30b57c896c7a7e2722f800f82 (patch)
treea29777fe7db5cc87e93294a8c885722c2c0be44b /include
parent565ebde5fea42789c7df8a49ce1e270d49d525a1 (diff)
downloadllvm-847d165459a8d4c30b57c896c7a7e2722f800f82.tar.gz
llvm-847d165459a8d4c30b57c896c7a7e2722f800f82.tar.bz2
llvm-847d165459a8d4c30b57c896c7a7e2722f800f82.tar.xz
Add methods which query for the specific attribute instead of using the
enums. This allows for better encapsulation of the Attributes class. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@165132 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include')
-rw-r--r--include/llvm/Instructions.h16
-rw-r--r--include/llvm/Support/CallSite.h20
2 files changed, 36 insertions, 0 deletions
diff --git a/include/llvm/Instructions.h b/include/llvm/Instructions.h
index 7a0379e371..a607c84c5b 100644
--- a/include/llvm/Instructions.h
+++ b/include/llvm/Instructions.h
@@ -1272,6 +1272,14 @@ public:
return paramHasAttr(~0, N);
}
+ /// @brief Determine whether the call or the callee has the given attributes.
+ bool paramHasSExtAttr(unsigned i) const;
+ bool paramHasZExtAttr(unsigned i) const;
+ bool paramHasInRegAttr(unsigned i) const;
+ bool paramHasStructRetAttr(unsigned i) const;
+ bool paramHasNestAttr(unsigned i) const;
+ bool paramHasByValAttr(unsigned i) const;
+
/// @brief Determine whether the call or the callee has the given attribute.
bool paramHasAttr(unsigned i, Attributes attr) const;
@@ -3034,6 +3042,14 @@ public:
return paramHasAttr(~0, N);
}
+ /// @brief Determine whether the call or the callee has the given attributes.
+ bool paramHasSExtAttr(unsigned i) const;
+ bool paramHasZExtAttr(unsigned i) const;
+ bool paramHasInRegAttr(unsigned i) const;
+ bool paramHasStructRetAttr(unsigned i) const;
+ bool paramHasNestAttr(unsigned i) const;
+ bool paramHasByValAttr(unsigned i) const;
+
/// @brief Determine whether the call or the callee has the given attribute.
bool paramHasAttr(unsigned i, Attributes attr) const;
diff --git a/include/llvm/Support/CallSite.h b/include/llvm/Support/CallSite.h
index 8905e1e33b..3e1a2f5822 100644
--- a/include/llvm/Support/CallSite.h
+++ b/include/llvm/Support/CallSite.h
@@ -189,6 +189,26 @@ public:
CALLSITE_DELEGATE_GETTER(hasFnAttr(N));
}
+ /// paramHas*Attr - whether the call or the callee has the given attribute.
+ bool paramHasSExtAttr(unsigned i) const {
+ CALLSITE_DELEGATE_GETTER(paramHasSExtAttr(i));
+ }
+ bool paramHasZExtAttr(unsigned i) const {
+ CALLSITE_DELEGATE_GETTER(paramHasZExtAttr(i));
+ }
+ bool paramHasInRegAttr(unsigned i) const {
+ CALLSITE_DELEGATE_GETTER(paramHasInRegAttr(i));
+ }
+ bool paramHasStructRetAttr(unsigned i) const {
+ CALLSITE_DELEGATE_GETTER(paramHasStructRetAttr(i));
+ }
+ bool paramHasNestAttr(unsigned i) const {
+ CALLSITE_DELEGATE_GETTER(paramHasNestAttr(i));
+ }
+ bool paramHasByValAttr(unsigned i) const {
+ CALLSITE_DELEGATE_GETTER(paramHasByValAttr(i));
+ }
+
/// paramHasAttr - whether the call or the callee has the given attribute.
bool paramHasAttr(uint16_t i, Attributes attr) const {
CALLSITE_DELEGATE_GETTER(paramHasAttr(i, attr));