< prev index next >

src/share/vm/classfile/javaClasses.cpp

Print this page

        

@@ -48,10 +48,11 @@
 #include "runtime/java.hpp"
 #include "runtime/javaCalls.hpp"
 #include "runtime/safepoint.hpp"
 #include "runtime/thread.inline.hpp"
 #include "runtime/vframe.hpp"
+#include "evtrace/traceEvents.hpp"
 #include "utilities/preserveException.hpp"
 
 PRAGMA_FORMAT_MUTE_WARNINGS_FOR_GCC
 
 #define INJECTED_FIELD_COMPUTE_OFFSET(klass, name, signature, may_be_java)    \

@@ -951,10 +952,20 @@
   compute_optional_offset(_thread_status_offset, k, vmSymbols::thread_status_name(), vmSymbols::int_signature());
   // The parkBlocker field is only present starting in 1.6, so don't go fatal.
   compute_optional_offset(_park_blocker_offset, k, vmSymbols::park_blocker_name(), vmSymbols::object_signature());
   compute_optional_offset(_park_event_offset, k, vmSymbols::park_event_name(),
  vmSymbols::long_signature());
+
+  int park_last_global_seq_offset_offset = 0;
+  compute_offset(park_last_global_seq_offset_offset, k, vmSymbols::park_last_global_seq_offset_name(), vmSymbols::long_signature());
+  k->java_mirror()->long_field_put(park_last_global_seq_offset_offset, in_bytes(Thread::park_last_global_seq_offset()));
+  int park_priority_offset_offset = 0;
+  compute_offset(park_priority_offset_offset, k, vmSymbols::park_priority_offset_name(), vmSymbols::long_signature());
+  k->java_mirror()->long_field_put(park_priority_offset_offset, in_bytes(Thread::park_priority_offset()));
+  int nesting_level_offset_offset = 0;
+  compute_offset(nesting_level_offset_offset, k, vmSymbols::nesting_level_offset_name(), vmSymbols::long_signature());
+  k->java_mirror()->long_field_put(nesting_level_offset_offset, in_bytes(Thread::nesting_level_offset()));
 }
 
 
 JavaThread* java_lang_Thread::thread(oop java_thread) {
   return (JavaThread*)java_thread->address_field(_eetop_offset);
< prev index next >