public class ProgramRewriter extends Object
Constructor and Description |
---|
ProgramRewriter() |
ProgramRewriter(ArrayList<HopRewriteRule> hRewrites,
ArrayList<StatementBlockRewriteRule> sbRewrites)
Construct a program rewriter for the given rewrite sets which are passed from outside.
|
ProgramRewriter(boolean staticRewrites,
boolean dynamicRewrites) |
ProgramRewriter(HopRewriteRule... rewrites)
Construct a program rewriter for a given rewrite which is passed from outside.
|
ProgramRewriter(StatementBlockRewriteRule... rewrites)
Construct a program rewriter for a given rewrite which is passed from outside.
|
public ProgramRewriter()
public ProgramRewriter(boolean staticRewrites, boolean dynamicRewrites)
public ProgramRewriter(HopRewriteRule... rewrites)
rewrites
- the HOP rewrite rulespublic ProgramRewriter(StatementBlockRewriteRule... rewrites)
rewrites
- the statement block rewrite rulespublic ProgramRewriter(ArrayList<HopRewriteRule> hRewrites, ArrayList<StatementBlockRewriteRule> sbRewrites)
hRewrites
- HOP rewrite rulessbRewrites
- statement block rewrite rulespublic void removeHopRewrite(Class<? extends HopRewriteRule> clazz)
public void removeStatementBlockRewrite(Class<? extends StatementBlockRewriteRule> clazz)
public ProgramRewriteStatus rewriteProgramHopDAGs(DMLProgram dmlp)
public ProgramRewriteStatus rewriteProgramHopDAGs(DMLProgram dmlp, boolean splitDags)
public ProgramRewriteStatus rewriteProgramHopDAGs(DMLProgram dmlp, boolean splitDags, ProgramRewriteStatus state)
public void rewriteHopDAGsFunction(FunctionStatementBlock fsb, boolean splitDags)
public void rewriteHopDAGsFunction(FunctionStatementBlock fsb, ProgramRewriteStatus state, boolean splitDags)
public void rRewriteStatementBlockHopDAGs(StatementBlock current, ProgramRewriteStatus state)
public ArrayList<Hop> rewriteHopDAG(ArrayList<Hop> roots, ProgramRewriteStatus state)
public Hop rewriteHopDAG(Hop root, ProgramRewriteStatus state)
public ArrayList<StatementBlock> rRewriteStatementBlocks(ArrayList<StatementBlock> sbs, ProgramRewriteStatus status, boolean splitDags)
public ArrayList<StatementBlock> rRewriteStatementBlock(StatementBlock sb, ProgramRewriteStatus status, boolean splitDags)
Copyright © 2020 The Apache Software Foundation. All rights reserved.