public abstract class LocalPlace extends AbstractPlace
Modifier and Type | Field and Description |
---|---|
protected GlobalPlace |
globalPlace |
Modifier | Constructor and Description |
---|---|
protected |
LocalPlace(GlobalPlace globalPlace) |
Modifier and Type | Method and Description |
---|---|
void |
addControlPlace(ControlPlace controlPlace) |
static AbstractPlace |
createLocalPlace(java.util.Map<CGElement,AbstractPlace> element2place,
CGValuedElement cgElement) |
GlobalPlace |
getGlobalPlace()
Return the GlobalPlace.
|
protected static GlobalPlace |
getGlobalPlace(java.util.Map<CGElement,AbstractPlace> element2place) |
protected static LocalPlace |
getLocalPlace(AbstractPlace abstractPlace,
CGElement cgElement) |
protected static LocalPlace |
getLocalPlace(java.util.Map<CGElement,AbstractPlace> element2place,
CGElement cgElement) |
abstract StackPlace |
getStackPlace()
Return the stack place hosting this place.
|
void |
printHierarchy(java.lang.Appendable appendable,
java.lang.String indentation) |
void |
prune()
Eliminate CSE candidates that are not shared and do not need to be CSEs.
|
void |
pullUp()
Pull up all redundant child analyses that are visible in a parent to the parent.
|
void |
pushUp()
Push shareable analyses up the place tree.
|
void |
rewrite()
Rewrite the expression trees to exploit the CSEs.
|
getControlPlace, getParentPlace
@NonNull protected final GlobalPlace globalPlace
protected LocalPlace(@NonNull GlobalPlace globalPlace)
@NonNull public static AbstractPlace createLocalPlace(@NonNull java.util.Map<CGElement,AbstractPlace> element2place, @NonNull CGValuedElement cgElement)
@NonNull protected static GlobalPlace getGlobalPlace(@NonNull java.util.Map<CGElement,AbstractPlace> element2place)
@NonNull protected static LocalPlace getLocalPlace(@NonNull java.util.Map<CGElement,AbstractPlace> element2place, @Nullable CGElement cgElement)
@NonNull protected static LocalPlace getLocalPlace(@Nullable AbstractPlace abstractPlace, @NonNull CGElement cgElement)
public void addControlPlace(@NonNull ControlPlace controlPlace)
@NonNull public GlobalPlace getGlobalPlace()
AbstractPlace
getGlobalPlace
in class AbstractPlace
@NonNull public abstract StackPlace getStackPlace()
AbstractPlace
getStackPlace
in class AbstractPlace
public void printHierarchy(@NonNull java.lang.Appendable appendable, @NonNull java.lang.String indentation)
printHierarchy
in class AbstractPlace
public void prune()
public void pullUp()
public void pushUp()
public void rewrite()