hotspot/src/share/vm/runtime/thread.cpp
changeset 18938 ff8f8cec9434
parent 18931 5de3638104b4
child 18943 7d0ef675e808
--- a/hotspot/src/share/vm/runtime/thread.cpp	Tue Jul 16 07:33:29 2013 +0200
+++ b/hotspot/src/share/vm/runtime/thread.cpp	Wed Jun 12 11:17:39 2013 +0200
@@ -954,6 +954,14 @@
 }
 
 
+bool Thread::is_in_usable_stack(address adr) const {
+  size_t stack_guard_size = os::uses_stack_guard_pages() ? (StackYellowPages + StackRedPages) * os::vm_page_size() : 0;
+  size_t usable_stack_size = _stack_size - stack_guard_size;
+
+  return ((adr < stack_base()) && (adr >= stack_base() - usable_stack_size));
+}
+
+
 // We had to move these methods here, because vm threads get into ObjectSynchronizer::enter
 // However, there is a note in JavaThread::is_lock_owned() about the VM threads not being
 // used for compilation in the future. If that change is made, the need for these methods