diff src/share/vm/code/nmethod.cpp @ 14172:cd22c8dbda4f

Made graph caching compilation local
author Doug Simon <doug.simon@oracle.com>
date Thu, 13 Mar 2014 15:36:30 +0100
parents 5a9afbf72714
children 29ccc4cbabca
line wrap: on
line diff
--- a/src/share/vm/code/nmethod.cpp	Thu Mar 13 14:48:01 2014 +0100
+++ b/src/share/vm/code/nmethod.cpp	Thu Mar 13 15:36:30 2014 +0100
@@ -623,8 +623,7 @@
   ExceptionHandlerTable* handler_table,
   ImplicitExceptionTable* nul_chk_table,
   AbstractCompiler* compiler,
-  int comp_level,
-  GrowableArray<jlong>* leaf_graph_ids
+  int comp_level
 #ifdef GRAAL
   , Handle installed_code,
   Handle speculationLog
@@ -633,7 +632,6 @@
 {
   assert(debug_info->oop_recorder() == code_buffer->oop_recorder(), "shared OR");
   code_buffer->finalize_oop_references(method);
-  int leaf_graph_ids_size = leaf_graph_ids == NULL ? 0 : round_to(sizeof(jlong) * leaf_graph_ids->length(), oopSize);
   // create nmethod
   nmethod* nm = NULL;
   { MutexLockerEx mu(CodeCache_lock, Mutex::_no_safepoint_check_flag);
@@ -643,8 +641,7 @@
       + round_to(dependencies->size_in_bytes() , oopSize)
       + round_to(handler_table->size_in_bytes(), oopSize)
       + round_to(nul_chk_table->size_in_bytes(), oopSize)
-      + round_to(debug_info->data_size()       , oopSize)
-      + leaf_graph_ids_size;
+      + round_to(debug_info->data_size()       , oopSize);
     nm = new (nmethod_size)
     nmethod(method(), nmethod_size, compile_id, entry_bci, offsets,
             orig_pc_offset, debug_info, dependencies, code_buffer, frame_size,
@@ -652,8 +649,7 @@
             handler_table,
             nul_chk_table,
             compiler,
-            comp_level,
-            leaf_graph_ids
+            comp_level
 #ifdef GRAAL
             , installed_code,
             speculationLog
@@ -733,8 +729,7 @@
     _dependencies_offset     = _scopes_pcs_offset;
     _handler_table_offset    = _dependencies_offset;
     _nul_chk_table_offset    = _handler_table_offset;
-    _leaf_graph_ids_offset   = _nul_chk_table_offset;
-    _nmethod_end_offset      = _leaf_graph_ids_offset;
+    _nmethod_end_offset      = _nul_chk_table_offset;
     _compile_id              = compile_id;
     _comp_level              = CompLevel_none;
     _entry_point             = code_begin()          + offsets->value(CodeOffsets::Entry);
@@ -881,8 +876,7 @@
   ExceptionHandlerTable* handler_table,
   ImplicitExceptionTable* nul_chk_table,
   AbstractCompiler* compiler,
-  int comp_level,
-  GrowableArray<jlong>* leaf_graph_ids
+  int comp_level
 #ifdef GRAAL
   , Handle installed_code,
   Handle speculation_log
@@ -951,8 +945,6 @@
       _unwind_handler_offset = -1;
     }
 
-    int leaf_graph_ids_size = leaf_graph_ids == NULL ? 0 : round_to(sizeof(jlong) * leaf_graph_ids->length(), oopSize);
-
     _oops_offset             = data_offset();
     _metadata_offset         = _oops_offset          + round_to(code_buffer->total_oop_size(), oopSize);
     _scopes_data_offset      = _metadata_offset      + round_to(code_buffer->total_metadata_size(), wordSize);
@@ -961,8 +953,7 @@
     _dependencies_offset     = _scopes_pcs_offset    + adjust_pcs_size(debug_info->pcs_size());
     _handler_table_offset    = _dependencies_offset  + round_to(dependencies->size_in_bytes (), oopSize);
     _nul_chk_table_offset    = _handler_table_offset + round_to(handler_table->size_in_bytes(), oopSize);
-    _leaf_graph_ids_offset   = _nul_chk_table_offset + round_to(nul_chk_table->size_in_bytes(), oopSize);
-    _nmethod_end_offset      = _leaf_graph_ids_offset + leaf_graph_ids_size;
+    _nmethod_end_offset      = _nul_chk_table_offset + round_to(nul_chk_table->size_in_bytes(), oopSize);
 
     _entry_point             = code_begin()          + offsets->value(CodeOffsets::Entry);
     _verified_entry_point    = code_begin()          + offsets->value(CodeOffsets::Verified_Entry);
@@ -986,10 +977,6 @@
     handler_table->copy_to(this);
     nul_chk_table->copy_to(this);
 
-    if (leaf_graph_ids != NULL && leaf_graph_ids_size > 0) {
-      memcpy(leaf_graph_ids_begin(), leaf_graph_ids->adr_at(0), leaf_graph_ids_size);
-    }
-
     // we use the information of entry points to find out if a method is
     // static or non static
     assert(compiler->is_c2() || compiler->is_graal() ||