src/hotspot/cpu/ppc/nativeInst_ppc.hpp
changeset 48506 478e77658965
parent 47216 71c04702a3d5
child 48637 7bba05746c44
equal deleted inserted replaced
48505:5db30620a3db 48506:478e77658965
    29 #include "asm/assembler.hpp"
    29 #include "asm/assembler.hpp"
    30 #include "asm/macroAssembler.hpp"
    30 #include "asm/macroAssembler.hpp"
    31 #include "memory/allocation.hpp"
    31 #include "memory/allocation.hpp"
    32 #include "runtime/icache.hpp"
    32 #include "runtime/icache.hpp"
    33 #include "runtime/os.hpp"
    33 #include "runtime/os.hpp"
       
    34 #include "runtime/safepointMechanism.hpp"
    34 
    35 
    35 // We have interfaces for the following instructions:
    36 // We have interfaces for the following instructions:
    36 //
    37 //
    37 // - NativeInstruction
    38 // - NativeInstruction
    38 //   - NativeCall
    39 //   - NativeCall
    91   }
    92   }
    92 
    93 
    93   bool is_safepoint_poll() {
    94   bool is_safepoint_poll() {
    94     // Is the current instruction a POTENTIAL read access to the polling page?
    95     // Is the current instruction a POTENTIAL read access to the polling page?
    95     // The current arguments of the instruction are not checked!
    96     // The current arguments of the instruction are not checked!
       
    97     if (SafepointMechanism::uses_thread_local_poll() && USE_POLL_BIT_ONLY) {
       
    98       int encoding = SafepointMechanism::poll_bit();
       
    99       return MacroAssembler::is_tdi(long_at(0), Assembler::traptoGreaterThanUnsigned | Assembler::traptoEqual,
       
   100                                     -1, encoding);
       
   101     }
    96     return MacroAssembler::is_load_from_polling_page(long_at(0), NULL);
   102     return MacroAssembler::is_load_from_polling_page(long_at(0), NULL);
    97   }
   103   }
    98 
   104 
    99   bool is_memory_serialization(JavaThread *thread, void *ucontext) {
   105   bool is_memory_serialization(JavaThread *thread, void *ucontext) {
   100     // Is the current instruction a write access of thread to the
   106     // Is the current instruction a write access of thread to the