public class OptimizeTempVarsPass extends CompilerPass
| Modifier and Type | Field and Description |
|---|---|
(package private) boolean |
optimizedTempVars |
NO_DEPENDENCIES| Constructor and Description |
|---|
OptimizeTempVarsPass() |
| Modifier and Type | Method and Description |
|---|---|
private static void |
allocVar(Operand oldVar,
IRScope s,
java.util.List<TemporaryVariable> freeVarsList,
java.util.Map<Operand,Operand> newVarMap) |
java.lang.Object |
execute(IRScope s,
java.lang.Object... data)
Meat of an individual pass.
|
private static void |
freeVar(TemporaryVariable newVar,
java.util.List<TemporaryVariable> freeVarsList) |
java.lang.String |
getLabel()
What is the user-friendly name of this compiler pass
|
void |
invalidate(IRScope s)
The data that this pass is responsible for will get invalidated so that
if this pass is then execute()d it will generate new pass data.
|
private static void |
optimizeTmpVars(IRScope s) |
java.lang.Object |
previouslyRun(IRScope scope)
If this pass has been previous run then return the data from that last run.
|
createPassInstance, createPassInstance, getDependencies, getPassesFromString, run, runpublic java.lang.String getLabel()
CompilerPassgetLabel in class CompilerPasspublic java.lang.Object execute(IRScope s, java.lang.Object... data)
CompilerPassexecute in class CompilerPasss - is the scope to run this pass ondata - is the data supplied to this pass to use to execute the passpublic java.lang.Object previouslyRun(IRScope scope)
CompilerPasspreviouslyRun in class CompilerPasspublic void invalidate(IRScope s)
CompilerPassinvalidate in class CompilerPasss - is where the pass stores its data.private static void allocVar(Operand oldVar, IRScope s, java.util.List<TemporaryVariable> freeVarsList, java.util.Map<Operand,Operand> newVarMap)
private static void freeVar(TemporaryVariable newVar, java.util.List<TemporaryVariable> freeVarsList)
private static void optimizeTmpVars(IRScope s)