Lines Matching defs:use

92     // private, per-use versions of the Cmp and Bool are made.  These sink to
118 Node* use = bol->unique_out();
119 Node *use_c = use->is_If() ? use->in(0) : get_ctrl(use);
218 // Remove cloned-up value from optimizer; use phi instead
247 // "Spin up" the dominator tree, starting at the use site and stopping when we
277 // uses (looking for Phis). If looking for a control use, then we need
323 Node *PhaseIdealLoop::find_use_block( Node *use, Node *def, Node *old_false, Node *new_false, Node *old_true, Node *new_true ) {
325 if( use->is_CFG() )
326 return use;
328 if( use->is_Phi() ) { // Phi uses in prior block
329 // Grab the first Phi use; there may be many.
333 for( j = 1; j < use->req(); j++ )
334 if( use->in(j) == def )
336 assert( j < use->req(), "def should be among use's inputs" );
337 return use->in(0)->in(j);
339 // Normal (non-phi) use
340 Node *use_blk = get_ctrl(use);
345 set_ctrl(use, new_false);
349 set_ctrl(use, new_true);
353 _igvn.replace_node(use, C->top());
364 // pinned) and it makes too much stuff live. Instead we use a path-based
367 // If the use is along the pre-split-CFG true branch, then the new use will
369 // path. Some uses will be along both paths; then we sink the use to the
371 void PhaseIdealLoop::handle_use( Node *use, Node *def, small_cache *cache, Node *region_dom, Node *new_false, Node *new_true, Node *old_false, Node *old_true ) {
373 Node *use_blk = find_use_block(use,def,old_false,new_false,old_true,new_true);
382 for( i = 0; i < use->req(); i++ )
383 if( use->in(i) == def )
385 assert( i < use->req(), "def should be among use's inputs" );
386 _igvn.replace_input_of(use, i, new_def);
510 Node* use = phi->last_out(l);
514 // inserted depend only on the location of the USE. We use a
516 handle_use(use, phi, &phi_cache, region_dom, new_false, new_true, old_false, old_true);
525 // Every path above deletes a use of the region, except for the region