MCPcopy Create free account
hub / github.com/SeaOfNodes/Simple / addDep

Method addDep

chapter12/src/main/java/com/seaofnodes/simple/node/Node.java:461–471  ·  view source on GitHub ↗

Add a node to the list of dependencies. Only add it if its not an input or output of this node, that is, it is at least one step away. The node being added must benefit from this node being peepholed.

( Node dep )

Source from the content-addressed store, hash-verified

459 * being added must benefit from this node being peepholed.
460 */
461 Node addDep( Node dep ) {
462 // Running peepholes during the big assert cannot have side effects
463 // like adding dependencies.
464 if( IterPeeps.midAssert() ) return this;
465 if( _deps==null ) _deps = new ArrayList<>();
466 if( Utils.find(_deps ,dep) != -1 ) return this; // Already on list
467 if( Utils.find(_inputs,dep) != -1 ) return this; // No need for deps on immediate neighbors
468 if( Utils.find(_outputs,dep)!= -1 ) return this;
469 _deps.add(dep);
470 return this;
471 }
472
473 // Move the dependents onto a worklist, and clear for future dependents.
474 public void moveDepsToWorklist( ) {

Callers 11

profitMethod · 0.95
computeMethod · 0.45
idealizeMethod · 0.45
singleUniqueInputMethod · 0.45
allConsMethod · 0.45
checkNoUseBeyondMethod · 0.45
allConsMethod · 0.45
_idomMethod · 0.45
idealizeMethod · 0.45
idealizeMethod · 0.45
idealizeMethod · 0.45

Calls 3

midAssertMethod · 0.95
findMethod · 0.95
addMethod · 0.45

Tested by

no test coverage detected