diff src/share/vm/runtime/compilationPolicy.cpp @ 7684:bbf97d6688d3

cleanup for the inlining policies added devirtualization of invokes
author Christian Haeubl <haeubl@ssw.jku.at>
date Fri, 01 Feb 2013 16:57:40 +0100
parents 8a3efb8c831d
children b8f261ba79c6
line wrap: on
line diff
--- a/src/share/vm/runtime/compilationPolicy.cpp	Wed Jan 16 10:19:09 2013 +0100
+++ b/src/share/vm/runtime/compilationPolicy.cpp	Fri Feb 01 16:57:40 2013 +0100
@@ -492,7 +492,7 @@
   int hot_count = m->backedge_count();
   const char* comment = "backedge_count";
 
-  if (is_compilation_enabled() && !m->is_not_osr_compilable() && can_be_compiled(m)) {
+  if (is_compilation_enabled() && !m->is_not_osr_compilable() && can_be_compiled(m) && !m->queued_for_compilation() && m->code() == NULL) {
     if (TraceCompilationPolicy) {
       tty->print("backedge invocation trigger: ");
       m->print_short_name(tty);