Package org.apache.sysds.hops.rewrite
Class RewriteRemoveDanglingParentReferences
- java.lang.Object
-
- org.apache.sysds.hops.rewrite.HopRewriteRule
-
- org.apache.sysds.hops.rewrite.RewriteRemoveDanglingParentReferences
-
public class RewriteRemoveDanglingParentReferences extends HopRewriteRule
This rewrite is a general-purpose cleanup pass that removes any dangling parent references in one pass through the hop DAG. These dangling references could have been introduced by rewrites that remove operators but miss a proper cleanup.
-
-
Constructor Summary
Constructors Constructor Description RewriteRemoveDanglingParentReferences()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Hop
rewriteHopDAG(Hop root, ProgramRewriteStatus state)
Handle a predicate hop DAG with exactly one root.ArrayList<Hop>
rewriteHopDAGs(ArrayList<Hop> roots, ProgramRewriteStatus state)
Handle a generic (last-level) hop DAG with multiple roots.
-
-
-
Method Detail
-
rewriteHopDAGs
public ArrayList<Hop> rewriteHopDAGs(ArrayList<Hop> roots, ProgramRewriteStatus state)
Description copied from class:HopRewriteRule
Handle a generic (last-level) hop DAG with multiple roots.- Specified by:
rewriteHopDAGs
in classHopRewriteRule
- Parameters:
roots
- high-level operator rootsstate
- program rewrite status- Returns:
- list of high-level operators
-
rewriteHopDAG
public Hop rewriteHopDAG(Hop root, ProgramRewriteStatus state)
Description copied from class:HopRewriteRule
Handle a predicate hop DAG with exactly one root.- Specified by:
rewriteHopDAG
in classHopRewriteRule
- Parameters:
root
- high-level operator rootstate
- program rewrite status- Returns:
- high-level operator
-
-