aboutsummaryrefslogtreecommitdiff
path: root/src/share/vm/opto/ifnode.cpp
diff options
context:
space:
mode:
authorkvn <none@none>2010-06-28 14:54:39 -0700
committerkvn <none@none>2010-06-28 14:54:39 -0700
commitccc2a8123e1ef5819d2993d1f5585e4a6a38f602 (patch)
tree3c489c7ed4fa348f296b063f56038f9fbbce5c80 /src/share/vm/opto/ifnode.cpp
parent0ef74b88ec57785dea4904c4f00a3949a1e0d41d (diff)
6677629: PhaseIterGVN::subsume_node() should call hash_delete() and add_users_to_worklist()
Summary: Use replace_node() method instead of subsume_node(). Reviewed-by: jrose, never
Diffstat (limited to 'src/share/vm/opto/ifnode.cpp')
-rw-r--r--src/share/vm/opto/ifnode.cpp6
1 files changed, 2 insertions, 4 deletions
diff --git a/src/share/vm/opto/ifnode.cpp b/src/share/vm/opto/ifnode.cpp
index 5ed25f4a9..590e1379e 100644
--- a/src/share/vm/opto/ifnode.cpp
+++ b/src/share/vm/opto/ifnode.cpp
@@ -1081,11 +1081,9 @@ static IfNode* idealize_test(PhaseGVN* phase, IfNode* iff) {
igvn->register_new_node_with_optimizer(new_if_f);
igvn->register_new_node_with_optimizer(new_if_t);
- igvn->hash_delete(old_if_f);
- igvn->hash_delete(old_if_t);
// Flip test, so flip trailing control
- igvn->subsume_node(old_if_f, new_if_t);
- igvn->subsume_node(old_if_t, new_if_f);
+ igvn->replace_node(old_if_f, new_if_t);
+ igvn->replace_node(old_if_t, new_if_f);
// Progress
return iff;