public class ForStatementBlock extends StatementBlock
Constructor and Description |
---|
ForStatementBlock() |
Modifier and Type | Method and Description |
---|---|
VariableSet |
analyze(VariableSet loPassed) |
Hop |
getFromHops() |
Lop |
getFromLops() |
Hop |
getIncrementHops() |
Lop |
getIncrementLops() |
ArrayList<String> |
getInputstoSB() |
IterablePredicate |
getIterPredicate() |
Hop |
getToHops() |
Lop |
getToLops() |
VariableSet |
initializebackwardLV(VariableSet loPassed) |
VariableSet |
initializeforwardLV(VariableSet activeInPassed)
For each statement:
gen rule: for each variable read in current statement but not updated in any PRIOR statement, add to gen
Handles case where variable both read and updated in same statement (i = i + 1, i needs to be added to gen)
kill rule: for each variable updated in current statement but not read in this or any PRIOR statement,
add to kill.
|
void |
performConstantPropagation(HashMap<String,ConstIdentifier> currConstVars) |
boolean |
requiresFromRecompilation() |
boolean |
requiresIncrementRecompilation() |
boolean |
requiresToRecompilation() |
void |
setFromHops(Hop hops) |
void |
setFromLops(Lop lops) |
void |
setIncrementHops(Hop hops) |
void |
setIncrementLops(Lop lops) |
void |
setToHops(Hop hops) |
void |
setToLops(Lop lops) |
boolean |
updatePredicateRecompilationFlags() |
VariableSet |
validate(DMLProgram dmlProg,
VariableSet ids,
HashMap<String,ConstIdentifier> constVars,
boolean conditional) |
addStatement, addStatementBlock, getBeginColumn, getBeginLine, getConstIn, getConstOut, getDMLProg, getEndColumn, getEndLine, getFilename, getHops, getLops, getName, getNumStatements, getOutputNamesofSB, getOutputsofSB, getSBID, getStatement, getStatements, getText, getUpdateInPlaceVars, isMergeableFunctionCallBlock, isNondeterministic, isRewritableFunctionCall, isSplitDag, mergeable, mergeFunctionCalls, mergeStatementBlocks, printBlockErrorLocation, printErrorLocation, printWarningLocation, raiseValidateError, raiseValidateError, requiresRecompilation, rewriteFunctionCallStatements, rHoistFunctionCallsFromExpressions, rHoistFunctionCallsFromExpressions, rHoistFunctionCallsFromExpressions, setBeginColumn, setBeginLine, setDMLProg, setEndColumn, setEndLine, setFilename, setHops, setLops, setNondeterministic, setParseInfo, setSplitDag, setStatementFormatType, setStatementFormatType, setStatements, setText, setUpdateInPlaceVars, toString, updateRecompilationFlag
getGen, getKill, getWarn, liveIn, liveOut, setGen, setKill, setLiveIn, setLiveOut, setReadVariables, setUpdatedVariables, updateLiveVariablesOut, variablesRead, variablesUpdated
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
ctxAndFilenameToParseInfo
public IterablePredicate getIterPredicate()
public VariableSet validate(DMLProgram dmlProg, VariableSet ids, HashMap<String,ConstIdentifier> constVars, boolean conditional)
validate
in class StatementBlock
public VariableSet initializeforwardLV(VariableSet activeInPassed)
StatementBlock
initializeforwardLV
in class StatementBlock
public VariableSet initializebackwardLV(VariableSet loPassed)
initializebackwardLV
in class StatementBlock
public void setFromHops(Hop hops)
public void setToHops(Hop hops)
public void setIncrementHops(Hop hops)
public Hop getFromHops()
public Hop getToHops()
public Hop getIncrementHops()
public void setFromLops(Lop lops)
public void setToLops(Lop lops)
public void setIncrementLops(Lop lops)
public Lop getFromLops()
public Lop getToLops()
public Lop getIncrementLops()
public ArrayList<String> getInputstoSB()
getInputstoSB
in class StatementBlock
public VariableSet analyze(VariableSet loPassed)
analyze
in class StatementBlock
public void performConstantPropagation(HashMap<String,ConstIdentifier> currConstVars)
public boolean updatePredicateRecompilationFlags()
public boolean requiresFromRecompilation()
public boolean requiresToRecompilation()
public boolean requiresIncrementRecompilation()
Copyright © 2020 The Apache Software Foundation. All rights reserved.