Package org.apache.sysds.hops.ipa

# Class IPAPassPruneUnreachableHops

java.lang.Object
org.apache.sysds.hops.ipa.IPAPass
org.apache.sysds.hops.ipa.IPAPassPruneUnreachableHops

public class IPAPassPruneUnreachableHops extends IPAPass
Prune stale parent links by keeping only parent references reachable from the statement block roots/predicates.

## Constructor Summary

Constructors
Constructor
Description
`IPAPassPruneUnreachableHops()`

## Method Summary

Modifier and Type
Method
Description
`boolean`
`isApplicable(FunctionCallGraph fgraph)`
Indicates if an IPA pass is applicable for the current configuration such as global flags or the chosen execution mode (e.g., HYBRID).
`boolean`
`rewriteProgram(DMLProgram prog, FunctionCallGraph fgraph, FunctionCallSizeInfo fcallSizes)`
Rewrites the given program or its functions in place, with access to the read-only function call graph.

### Methods inherited from class java.lang.Object

`equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Constructor Details

### IPAPassPruneUnreachableHops

public IPAPassPruneUnreachableHops()

## Method Details

### isApplicable

public boolean isApplicable(FunctionCallGraph fgraph)
Description copied from class: `IPAPass`
Indicates if an IPA pass is applicable for the current configuration such as global flags or the chosen execution mode (e.g., HYBRID).

Specified by:
  `isApplicable` in class `IPAPass`
Parameters:
  `fgraph` - function call graph
Returns:
  true if applicable.

### rewriteProgram

public boolean rewriteProgram(DMLProgram prog, FunctionCallGraph fgraph, FunctionCallSizeInfo fcallSizes)
Description copied from class: `IPAPass`
Rewrites the given program or its functions in place, with access to the read-only function call graph.

Specified by:
  `rewriteProgram` in class `IPAPass`
Parameters:
  `prog` - dml program
  `fgraph` - function call graph
  `fcallSizes` - function call size infos
Returns:
  true if function call graph should be rebuild