diff src/share/vm/code/nmethod.hpp @ 13641:5a9afbf72714

Add a speculation oop for uncommon trap deoptimization. Save it in the SpeculationLog during deoptimization.
author Gilles Duboscq <duboscq@ssw.jku.at>
date Thu, 12 Dec 2013 15:13:02 +0100
parents 02f27ecb4f3a
children cd22c8dbda4f d8041d695d19
line wrap: on
line diff
--- a/src/share/vm/code/nmethod.hpp	Wed Jan 15 15:11:47 2014 +0100
+++ b/src/share/vm/code/nmethod.hpp	Thu Dec 12 15:13:02 2013 +0100
@@ -119,7 +119,7 @@
 #ifdef GRAAL
   // Needed to keep nmethods alive that are not the default nmethod for the associated Method.
   oop       _graal_installed_code;
-  typeArrayOop _triggered_deoptimizations;
+  oop       _speculation_log;
 #endif
 
   // To support simple linked-list chaining of nmethods:
@@ -280,7 +280,7 @@
           GrowableArray<jlong>* leaf_graph_ids
 #ifdef GRAAL
           , Handle installed_code,
-          Handle triggered_deoptimizations
+          Handle speculation_log
 #endif
           );
 
@@ -322,7 +322,7 @@
                               GrowableArray<jlong>* leaf_graph_ids = NULL
 #ifdef GRAAL
                               , Handle installed_code = Handle(),
-                              Handle triggered_deoptimizations = Handle()
+                              Handle speculation_log = Handle()
 #endif
   );
 
@@ -592,6 +592,8 @@
 #ifdef GRAAL
   oop graal_installed_code() { return _graal_installed_code ; }
   void set_graal_installed_code(oop installed_code) { _graal_installed_code = installed_code;  }
+  oop speculation_log() { return _speculation_log ; }
+  void set_speculation_log(oop speculation_log) { _speculation_log = speculation_log;  }
 #endif
 
   // GC support