void set_op(Instruction *I, MachineOperand *op) const
virtual MachineInstruction * create_Move(MachineOperand *src, MachineOperand *dst) const =0
Type::TypeID get_type() const
get the value type of the instruction
This Instruction mark the start of a basic block.
A basic block of (scheduled) machine instructions.
virtual void visit(BeginInst *I, bool copyOperands)
virtual MachineInstruction * create_Jump(MachineBasicBlock *target) const =0
static Backend * factory(JITData *JD)
void push_back(MachineInstruction *value)
Appends the given element value to the end of the container.
void insert_phi(MachinePhiInst *value)
Appends the given element value to the list of phis.
MachineInstructionSchedule::iterator insert_after(iterator pos, const MBBBuilder &value)
inserts value after the element pointed to by pos
BeginInstRef & get_target()
Proxy to encode explicit and implicit successors.
MachineBasicBlock * get_current() const
const MachineOperandDesc & get_result() const
MachineBasicBlock * new_block() const
MachineInstructionSchedule * schedule