X-Git-Url: http://demsky.eecs.uci.edu/git/?a=blobdiff_plain;f=include%2Fllvm%2FiMemory.h;h=09c94a2c77db62203120acfa34f89a2d66a5b43a;hb=9fff7e194a2d8aa3abe92efa506b1fbe83583f53;hp=c198aebd70c6d958bcc32de35d741e41b94ffb45;hpb=e87e1c9aa947e6558412b6517308410cd0f5aea4;p=oota-llvm.git diff --git a/include/llvm/iMemory.h b/include/llvm/iMemory.h index c198aebd70c..09c94a2c77d 100644 --- a/include/llvm/iMemory.h +++ b/include/llvm/iMemory.h @@ -120,7 +120,7 @@ struct FreeInst : public Instruction { virtual Instruction *clone() const { return new FreeInst(Operands[0]); } - virtual bool hasSideEffects() const { return true; } + virtual bool mayWriteToMemory() const { return true; } // Methods for support type inquiry through isa, cast, and dyn_cast: static inline bool classof(const FreeInst *) { return true; } @@ -150,6 +150,7 @@ public: Value *getPointerOperand() { return getOperand(0); } const Value *getPointerOperand() const { return getOperand(0); } + static unsigned getPointerOperandIndex() { return 0U; } // Methods for support type inquiry through isa, cast, and dyn_cast: static inline bool classof(const LoadInst *) { return true; } @@ -176,10 +177,11 @@ public: StoreInst(Value *Val, Value *Ptr, Instruction *InsertBefore = 0); virtual Instruction *clone() const { return new StoreInst(*this); } - virtual bool hasSideEffects() const { return true; } + virtual bool mayWriteToMemory() const { return true; } Value *getPointerOperand() { return getOperand(1); } const Value *getPointerOperand() const { return getOperand(1); } + static unsigned getPointerOperandIndex() { return 1U; } // Methods for support type inquiry through isa, cast, and dyn_cast: static inline bool classof(const StoreInst *) { return true; } @@ -238,7 +240,10 @@ public: const Value *getPointerOperand() const { return getOperand(0); } - + static unsigned getPointerOperandIndex() { + return 0U; // get index for modifying correct operand + } + inline unsigned getNumIndices() const { // Note: always non-negative return getNumOperands() - 1; }