diff options
author | Bill Wendling <isanbard@gmail.com> | 2012-10-03 17:54:26 +0000 |
---|---|---|
committer | Bill Wendling <isanbard@gmail.com> | 2012-10-03 17:54:26 +0000 |
commit | 847d165459a8d4c30b57c896c7a7e2722f800f82 (patch) | |
tree | a29777fe7db5cc87e93294a8c885722c2c0be44b /include | |
parent | 565ebde5fea42789c7df8a49ce1e270d49d525a1 (diff) | |
download | llvm-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.h | 16 | ||||
-rw-r--r-- | include/llvm/Support/CallSite.h | 20 |
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)); |