public class AddressLoweringPhase extends BasePhase<CoreProviders>
Modifier and Type | Class and Description |
---|---|
static class |
AddressLoweringPhase.AddressLowering |
BasePhase.ApplyScope, BasePhase.BasePhaseStatistics, BasePhase.NotApplicable, BasePhase.PhaseOptions, BasePhase.SharedGlobalPhaseState
ALWAYS_APPLICABLE
Constructor and Description |
---|
AddressLoweringPhase(AddressLoweringPhase.AddressLowering lowering) |
Modifier and Type | Method and Description |
---|---|
Optional<BasePhase.NotApplicable> |
canApply(GraphState graphState)
Checks if all the preconditions to
BasePhase.apply(StructuredGraph, Object, boolean) the phase
are met. |
protected void |
run(StructuredGraph graph,
CoreProviders providers) |
void |
updateGraphState(GraphState graphState)
Applies all the changes on the
GraphState caused by
BasePhase.apply(StructuredGraph, Object, boolean) . |
apply, apply, applyScope, codeSizeIncrease, contractorName, equals, getName, hashCode, mustApply, shouldDumpAfterAtBasicLevel, shouldDumpBeforeAtBasicLevel
clone, getClass, notify, notifyAll, toString, wait, wait, wait
checkContract
public AddressLoweringPhase(AddressLoweringPhase.AddressLowering lowering)
public Optional<BasePhase.NotApplicable> canApply(GraphState graphState)
BasePhase
BasePhase.apply(StructuredGraph, Object, boolean)
the phase
are met.canApply
in class BasePhase<CoreProviders>
graphState
- represents the state of the StructuredGraph
used for compilation
and contains the required information to determine if a phase can be applied.Optional.empty()
if all the checks pass, Optional#of(NotApplicable)
containing why this phase is not applicable on this graphState
otherwise.protected void run(StructuredGraph graph, CoreProviders providers)
run
in class BasePhase<CoreProviders>
public void updateGraphState(GraphState graphState)
BasePhase
GraphState
caused by
BasePhase.apply(StructuredGraph, Object, boolean)
.updateGraphState
in class BasePhase<CoreProviders>
graphState
- represents the state of the StructuredGraph
used for compilation.