hotspot/src/cpu/aarch64/vm/nativeInst_aarch64.hpp
changeset 36329 06727ae6971e
parent 36060 de5c192c2eac
child 37466 287c4ebd11b0
equal deleted inserted replaced
36328:f627026bc04a 36329:06727ae6971e
   103   static void test() {}                 // override for testing
   103   static void test() {}                 // override for testing
   104 
   104 
   105   inline friend NativeInstruction* nativeInstruction_at(address address);
   105   inline friend NativeInstruction* nativeInstruction_at(address address);
   106 
   106 
   107   static bool is_adrp_at(address instr);
   107   static bool is_adrp_at(address instr);
       
   108 
   108   static bool is_ldr_literal_at(address instr);
   109   static bool is_ldr_literal_at(address instr);
       
   110 
       
   111   bool is_ldr_literal() {
       
   112     return is_ldr_literal_at(addr_at(0));
       
   113   }
       
   114 
   109   static bool is_ldrw_to_zr(address instr);
   115   static bool is_ldrw_to_zr(address instr);
   110 
   116 
   111   static bool is_call_at(address instr) {
   117   static bool is_call_at(address instr) {
   112     const uint32_t insn = (*(uint32_t*)instr);
   118     const uint32_t insn = (*(uint32_t*)instr);
   113     return (insn >> 26) == 0b100101;
   119     return (insn >> 26) == 0b100101;
   114   }
   120   }
       
   121 
   115   bool is_call() {
   122   bool is_call() {
   116     return is_call_at(addr_at(0));
   123     return is_call_at(addr_at(0));
   117   }
   124   }
   118 
   125 
   119   static bool maybe_cpool_ref(address instr) {
   126   static bool maybe_cpool_ref(address instr) {