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

DeadCodeEliminationPass. More...

Inheritance diagram for cacao::jit::compiler2::DeadCodeEliminationPass:
cacao::jit::compiler2::Pass

Public Member Functions

 DeadCodeEliminationPass ()
 
virtual bool run (JITData &JD)
 Run the Pass. 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 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
 

Detailed Description

DeadCodeEliminationPass.

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.

Member Typedef Documentation

Definition at line 47 of file DeadCodeEliminationPass.hpp.

Definition at line 48 of file DeadCodeEliminationPass.hpp.

Constructor & Destructor Documentation

cacao::jit::compiler2::DeadCodeEliminationPass::DeadCodeEliminationPass ( )
inline

Definition at line 51 of file DeadCodeEliminationPass.hpp.

Member Function Documentation

PassUsage & DeadCodeEliminationPass::get_PassUsage ( PassUsage PU) const
virtual

Set the requirements for the pass.

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

Definition at line 142 of file DeadCodeEliminationPass.cpp.

bool DeadCodeEliminationPass::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 57 of file DeadCodeEliminationPass.cpp.

Field Documentation

char DeadCodeEliminationPass::ID = 0
static

Definition at line 50 of file DeadCodeEliminationPass.hpp.


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