- Direct Known Subclasses:
- SideEffectsAnalysis.CrossModuleMotionEnvironment, SideEffectsAnalysis.IntraproceduralMotionEnvironment, SideEffectsAnalysis.RawMotionEnvironment
- Enclosing class:
- SideEffectsAnalysis
public abstract static class SideEffectsAnalysis.AbstractMotionEnvironment
extends java.lang.Object
Represents an environment across which code might be moved, i.e. the set
of code that could be run in between the source and the destination.
SideEffectAnalysis characterizes the code to be moved and the environment
in order to determine if they interact in such a way as to make the move
unsafe.
Since determining the environment for an optimization can be tricky,
we provide several concrete subclasses that common classes of optimizations
may be able to reuse.