LLVM API Documentation
#include <MSSchedule.h>
Collaboration diagram for llvm::MSSchedule:
Public Types | |
typedef std::map< int, std::vector< MSchedGraphNode * > >::iterator | schedule_iterator |
typedef std::map< int, std::vector< MSchedGraphNode * > >::const_iterator | schedule_const_iterator |
typedef std::vector< std::pair< MachineInstr *, int > >::iterator | kernel_iterator |
typedef std::vector< std::pair< MachineInstr *, int > >::const_iterator | kernel_const_iterator |
Public Member Functions | |
MSSchedule (int num) | |
MSSchedule () | |
bool | insert (MSchedGraphNode *node, int cycle, int II) |
int | getStartCycle (MSchedGraphNode *node) |
void | clear () |
std::vector< std::pair< MachineInstr *, int > > * | getKernel () |
bool | constructKernel (int II, std::vector< MSchedGraphNode * > &branches, std::map< const MachineInstr *, unsigned > &indVar) |
int | getMaxStage () |
bool | defPreviousStage (Value *def, int stage) |
schedule_iterator | begin () |
schedule_iterator | end () |
void | print (std::ostream &os) const |
kernel_iterator | kernel_begin () |
kernel_iterator | kernel_end () |
Definition at line 23 of file MSSchedule.h.
typedef std::vector<std::pair<MachineInstr*, int> >::const_iterator llvm::MSSchedule::kernel_const_iterator |
Definition at line 63 of file MSSchedule.h.
typedef std::vector<std::pair<MachineInstr*, int> >::iterator llvm::MSSchedule::kernel_iterator |
Definition at line 62 of file MSSchedule.h.
typedef std::map<int, std::vector<MSchedGraphNode*> >::const_iterator llvm::MSSchedule::schedule_const_iterator |
Definition at line 57 of file MSSchedule.h.
typedef std::map<int, std::vector<MSchedGraphNode*> >::iterator llvm::MSSchedule::schedule_iterator |
Definition at line 56 of file MSSchedule.h.
llvm::MSSchedule::MSSchedule | ( | int | num | ) | [inline] |
Definition at line 45 of file MSSchedule.h.
llvm::MSSchedule::MSSchedule | ( | ) | [inline] |
Definition at line 46 of file MSSchedule.h.
schedule_iterator llvm::MSSchedule::begin | ( | ) | [inline] |
void llvm::MSSchedule::clear | ( | ) | [inline] |
Definition at line 49 of file MSSchedule.h.
Referenced by llvm::ModuloSchedulingPass::runOnFunction().
bool MSSchedule::constructKernel | ( | int | II, | |
std::vector< MSchedGraphNode * > & | branches, | |||
std::map< const MachineInstr *, unsigned > & | indVar | |||
) |
bool MSSchedule::defPreviousStage | ( | Value * | def, | |
int | stage | |||
) |
Definition at line 269 of file MSSchedule.cpp.
References abort(), and llvm::MachineOperand::MO_VirtualRegister.
schedule_iterator llvm::MSSchedule::end | ( | ) | [inline] |
std::vector<std::pair<MachineInstr*, int> >* llvm::MSSchedule::getKernel | ( | ) | [inline] |
Definition at line 50 of file MSSchedule.h.
int llvm::MSSchedule::getMaxStage | ( | ) | [inline] |
Definition at line 52 of file MSSchedule.h.
Referenced by llvm::ModuloSchedulingPass::runOnFunction().
int llvm::MSSchedule::getStartCycle | ( | MSchedGraphNode * | node | ) |
bool MSSchedule::insert | ( | MSchedGraphNode * | node, | |
int | cycle, | |||
int | II | |||
) |
kernel_iterator llvm::MSSchedule::kernel_begin | ( | ) | [inline] |
Definition at line 64 of file MSSchedule.h.
kernel_iterator llvm::MSSchedule::kernel_end | ( | ) | [inline] |
Definition at line 65 of file MSSchedule.h.
void MSSchedule::print | ( | std::ostream & | os | ) | const |
Definition at line 295 of file MSSchedule.cpp.
Referenced by llvm::ModuloSchedulingPass::runOnFunction().