CACAO
|
CodeGenPass TODO: more info. More...
Public Types | |
typedef alloc::map < MachineBasicBlock *, std::size_t, MBBCompare > ::type | BasicBlockMap |
Public Member Functions | |
CodeGenPass () | |
virtual bool | run (JITData &JD) |
Run the Pass. More... | |
virtual PassUsage & | get_PassUsage (PassUsage &PU) const |
Set the requirements for the pass. More... | |
std::size_t | get_block_size (MachineBasicBlock *MBB) const |
BasicBlockMap::const_iterator | begin () const |
BasicBlockMap::const_iterator | end () const |
![]() | |
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 bool | verify () const |
Verify the Result. More... | |
virtual | ~Pass () |
Destructor. More... | |
Static Public Attributes | |
static char | ID = 0 |
Private Member Functions | |
void | finish (JITData &JD) |
finish code generation More... | |
Private Attributes | |
BasicBlockMap | bbmap |
Additional Inherited Members | |
![]() | |
static void * | operator new (std::size_t size) throw (std::bad_alloc) |
normal new More... | |
static void * | operator new (std::size_t size, void *ptr) throw () |
placement new More... | |
static void * | operator 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 void * | operator new[] (std::size_t size) throw (std::bad_alloc) |
normal new[] More... | |
static void * | operator new[] (std::size_t size, void *ptr) throw () |
placement new[] More... | |
static void * | operator 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... | |
CodeGenPass TODO: more info.
Definition at line 49 of file CodeGenPass.hpp.
typedef alloc::map<MachineBasicBlock*,std::size_t,MBBCompare>::type cacao::jit::compiler2::CodeGenPass::BasicBlockMap |
Definition at line 51 of file CodeGenPass.hpp.
|
inline |
Definition at line 68 of file CodeGenPass.hpp.
|
inline |
Definition at line 72 of file CodeGenPass.hpp.
|
inline |
Definition at line 73 of file CodeGenPass.hpp.
finish code generation
Finishes the code generation. A new memory, large enough for both data and code, is allocated and data and code are copied together to their final layout, unresolved jumps are resolved, ...
Definition at line 140 of file CodeGenPass.cpp.
std::size_t cacao::jit::compiler2::CodeGenPass::get_block_size | ( | MachineBasicBlock * | MBB | ) | const |
Definition at line 116 of file CodeGenPass.cpp.
Set the requirements for the pass.
Reimplemented from cacao::jit::compiler2::Pass.
Definition at line 320 of file CodeGenPass.cpp.
|
virtual |
Run the Pass.
This method implements the compiler pass.
Implements cacao::jit::compiler2::Pass.
Definition at line 60 of file CodeGenPass.cpp.
|
private |
Definition at line 65 of file CodeGenPass.hpp.
|
static |
Definition at line 67 of file CodeGenPass.hpp.