|
CACAO
|
DeadCodeEliminationPass. More...
Public Member Functions | |
| DeadCodeEliminationPass () | |
| virtual bool | run (JITData &JD) |
| Run the Pass. More... | |
| virtual PassUsage & | get_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 | 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 Types | |
| typedef unordered_map < Instruction *, bool > | InstBoolMapTy |
| typedef unordered_map < Instruction *, std::size_t > | InstIntMapTy |
This optimization pass removes dead (a.k.a unused) code from the program, based on an algorithm in [8]. It uses a 'weak' definition of 'dead' which does not take control-flow into account.
Definition at line 45 of file DeadCodeEliminationPass.hpp.
|
private |
Definition at line 47 of file DeadCodeEliminationPass.hpp.
|
private |
Definition at line 48 of file DeadCodeEliminationPass.hpp.
|
inline |
Definition at line 51 of file DeadCodeEliminationPass.hpp.
Set the requirements for the pass.
Reimplemented from cacao::jit::compiler2::Pass.
Definition at line 142 of file DeadCodeEliminationPass.cpp.
|
virtual |
Run the Pass.
This method implements the compiler pass.
Implements cacao::jit::compiler2::Pass.
Definition at line 57 of file DeadCodeEliminationPass.cpp.
|
static |
Definition at line 50 of file DeadCodeEliminationPass.hpp.
1.8.5