diff options
| -rw-r--r-- | llvm/include/llvm/IR/Instructions.h | 8 | ||||
| -rw-r--r-- | llvm/include/llvm/IR/IntrinsicInst.h | 9 | 
2 files changed, 17 insertions, 0 deletions
diff --git a/llvm/include/llvm/IR/Instructions.h b/llvm/include/llvm/IR/Instructions.h index eeea9945e8a..786fa8cdc21 100644 --- a/llvm/include/llvm/IR/Instructions.h +++ b/llvm/include/llvm/IR/Instructions.h @@ -1259,6 +1259,10 @@ public:    Value *getArgOperand(unsigned i) const { return getOperand(i); }    void setArgOperand(unsigned i, Value *v) { setOperand(i, v); } +  /// \brief Wrappers for getting the \c Use of a call argument. +  const Use &getArgOperandUse(unsigned i) const { return getOperandUse(i); } +  Use &getArgOperandUse(unsigned i) { return getOperandUse(i); } +    /// getCallingConv/setCallingConv - Get or set the calling convention of this    /// function call.    CallingConv::ID getCallingConv() const { @@ -2903,6 +2907,10 @@ public:    Value *getArgOperand(unsigned i) const { return getOperand(i); }    void setArgOperand(unsigned i, Value *v) { setOperand(i, v); } +  /// \brief Wrappers for getting the \c Use of a call argument. +  const Use &getArgOperandUse(unsigned i) const { return getOperandUse(i); } +  Use &getArgOperandUse(unsigned i) { return getOperandUse(i); } +    /// getCallingConv/setCallingConv - Get or set the calling convention of this    /// function call.    CallingConv::ID getCallingConv() const { diff --git a/llvm/include/llvm/IR/IntrinsicInst.h b/llvm/include/llvm/IR/IntrinsicInst.h index 8344c56680a..e053f7867c5 100644 --- a/llvm/include/llvm/IR/IntrinsicInst.h +++ b/llvm/include/llvm/IR/IntrinsicInst.h @@ -118,8 +118,13 @@ namespace llvm {    class MemIntrinsic : public IntrinsicInst {    public:      Value *getRawDest() const { return const_cast<Value*>(getArgOperand(0)); } +    const Use &getRawDestUse() const { return getArgOperandUse(0); } +    Use &getRawDestUse() { return getArgOperandUse(0); }      Value *getLength() const { return const_cast<Value*>(getArgOperand(2)); } +    const Use &getLengthUse() const { return getArgOperandUse(2); } +    Use &getLengthUse() { return getArgOperandUse(2); } +      ConstantInt *getAlignmentCst() const {        return cast<ConstantInt>(const_cast<Value*>(getArgOperand(3)));      } @@ -192,6 +197,8 @@ namespace llvm {      /// get* - Return the arguments to the instruction.      ///      Value *getValue() const { return const_cast<Value*>(getArgOperand(1)); } +    const Use &getValueUse() const { return getArgOperandUse(1); } +    Use &getValueUse() { return getArgOperandUse(1); }      void setValue(Value *Val) {        assert(getValue()->getType() == Val->getType() && @@ -215,6 +222,8 @@ namespace llvm {      /// get* - Return the arguments to the instruction.      ///      Value *getRawSource() const { return const_cast<Value*>(getArgOperand(1)); } +    const Use &getRawSourceUse() const { return getArgOperandUse(1); } +    Use &getRawSourceUse() { return getArgOperandUse(1); }      /// getSource - This is just like getRawSource, but it strips off any cast      /// instructions that feed it, giving the original input.  The returned  | 

