comparison src/share/vm/opto/phaseX.hpp @ 6144:5e990493719e

7173340: C2: code cleanup: use PhaseIterGVN::replace_edge(Node*, int, Node*) where applicable Summary: replace frequent C2 optimizer code patterns with new methods calls Reviewed-by: kvn, twisti Contributed-by: vladimir.x.ivanov@oracle.com
author kvn
date Tue, 12 Jun 2012 16:23:31 -0700
parents 35acf8f0a2e4
children 611e8a669a2c 1d7922586cf6
comparison
equal deleted inserted replaced
6143:8b0a4867acf0 6144:5e990493719e
458 add_users_to_worklist(old); 458 add_users_to_worklist(old);
459 hash_delete(old); // Yank from hash before hacking edges 459 hash_delete(old); // Yank from hash before hacking edges
460 subsume_node(old, nn); 460 subsume_node(old, nn);
461 } 461 }
462 462
463 // Delayed node rehash: remove a node from the hash table and rehash it during
464 // next optimizing pass
465 void rehash_node_delayed(Node* n) {
466 hash_delete(n);
467 _worklist.push(n);
468 }
469
470 // Replace ith edge of "n" with "in"
471 void replace_input_of(Node* n, int i, Node* in) {
472 rehash_node_delayed(n);
473 n->set_req(i, in);
474 }
475
476 // Delete ith edge of "n"
477 void delete_input_of(Node* n, int i) {
478 rehash_node_delayed(n);
479 n->del_req(i);
480 }
481
463 bool delay_transform() const { return _delay_transform; } 482 bool delay_transform() const { return _delay_transform; }
464 483
465 void set_delay_transform(bool delay) { 484 void set_delay_transform(bool delay) {
466 _delay_transform = delay; 485 _delay_transform = delay;
467 } 486 }