CACAO
Public Member Functions | Static Public Attributes | Private Attributes
cacao::jit::compiler2::ScheduleClickPass Class Reference

ScheduleClickPass. More...

Inheritance diagram for cacao::jit::compiler2::ScheduleClickPass:
cacao::jit::compiler2::Pass cacao::jit::compiler2::memory::ManagerMixin< ScheduleClickPass > cacao::jit::compiler2::GlobalSchedule

Public Member Functions

 ScheduleClickPass ()
 
virtual bool run (JITData &JD)
 Run the Pass. More...
 
virtual PassUsageget_PassUsage (PassUsage &PU) const
 Set the requirements for the pass. More...
 
virtual bool verify () const
 Verify the Result. 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 initialize ()
 Initialize the Pass. More...
 
virtual void finalize ()
 Finalize the Pass. More...
 
virtual ~Pass ()
 Destructor. More...
 
- Public Member Functions inherited from cacao::jit::compiler2::GlobalSchedule
 GlobalSchedule ()
 
void add_Instruction (Instruction *I, BeginInst *BI)
 
BeginInstoperator[] (const Instruction *I) const
 
BeginInstget (const Instruction *I) const
 
const_inst_iterator inst_begin (const BeginInst *BI) const
 
const_inst_iterator inst_end (const BeginInst *BI) const
 

Static Public Attributes

static char ID = 0
 

Private Attributes

GlobalSchedulelate
 
MethodM
 

Additional Inherited Members

- Public Types inherited from cacao::jit::compiler2::GlobalSchedule
typedef alloc::unordered_set
< Instruction * >
::type::const_iterator 
const_inst_iterator
 
- Static Public Member Functions inherited from cacao::jit::compiler2::memory::ManagerMixin< ScheduleClickPass >
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...
 
- Protected Member Functions inherited from cacao::jit::compiler2::GlobalSchedule
void set_schedule (const Method *M)
 
- Protected Attributes inherited from cacao::jit::compiler2::GlobalSchedule
alloc::unordered_map< const
Instruction *, BeginInst * >
::type 
map
 
alloc::unordered_map< const
BeginInst
*, alloc::unordered_set
< Instruction * >::type >
::type 
bb_map
 

Detailed Description

ScheduleClickPass.

Based on the algorithm in Click's Phd Thesis, Chapter 6 [2].

Definition at line 46 of file ScheduleClickPass.hpp.

Constructor & Destructor Documentation

cacao::jit::compiler2::ScheduleClickPass::ScheduleClickPass ( )
inline

Definition at line 52 of file ScheduleClickPass.hpp.

Member Function Documentation

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

Set the requirements for the pass.

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

Definition at line 72 of file ScheduleClickPass.cpp.

bool cacao::jit::compiler2::ScheduleClickPass::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 40 of file ScheduleClickPass.cpp.

bool cacao::jit::compiler2::ScheduleClickPass::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 62 of file ScheduleClickPass.cpp.

Field Documentation

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

Definition at line 51 of file ScheduleClickPass.hpp.

GlobalSchedule* cacao::jit::compiler2::ScheduleClickPass::late
private

Definition at line 48 of file ScheduleClickPass.hpp.

Method* cacao::jit::compiler2::ScheduleClickPass::M
private

Definition at line 49 of file ScheduleClickPass.hpp.


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