Package org.apache.sysds.parser
Class IfStatementBlock
- java.lang.Object
-
- org.apache.sysds.parser.LiveVariableAnalysis
-
- org.apache.sysds.parser.StatementBlock
-
- org.apache.sysds.parser.IfStatementBlock
-
- All Implemented Interfaces:
ParseInfo
public class IfStatementBlock extends StatementBlock
-
-
Field Summary
-
Fields inherited from class org.apache.sysds.parser.StatementBlock
DEFAULT_LOOP_REPETITIONS
-
-
Constructor Summary
Constructors Constructor Description IfStatementBlock()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description VariableSetanalyze(VariableSet loPassed)HopgetPredicateHops()LopgetPredicateLops()VariableSetinitializebackwardLV(VariableSet loPassed)VariableSetinitializeforwardLV(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.booleanrequiresPredicateRecompilation()voidsetPredicateHops(Hop hops)voidsetPredicateLops(Lop predicateLops)booleanupdatePredicateRecompilationFlag()VariableSetvalidate(DMLProgram dmlProg, VariableSet ids, HashMap<String,ConstIdentifier> constVars, boolean conditional)-
Methods inherited from class org.apache.sysds.parser.StatementBlock
addStatement, addStatementBlock, getBeginColumn, getBeginLine, getCheckpointPositions, getConstIn, getConstOut, getDMLProg, getEndColumn, getEndLine, getFilename, getHops, getInputstoSB, getLoopDepRatio, getLops, getName, getNumStatements, getOutputNamesofSB, getOutputsofSB, getSBID, getStatement, getStatements, getText, getUpdateInPlaceVars, hasHops, isMergeableFunctionCallBlock, isNondeterministic, isRecompileOnce, isRewritableFunctionCall, isSplitDag, mergeable, mergeFunctionCalls, mergeStatementBlocks, printBlockErrorLocation, printErrorLocation, printWarningLocation, raiseValidateError, raiseValidateError, requiresRecompilation, rewriteFunctionCallStatements, rHoistFunctionCallsFromExpressions, rHoistFunctionCallsFromExpressions, rHoistFunctionCallsFromExpressions, setBeginColumn, setBeginLine, setCheckpointPosition, setDMLProg, setEndColumn, setEndLine, setFilename, setHops, setLoopDepRatio, setLops, setNondeterministic, setParseInfo, setRecompileOnce, setSplitDag, setStatementFormatType, setStatementFormatType, setStatements, setText, setUpdateInPlaceVars, toString, updateRecompilationFlag
-
Methods inherited from class org.apache.sysds.parser.LiveVariableAnalysis
getGen, getKill, getWarn, liveIn, liveOut, setGen, setKill, setLiveIn, setLiveOut, setReadVariables, setUpdatedVariables, updateLiveVariablesOut, variablesRead, variablesUpdated
-
-
-
-
Method Detail
-
validate
public VariableSet validate(DMLProgram dmlProg, VariableSet ids, HashMap<String,ConstIdentifier> constVars, boolean conditional)
- Overrides:
validatein classStatementBlock
-
initializeforwardLV
public VariableSet initializeforwardLV(VariableSet activeInPassed)
Description copied from class:StatementBlockFor 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.- Overrides:
initializeforwardLVin classStatementBlock
-
initializebackwardLV
public VariableSet initializebackwardLV(VariableSet loPassed)
- Overrides:
initializebackwardLVin classStatementBlock
-
setPredicateHops
public void setPredicateHops(Hop hops)
-
getPredicateHops
public Hop getPredicateHops()
-
getPredicateLops
public Lop getPredicateLops()
-
setPredicateLops
public void setPredicateLops(Lop predicateLops)
-
analyze
public VariableSet analyze(VariableSet loPassed)
- Overrides:
analyzein classStatementBlock
-
updatePredicateRecompilationFlag
public boolean updatePredicateRecompilationFlag()
-
requiresPredicateRecompilation
public boolean requiresPredicateRecompilation()
-
-