forked from OSchip/llvm-project
Fixed up my changes to add support for cloning Machine Instructions.
llvm-svn: 13665
This commit is contained in:
parent
ee4dcae9ba
commit
9953d86e63
|
@ -398,9 +398,6 @@ public:
|
|||
const MachineBasicBlock* getParent() const { return parent; }
|
||||
MachineBasicBlock* getParent() { return parent; }
|
||||
|
||||
//void setParent(const MachineBasicBlock *MBB) { parent = MBB; }
|
||||
void setParent(MachineBasicBlock *MBB) { parent = MBB; }
|
||||
|
||||
/// getOpcode - Returns the opcode of this MachineInstr.
|
||||
///
|
||||
const int getOpcode() const { return Opcode; }
|
||||
|
@ -461,10 +458,8 @@ public:
|
|||
MachineOperand::MO_VirtualRegister, V);
|
||||
}
|
||||
|
||||
//Clone Instruction
|
||||
//Create a copy of 'this' instruction that is
|
||||
//identical in all ways except the following: The instruction has no
|
||||
//parent The instruction has no name
|
||||
/// clone - Create a copy of 'this' instruction that is identical in
|
||||
/// all ways except the the instruction has no parent, prev, or next.
|
||||
MachineInstr* clone();
|
||||
|
||||
//
|
||||
|
|
|
@ -73,7 +73,8 @@ MachineInstr::MachineInstr(MachineBasicBlock *MBB, short opcode,
|
|||
MachineInstr::MachineInstr(const MachineInstr &MI) {
|
||||
Opcode = MI.getOpcode();
|
||||
numImplicitRefs = MI.getNumImplicitRefs();
|
||||
|
||||
operands.reserve(MI.getNumOperands());
|
||||
|
||||
//Add operands
|
||||
for(unsigned i=0; i < MI.getNumOperands(); ++i)
|
||||
operands.push_back(MachineOperand(MI.getOperand(i)));
|
||||
|
@ -89,7 +90,7 @@ MachineInstr::~MachineInstr()
|
|||
///all ways except the following: The instruction has no parent The
|
||||
///instruction has no name
|
||||
MachineInstr* MachineInstr::clone() {
|
||||
MachineInstr* newInst = new MachineInstr(*this);
|
||||
return new MachineInstr(*this);
|
||||
}
|
||||
|
||||
/// OperandComplete - Return true if it's illegal to add a new operand
|
||||
|
|
Loading…
Reference in New Issue