< prev index next >

src/cpu/aarch64/vm/macroAssembler_aarch64.hpp

Print this page




1192       unsigned long offset;
1193       adrp(dest, InternalAddress(const_addr.target()), offset);
1194       ldr(dest, Address(dest, offset));
1195     }
1196   }
1197 
1198   address read_polling_page(Register r, address page, relocInfo::relocType rtype);
1199   address read_polling_page(Register r, relocInfo::relocType rtype);
1200 
1201   // CRC32 code for java.util.zip.CRC32::updateBytes() instrinsic.
1202   void update_byte_crc32(Register crc, Register val, Register table);
1203   void update_word_crc32(Register crc, Register v, Register tmp,
1204         Register table0, Register table1, Register table2, Register table3,
1205         bool upper = false);
1206 
1207   void string_compare(Register str1, Register str2,
1208                       Register cnt1, Register cnt2, Register result,
1209                       Register tmp1,
1210                       FloatRegister vtmp, FloatRegister vtmpZ, int ae);
1211 


1212   void arrays_equals(Register a1, Register a2,
1213                      Register result, Register cnt1,
1214                      int elem_size, bool is_string);
1215 
1216   void fill_words(Register base, Register cnt, Register value);
1217   void zero_words(Register base, u_int64_t cnt);
1218   void zero_words(Register ptr, Register cnt);
1219   void zero_dcache_blocks(Register base, Register cnt);
1220 
1221   static const int zero_words_block_size;
1222 
1223   void byte_array_inflate(Register src, Register dst, Register len,
1224                           FloatRegister vtmp1, FloatRegister vtmp2,
1225                           FloatRegister vtmp3, Register tmp4);
1226 
1227   void char_array_compress(Register src, Register dst, Register len,
1228                            FloatRegister tmp1Reg, FloatRegister tmp2Reg,
1229                            FloatRegister tmp3Reg, FloatRegister tmp4Reg,
1230                            Register result);
1231 




1192       unsigned long offset;
1193       adrp(dest, InternalAddress(const_addr.target()), offset);
1194       ldr(dest, Address(dest, offset));
1195     }
1196   }
1197 
1198   address read_polling_page(Register r, address page, relocInfo::relocType rtype);
1199   address read_polling_page(Register r, relocInfo::relocType rtype);
1200 
1201   // CRC32 code for java.util.zip.CRC32::updateBytes() instrinsic.
1202   void update_byte_crc32(Register crc, Register val, Register table);
1203   void update_word_crc32(Register crc, Register v, Register tmp,
1204         Register table0, Register table1, Register table2, Register table3,
1205         bool upper = false);
1206 
1207   void string_compare(Register str1, Register str2,
1208                       Register cnt1, Register cnt2, Register result,
1209                       Register tmp1,
1210                       FloatRegister vtmp, FloatRegister vtmpZ, int ae);
1211 
1212   void has_negatives(Register ary1, Register len, Register result);
1213 
1214   void arrays_equals(Register a1, Register a2,
1215                      Register result, Register cnt1,
1216                      int elem_size, bool is_string);
1217 
1218   void fill_words(Register base, Register cnt, Register value);
1219   void zero_words(Register base, u_int64_t cnt);
1220   void zero_words(Register ptr, Register cnt);
1221   void zero_dcache_blocks(Register base, Register cnt);
1222 
1223   static const int zero_words_block_size;
1224 
1225   void byte_array_inflate(Register src, Register dst, Register len,
1226                           FloatRegister vtmp1, FloatRegister vtmp2,
1227                           FloatRegister vtmp3, Register tmp4);
1228 
1229   void char_array_compress(Register src, Register dst, Register len,
1230                            FloatRegister tmp1Reg, FloatRegister tmp2Reg,
1231                            FloatRegister tmp3Reg, FloatRegister tmp4Reg,
1232                            Register result);
1233 


< prev index next >