src/hotspot/cpu/ppc/nativeInst_ppc.hpp
changeset 48506 478e77658965
parent 47216 71c04702a3d5
child 48637 7bba05746c44
--- a/src/hotspot/cpu/ppc/nativeInst_ppc.hpp	Wed Jan 10 09:04:11 2018 +0100
+++ b/src/hotspot/cpu/ppc/nativeInst_ppc.hpp	Wed Jan 10 11:09:55 2018 +0100
@@ -31,6 +31,7 @@
 #include "memory/allocation.hpp"
 #include "runtime/icache.hpp"
 #include "runtime/os.hpp"
+#include "runtime/safepointMechanism.hpp"
 
 // We have interfaces for the following instructions:
 //
@@ -93,6 +94,11 @@
   bool is_safepoint_poll() {
     // Is the current instruction a POTENTIAL read access to the polling page?
     // The current arguments of the instruction are not checked!
+    if (SafepointMechanism::uses_thread_local_poll() && USE_POLL_BIT_ONLY) {
+      int encoding = SafepointMechanism::poll_bit();
+      return MacroAssembler::is_tdi(long_at(0), Assembler::traptoGreaterThanUnsigned | Assembler::traptoEqual,
+                                    -1, encoding);
+    }
     return MacroAssembler::is_load_from_polling_page(long_at(0), NULL);
   }