8079135: C2 disables some optimizations when a large number of unique nodes exist
authorvlivanov
Fri, 15 May 2015 19:21:46 +0300
changeset 31036 e3040e4dde63
parent 31035 0f0743952c41
child 31037 01a5c5fa5681
8079135: C2 disables some optimizations when a large number of unique nodes exist Reviewed-by: kvn
hotspot/src/share/vm/opto/loopopts.cpp
--- a/hotspot/src/share/vm/opto/loopopts.cpp	Thu May 21 13:54:07 2015 +0200
+++ b/hotspot/src/share/vm/opto/loopopts.cpp	Fri May 15 19:21:46 2015 +0300
@@ -718,7 +718,7 @@
   }
 
   // Use same limit as split_if_with_blocks_post
-  if( C->unique() > 35000 ) return n; // Method too big
+  if( C->live_nodes() > 35000 ) return n; // Method too big
 
   // Split 'n' through the merge point if it is profitable
   Node *phi = split_thru_phi( n, n_blk, policy );
@@ -802,7 +802,7 @@
   // Cloning Cmp through Phi's involves the split-if transform.
   // FastLock is not used by an If
   if( n->is_Cmp() && !n->is_FastLock() ) {
-    if( C->unique() > 35000 ) return; // Method too big
+    if( C->live_nodes() > 35000 ) return; // Method too big
 
     // Do not do 'split-if' if irreducible loops are present.
     if( _has_irreducible_loops )