# HG changeset patch # User Gilles Duboscq # Date 1432903609 -7200 # Node ID 9cc3571ef51dd94c7b5308de1ece48d86749075a # Parent 36cf15e3219eee18fb62645fe35f2863403359fb Add getProfilingInfo(boolean includeNormal, boolean includeOSR) to ResolvedJavaMethod diff -r 36cf15e3219e -r 9cc3571ef51d graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/CompilationTask.java --- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/CompilationTask.java Mon Jun 01 15:14:39 2015 +0200 +++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/CompilationTask.java Fri May 29 14:46:49 2015 +0200 @@ -149,7 +149,7 @@ protected ProfilingInfo getProfilingInfo() { boolean osrCompilation = entryBCI != StructuredGraph.INVOCATION_ENTRY_BCI; - return method.getCompilationProfilingInfo(osrCompilation); + return method.getProfilingInfo(!osrCompilation, osrCompilation); } public void runCompilation() { diff -r 36cf15e3219e -r 9cc3571ef51d graal/com.oracle.jvmci.hotspot/src/com/oracle/jvmci/hotspot/HotSpotResolvedJavaMethod.java --- a/graal/com.oracle.jvmci.hotspot/src/com/oracle/jvmci/hotspot/HotSpotResolvedJavaMethod.java Mon Jun 01 15:14:39 2015 +0200 +++ b/graal/com.oracle.jvmci.hotspot/src/com/oracle/jvmci/hotspot/HotSpotResolvedJavaMethod.java Fri May 29 14:46:49 2015 +0200 @@ -84,8 +84,6 @@ */ boolean hasCompiledCodeAtLevel(int level); - ProfilingInfo getCompilationProfilingInfo(boolean isOSR); - default boolean isDefault() { if (isConstructor()) { return false; diff -r 36cf15e3219e -r 9cc3571ef51d graal/com.oracle.jvmci.hotspot/src/com/oracle/jvmci/hotspot/HotSpotResolvedJavaMethodImpl.java --- a/graal/com.oracle.jvmci.hotspot/src/com/oracle/jvmci/hotspot/HotSpotResolvedJavaMethodImpl.java Mon Jun 01 15:14:39 2015 +0200 +++ b/graal/com.oracle.jvmci.hotspot/src/com/oracle/jvmci/hotspot/HotSpotResolvedJavaMethodImpl.java Fri May 29 14:46:49 2015 +0200 @@ -410,15 +410,7 @@ private static final String TraceMethodDataFilter = System.getProperty("graal.traceMethodDataFilter"); @Override - public ProfilingInfo getProfilingInfo() { - return getProfilingInfo(true, true); - } - - public ProfilingInfo getCompilationProfilingInfo(boolean isOSR) { - return getProfilingInfo(!isOSR, isOSR); - } - - private ProfilingInfo getProfilingInfo(boolean includeNormal, boolean includeOSR) { + public ProfilingInfo getProfilingInfo(boolean includeNormal, boolean includeOSR) { ProfilingInfo info; if (UseProfilingInformation.getValue() && methodData == null) { diff -r 36cf15e3219e -r 9cc3571ef51d graal/com.oracle.jvmci.meta/src/com/oracle/jvmci/meta/ResolvedJavaMethod.java --- a/graal/com.oracle.jvmci.meta/src/com/oracle/jvmci/meta/ResolvedJavaMethod.java Mon Jun 01 15:14:39 2015 +0200 +++ b/graal/com.oracle.jvmci.meta/src/com/oracle/jvmci/meta/ResolvedJavaMethod.java Fri May 29 14:46:49 2015 +0200 @@ -128,7 +128,23 @@ /** * Returns an object that provides access to the profiling information recorded for this method. */ - ProfilingInfo getProfilingInfo(); + default ProfilingInfo getProfilingInfo() { + return getProfilingInfo(true, true); + } + + /** + * Returns an object that provides access to the profiling information recorded for this method. + * + * @param includeNormal if true, + * {@linkplain ProfilingInfo#getDeoptimizationCount(DeoptimizationReason) + * deoptimization counts} will include deoptimization that happened during execution + * of standard non-osr methods. + * @param includeOSR if true, + * {@linkplain ProfilingInfo#getDeoptimizationCount(DeoptimizationReason) + * deoptimization counts} will include deoptimization that happened during execution + * of on-stack-replacement methods. + */ + ProfilingInfo getProfilingInfo(boolean includeNormal, boolean includeOSR); /** * Invalidates the profiling information and restarts profiling upon the next invocation.