diff src/share/vm/graal/graalCodeInstaller.cpp @ 13816:d006a6332db8

Make sure a compile id is assigned
author Tom Rodriguez <tom.rodriguez@oracle.com>
date Wed, 29 Jan 2014 14:06:32 -0800
parents 343541fb3b49
children fe034af88233
line wrap: on
line diff
--- a/src/share/vm/graal/graalCodeInstaller.cpp	Wed Jan 29 14:05:05 2014 -0800
+++ b/src/share/vm/graal/graalCodeInstaller.cpp	Wed Jan 29 14:06:32 2014 -0800
@@ -22,6 +22,7 @@
  */
 
 #include "precompiled.hpp"
+#include "compiler/compileBroker.hpp"
 #include "compiler/disassembler.hpp"
 #include "runtime/javaCalls.hpp"
 #include "graal/graalEnv.hpp"
@@ -419,6 +420,10 @@
     methodHandle method = getMethodFromHotSpotMethod(HotSpotCompiledNmethod::method(compiled_code));
     jint entry_bci = HotSpotCompiledNmethod::entryBCI(compiled_code);
     jint id = HotSpotCompiledNmethod::id(compiled_code);
+    if (id == -1) {
+      // Make sure a valid compile_id is associated with every compile
+      id = CompileBroker::assign_compile_id(method, entry_bci);
+    }
     result = GraalEnv::register_method(method, nm, entry_bci, &_offsets, _custom_stack_area_offset, &buffer, stack_slots, _debug_recorder->_oopmaps, &_exception_handler_table,
         GraalCompiler::instance(), _debug_recorder, _dependencies, NULL, id, false, leaf_graph_ids, installed_code, speculation_log);
     cb = nm;