CACAO
Data Structures | Public Member Functions | Static Public Attributes | Private Attributes
cacao::jit::compiler2::MachineInstructionSchedulingPass Class Reference

MachineInstructionSchedulingPass TODO: more info. More...

Inheritance diagram for cacao::jit::compiler2::MachineInstructionSchedulingPass:
cacao::jit::compiler2::Pass cacao::jit::compiler2::memory::ManagerMixin< MachineInstructionSchedulingPass > cacao::jit::compiler2::MachineInstructionSchedule

Data Structures

class  ListSchedulingPass
 

Public Member Functions

 MachineInstructionSchedulingPass ()
 
virtual void initialize ()
 Initialize the Pass. More...
 
virtual bool run (JITData &JD)
 Run the Pass. More...
 
virtual bool verify () const
 Verify the Result. More...
 
virtual PassUsageget_PassUsage (PassUsage &PA) const
 Set the requirements for the pass. More...
 
- Public Member Functions inherited from cacao::jit::compiler2::Pass
 Pass ()
 
void set_PassManager (PassManager *PM)
 
template<class _PassClass >
_PassClass * get_Pass () const
 Get the result of a previous compiler pass. More...
 
template<class _PassClass >
_PassClass * get_Pass_if_available () const
 Get the result of a previous compiler pass. More...
 
virtual void finalize ()
 Finalize the Pass. More...
 
virtual ~Pass ()
 Destructor. More...
 
- Public Member Functions inherited from cacao::jit::compiler2::MachineInstructionSchedule
 MachineInstructionSchedule ()
 construct an empty MachineInstructionSchedule More...
 
bool empty () const
 checks if the schedule has no elements. More...
 
std::size_t size () const
 returns the number of elements More...
 
MachineInstructionSchedule::iterator push_back (const MBBBuilder &value)
 Appends the given element value to the end of the container. More...
 
MachineInstructionSchedule::iterator push_front (const MBBBuilder &value)
 inserts value to the beginning More...
 
MachineInstructionSchedule::iterator insert_before (iterator pos, const MBBBuilder &value)
 inserts value before the element pointed to by pos More...
 
MachineInstructionSchedule::iterator insert_after (iterator pos, const MBBBuilder &value)
 inserts value after the element pointed to by pos More...
 
iterator begin ()
 returns an iterator to the beginning More...
 
iterator end ()
 returns an iterator to the end More...
 
const_iterator begin () const
 returns an const iterator to the beginning More...
 
const_iterator end () const
 returns an const iterator to the end More...
 
reverse_iterator rbegin ()
 returns an reverse_iterator to the beginning More...
 
reverse_iterator rend ()
 returns an reverse_iterator to the end More...
 
const_reverse_iterator rbegin () const
 returns an const reverse_iterator to the beginning More...
 
const_reverse_iterator rend () const
 returns an const reverse_iterator to the end More...
 
reference front ()
 access the first element More...
 
reference back ()
 access the last element More...
 
MIIterator mi_begin ()
 returns an const MIIterator to the beginning More...
 
MIIterator mi_end ()
 returns an const MIIterator to the end More...
 

Static Public Attributes

static char ID = 0
 

Private Attributes

shared_ptr< ListSchedulingPassIS
 

Additional Inherited Members

- Public Types inherited from cacao::jit::compiler2::MachineInstructionSchedule
typedef MBBIterator iterator
 
typedef const_MBBIterator const_iterator
 
typedef std::reverse_iterator
< iterator
reverse_iterator
 
typedef std::reverse_iterator
< const_iterator
const_reverse_iterator
 
typedef iterator::reference reference
 
- Static Public Member Functions inherited from cacao::jit::compiler2::memory::ManagerMixin< MachineInstructionSchedulingPass >
static voidoperator new (std::size_t size) throw (std::bad_alloc)
 normal new More...
 
static voidoperator new (std::size_t size, void *ptr) throw ()
 placement new More...
 
static voidoperator new (std::size_t size, const std::nothrow_t &nt) throw ()
 nothrow new More...
 
static void operator delete (void *pMemory) throw ()
 normal delete More...
 
static void operator delete (void *pMemory, void *ptr) throw ()
 placement delete More...
 
static void operator delete (void *pMemory, const std::nothrow_t &) throw ()
 nothrow delete More...
 
static voidoperator new[] (std::size_t size) throw (std::bad_alloc)
 normal new[] More...
 
static voidoperator new[] (std::size_t size, void *ptr) throw ()
 placement new[] More...
 
static voidoperator new[] (std::size_t size, const std::nothrow_t &nt) throw ()
 nothrow new[] More...
 
static void operator delete[] (void *pMemory) throw ()
 normal delete[] More...
 
static void operator delete[] (void *pMemory, void *ptr) throw ()
 placement delete[] More...
 
static void operator delete[] (void *pMemory, const std::nothrow_t &) throw ()
 nothrow delete[] More...
 

Detailed Description

MachineInstructionSchedulingPass TODO: more info.

Definition at line 47 of file MachineInstructionSchedulingPass.hpp.

Constructor & Destructor Documentation

cacao::jit::compiler2::MachineInstructionSchedulingPass::MachineInstructionSchedulingPass ( )
inline

Definition at line 50 of file MachineInstructionSchedulingPass.hpp.

Member Function Documentation

PassUsage & cacao::jit::compiler2::MachineInstructionSchedulingPass::get_PassUsage ( PassUsage PU) const
virtual

Set the requirements for the pass.

Reimplemented from cacao::jit::compiler2::Pass.

Definition at line 315 of file MachineInstructionSchedulingPass.cpp.

void cacao::jit::compiler2::MachineInstructionSchedulingPass::initialize ( )
virtual

Initialize the Pass.

This method is called by the PassManager before the pass is started. It should be used to initialize e.g. data structures. A Pass object might be reused so the construtor can not be used in some cases.

Reimplemented from cacao::jit::compiler2::Pass.

Definition at line 49 of file MachineInstructionSchedulingPass.cpp.

bool cacao::jit::compiler2::MachineInstructionSchedulingPass::run ( JITData JD)
virtual

Run the Pass.

This method implements the compiler pass.

Returns
false if a problem occurred, true otherwise

Implements cacao::jit::compiler2::Pass.

Definition at line 176 of file MachineInstructionSchedulingPass.cpp.

bool cacao::jit::compiler2::MachineInstructionSchedulingPass::verify ( ) const
virtual

Verify the Result.

This method is used to verify the result of the pass. It has the same motivation than the assert() statement. It should be only used for debugging purposes and might not be called in release builds.

Reimplemented from cacao::jit::compiler2::Pass.

Definition at line 259 of file MachineInstructionSchedulingPass.cpp.

Field Documentation

char cacao::jit::compiler2::MachineInstructionSchedulingPass::ID = 0
static

Definition at line 49 of file MachineInstructionSchedulingPass.hpp.

shared_ptr<ListSchedulingPass> cacao::jit::compiler2::MachineInstructionSchedulingPass::IS
private

Definition at line 74 of file MachineInstructionSchedulingPass.hpp.


The documentation for this class was generated from the following files: