changeset 6022:6a6c94b49dab

8032634: Add #ifdef PPC64 around OrderAccess operations on _thread_state. Reviewed-by: dholmes, kvn
author goetz
date Fri, 24 Jan 2014 10:23:34 +0100
parents 12fb826833f0
children f0221ff14605
files src/share/vm/runtime/thread.hpp
diffstat 1 files changed, 10 insertions(+), 5 deletions(-) [+]
line wrap: on
line diff
--- a/src/share/vm/runtime/thread.hpp	Wed Jan 22 14:27:18 2014 -0800
+++ b/src/share/vm/runtime/thread.hpp	Fri Jan 24 10:23:34 2014 +0100
@@ -1033,17 +1033,21 @@
 
   // Last frame anchor routines
 
-  JavaFrameAnchor* frame_anchor(void)                { return &_anchor; }
+  JavaFrameAnchor* frame_anchor(void)            { return &_anchor; }
 
   // last_Java_sp
-  bool has_last_Java_frame() const                   { return _anchor.has_last_Java_frame(); }
-  intptr_t* last_Java_sp() const                     { return _anchor.last_Java_sp(); }
+  bool has_last_Java_frame() const               { return _anchor.has_last_Java_frame(); }
+  intptr_t* last_Java_sp() const                 { return _anchor.last_Java_sp(); }
 
   // last_Java_pc
 
-  address last_Java_pc(void)                         { return _anchor.last_Java_pc(); }
+  address last_Java_pc(void)                     { return _anchor.last_Java_pc(); }
 
   // Safepoint support
+#ifndef PPC64
+  JavaThreadState thread_state() const           { return _thread_state; }
+  void set_thread_state(JavaThreadState s)       { _thread_state = s;    }
+#else
   // Use membars when accessing volatile _thread_state. See
   // Threads::create_vm() for size checks.
   JavaThreadState thread_state() const           {
@@ -1052,7 +1056,8 @@
   void set_thread_state(JavaThreadState s)       {
     OrderAccess::release_store((volatile jint*)&_thread_state, (jint)s);
   }
-  ThreadSafepointState *safepoint_state() const  { return _safepoint_state;  }
+#endif
+  ThreadSafepointState *safepoint_state() const  { return _safepoint_state; }
   void set_safepoint_state(ThreadSafepointState *state) { _safepoint_state = state; }
   bool is_at_poll_safepoint()                    { return _safepoint_state->is_at_poll_safepoint(); }