[13] RFR (S): 8059241: C2: Excessive RemoveUseless passes during incremental inlining

Vladimir Ivanov vladimir.x.ivanov at oracle.com
Fri Jan 25 08:50:19 UTC 2019


> 
>> http://cr.openjdk.java.net/~vlivanov/8059241/webrev.03/
> 
> Isn't there a bug here:
> 
> 2090   set_inlining_progress(false);
> 2091   set_do_cleanup(false);
> 2092   return inlining_progress() && !needs_cleanup;
> 
> Can inlining_progress() be anything but false at line 2092?

Yes, you are right. Updated webrev in-place.

diff --git a/src/hotspot/share/opto/compile.cpp 
b/src/hotspot/share/opto/compile.cpp
--- a/src/hotspot/share/opto/compile.cpp
+++ b/src/hotspot/share/opto/compile.cpp
@@ -2089,7 +2089,7 @@

    set_inlining_progress(false);
    set_do_cleanup(false);
-  return inlining_progress() && !needs_cleanup;
+  return (_late_inlines.length() > 0) && !needs_cleanup;
  }

Testing results are still valid because I extensively tested earlier 
version without that particular change, but resubmitted testing just in 
case.

Best regards,
Vladimir Ivanov


More information about the hotspot-compiler-dev mailing list