changeset 9992:b2aea23ee2b1

Only avoid graph caching when the graph was built without profiling information.
author Christian Haeubl <haeubl@ssw.jku.at>
date Mon, 10 Jun 2013 15:17:10 +0200
parents e2ffbaa682b8
children 053b837d0d7d
files graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/HotSpotVMConfig.java graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotProfilingInfo.java graal/com.oracle.graal.phases/src/com/oracle/graal/phases/GraalOptions.java src/share/vm/graal/graalCompilerToVM.cpp src/share/vm/interpreter/invocationCounter.hpp
diffstat 5 files changed, 4 insertions(+), 10 deletions(-) [+]
line wrap: on
line diff
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/HotSpotVMConfig.java	Mon Jun 10 12:22:42 2013 +0200
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/HotSpotVMConfig.java	Mon Jun 10 15:17:10 2013 +0200
@@ -384,8 +384,6 @@
     public int typeProfileWidth;
     public int methodProfileWidth;
 
-    public int interpreterProfilingThreshold;
-
     public long inlineCacheMissStub;
     public long handleDeoptStub;
     public long uncommonTrapStub;
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotProfilingInfo.java	Mon Jun 10 12:22:42 2013 +0200
+++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotProfilingInfo.java	Mon Jun 10 15:17:10 2013 +0200
@@ -163,7 +163,7 @@
 
     @Override
     public boolean isMature() {
-        return method.invocationCount() >= graalRuntime().getConfig().interpreterProfilingThreshold + GraalOptions.MatureProfilingInformationThreshold.getValue();
+        return true;
     }
 
     @Override
--- a/graal/com.oracle.graal.phases/src/com/oracle/graal/phases/GraalOptions.java	Mon Jun 10 12:22:42 2013 +0200
+++ b/graal/com.oracle.graal.phases/src/com/oracle/graal/phases/GraalOptions.java	Mon Jun 10 15:17:10 2013 +0200
@@ -86,8 +86,6 @@
     // profiling information
     @Option(help = "")
     public static final OptionValue<Integer> DeoptsToDisableOptimisticOptimization = new OptionValue<>(40);
-    @Option(help = "")
-    public static final OptionValue<Integer> MatureProfilingInformationThreshold = new OptionValue<>(100);
 
     // comilation queue
     @Option(help = "")
--- a/src/share/vm/graal/graalCompilerToVM.cpp	Mon Jun 10 12:22:42 2013 +0200
+++ b/src/share/vm/graal/graalCompilerToVM.cpp	Mon Jun 10 15:17:10 2013 +0200
@@ -738,8 +738,6 @@
   set_int("typeProfileWidth", TypeProfileWidth);
   set_int("methodProfileWidth", MethodProfileWidth);
 
-  set_int("interpreterProfilingThreshold", InvocationCounter::get_ProfileLimit());
-
   set_int("tlabAlignmentReserve", (int32_t)ThreadLocalAllocBuffer::alignment_reserve());
   set_long("tlabIntArrayMarkWord", (intptr_t)markOopDesc::prototype()->copy_set_hash(0x2));
   set_long("heapTopAddress", (jlong)(address) Universe::heap()->top_addr());
--- a/src/share/vm/interpreter/invocationCounter.hpp	Mon Jun 10 12:22:42 2013 +0200
+++ b/src/share/vm/interpreter/invocationCounter.hpp	Mon Jun 10 15:17:10 2013 +0200
@@ -95,9 +95,9 @@
   Action action() const                          { return _action[state()]; }
   int    count() const                           { return _counter >> number_of_noncount_bits; }
 
-  static int   get_InvocationLimit()             { return InterpreterInvocationLimit >> number_of_noncount_bits; }
-  static int   get_BackwardBranchLimit()         { return InterpreterBackwardBranchLimit >> number_of_noncount_bits; }
-  static int   get_ProfileLimit()                { return InterpreterProfileLimit >> number_of_noncount_bits; }
+  int   get_InvocationLimit() const              { return InterpreterInvocationLimit >> number_of_noncount_bits; }
+  int   get_BackwardBranchLimit() const          { return InterpreterBackwardBranchLimit >> number_of_noncount_bits; }
+  int   get_ProfileLimit() const                 { return InterpreterProfileLimit >> number_of_noncount_bits; }
 
   // Test counter using scaled limits like the asm interpreter would do rather than doing
   // the shifts to normalize the counter.