35 #define DEBUG_NAME "compiler2/ScheduleEarly"
42 LOG(
"schedule_early: " << I <<
nl);
43 for (Instruction::OperandListTy::const_iterator
i = I->
op_begin(),
53 Instruction::OperandListTy::const_iterator
i = I->
op_begin();
54 Instruction::OperandListTy::const_iterator
e = I->
op_end();
70 for ( ; i !=
e; ++
i) {
85 DT = get_Pass<DominatorPass>();
87 for (Method::InstructionListTy::const_iterator
i = M->begin(),
88 e = M->end() ;
i !=
e ; ++
i) {
This Instruction mark the start of a basic block.
void schedule_early(Instruction *I)
virtual PassUsage & get_PassUsage(PassUsage &PU) const
Set the requirements for the pass.
int depth(NodeTy *node) const
Depth of a tree node.
virtual bool run(JITData &JD)
Run the Pass.
Stores the interdependencies of a pass.
void set_schedule(const Method *M)
const_op_iterator op_begin() const
#define LOG(STMT)
Analogous to DEBUG.
virtual bool set_BeginInst(BeginInst *b)
virtual BeginInst * get_BeginInst() const
Get the corresponding BeginInst.
static PassRegistry< BasicBlockSchedulingPass > X("BasicBlockSchedulingPass")
const_op_iterator op_end() const
BeginInst * get_init_bb() const
void add_requires()
PassName is required.
Calculate the Dominator Tree.