< prev index next >
src/share/vm/runtime/thread.hpp
Print this page
@@ -813,10 +813,13 @@
private: // restore original namespace restriction
#endif
JavaFrameAnchor _anchor; // Encapsulation of current java frame and it state
+ size_t _bytes_until_sample; // Thread local counter to determine when to sample
+ // allocations.
+
ThreadFunction _entry_point;
JNIEnv _jni_environment;
// Deopt support
@@ -1100,10 +1103,13 @@
// last_Java_pc
address last_Java_pc(void) { return _anchor.last_Java_pc(); }
+ // Bytes until next heap sample.
+ size_t* bytes_until_sample() { return &_bytes_until_sample; }
+
// Safepoint support
#if !(defined(PPC64) || defined(AARCH64))
JavaThreadState thread_state() const { return _thread_state; }
void set_thread_state(JavaThreadState s) { _thread_state = s; }
#else
@@ -1552,10 +1558,11 @@
return byte_offset_of(JavaThread, _anchor) + JavaFrameAnchor::last_Java_pc_offset();
}
static ByteSize frame_anchor_offset() {
return byte_offset_of(JavaThread, _anchor);
}
+ static ByteSize bytes_until_sample_offset() { return byte_offset_of(JavaThread, _bytes_until_sample); }
static ByteSize callee_target_offset() { return byte_offset_of(JavaThread, _callee_target); }
static ByteSize vm_result_offset() { return byte_offset_of(JavaThread, _vm_result); }
static ByteSize vm_result_2_offset() { return byte_offset_of(JavaThread, _vm_result_2); }
static ByteSize thread_state_offset() { return byte_offset_of(JavaThread, _thread_state); }
static ByteSize saved_exception_pc_offset() { return byte_offset_of(JavaThread, _saved_exception_pc); }
< prev index next >