org.jikesrvm.compilers.opt
Class LocalConstantProp
java.lang.Object
org.jikesrvm.compilers.opt.driver.CompilerPhase
org.jikesrvm.compilers.opt.LocalConstantProp
public class LocalConstantProp
- extends CompilerPhase
Perform local constant propagation for a factored basic block.
Orthogonal to the constant propagation performed in Simple
since here we use flow-sensitive analysis within a basic block.
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
LocalConstantProp
public LocalConstantProp()
shouldPerform
public final boolean shouldPerform(OptOptions options)
- Description copied from class:
CompilerPhase
- This method determines if the phase should be run, based on the
Options object it is passed.
By default, phases are always performed.
Subclasses should override this method if they only want
to be performed conditionally.
- Overrides:
shouldPerform
in class CompilerPhase
- Parameters:
options
- the compiler options for the compilation
- Returns:
- true if the phase should be performed
getName
public final String getName()
- Specified by:
getName
in class CompilerPhase
- Returns:
- a String which is the name of the phase.
reportAdditionalStats
public void reportAdditionalStats()
- Description copied from class:
CompilerPhase
- Called when printing a measure compilation report to enable a phase
to report additional phase-specific statistics.
- Overrides:
reportAdditionalStats
in class CompilerPhase
newExecution
public CompilerPhase newExecution(IR ir)
- Return this instance of this phase. This phase contains no
per-compilation instance fields.
- Overrides:
newExecution
in class CompilerPhase
- Parameters:
ir
- not used
- Returns:
- this
perform
public void perform(IR ir)
- Perform Local Constant propagation for a method.
- Specified by:
perform
in class CompilerPhase
- Parameters:
ir
- the IR to optimize