diff options
Diffstat (limited to 'include/llvm/CodeGen/MachineInstr.h')
-rw-r--r-- | include/llvm/CodeGen/MachineInstr.h | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/include/llvm/CodeGen/MachineInstr.h b/include/llvm/CodeGen/MachineInstr.h index b8e7ec5c6a..43dc78dfc5 100644 --- a/include/llvm/CodeGen/MachineInstr.h +++ b/include/llvm/CodeGen/MachineInstr.h @@ -102,7 +102,8 @@ public: return opType; } inline Value* getVRegValue () const { - assert(opType == MO_VirtualRegister || opType == MO_CCRegister); + assert(opType == MO_VirtualRegister || opType == MO_CCRegister || + opType == MO_PCRelativeDisp); return value; } inline unsigned int getMachineRegNum() const { @@ -377,8 +378,8 @@ public: // and inlining it avoids a serious circurality in link order. inline void dropAllReferences() { for (unsigned i=0, N=tempVec.size(); i < N; i++) - if (tempVec[i]->getValueType() == Value::InstructionVal) - ((Instruction*) tempVec[i])->dropAllReferences(); + if (Instruction *I = tempVec[i]->castInstruction()) + I->dropAllReferences(); } }; |