RFR: Increase inline limits only for release builds
Aleksey Shipilev
shade at redhat.com
Mon Sep 17 19:56:18 UTC 2018
We have this inliner improvement for concurrent marking performance. I checked it still helps
release builds (I'll follow up why exactly separately). But there is no particular need to do this
in debug configurations:
diff -r 360a814fb68d make/hotspot/lib/JvmOverrideFiles.gmk
--- a/make/hotspot/lib/JvmOverrideFiles.gmk Mon Sep 17 14:36:52 2018 +0200
+++ b/make/hotspot/lib/JvmOverrideFiles.gmk Mon Sep 17 21:50:30 2018 +0200
@@ -37,7 +37,9 @@
BUILD_LIBJVM_cardTableBarrierSetAssembler_x86.cpp_CXXFLAGS := -Wno-maybe-uninitialized
BUILD_LIBJVM_interp_masm_x86.cpp_CXXFLAGS := -Wno-uninitialized
- # Need extra inlining to collapse all the templated closures into the hot loop
- BUILD_LIBJVM_shenandoahConcurrentMark.cpp_CXXFLAGS := --param inline-unit-growth=1000
- BUILD_LIBJVM_shenandoahTraversalGC.cpp_CXXFLAGS := --param inline-unit-growth=1000
+ ifeq ($(DEBUG_LEVEL), release)
+ # Need extra inlining to collapse all marking code into the hot marking loop
+ BUILD_LIBJVM_shenandoahConcurrentMark.cpp_CXXFLAGS := --param inline-unit-growth=1000
+ BUILD_LIBJVM_shenandoahTraversalGC.cpp_CXXFLAGS := --param inline-unit-growth=1000
+ endif
endif
This makes fastdebug build times around 15% better.
Testing: release/fastdebug builds
Thanks,
-Aleksey
More information about the shenandoah-dev
mailing list