1240
1241 static const int zero_words_block_size;
1242
1243 void byte_array_inflate(Register src, Register dst, Register len,
1244 FloatRegister vtmp1, FloatRegister vtmp2,
1245 FloatRegister vtmp3, Register tmp4);
1246
1247 void char_array_compress(Register src, Register dst, Register len,
1248 FloatRegister tmp1Reg, FloatRegister tmp2Reg,
1249 FloatRegister tmp3Reg, FloatRegister tmp4Reg,
1250 Register result);
1251
1252 void encode_iso_array(Register src, Register dst,
1253 Register len, Register result,
1254 FloatRegister Vtmp1, FloatRegister Vtmp2,
1255 FloatRegister Vtmp3, FloatRegister Vtmp4);
1256 void string_indexof(Register str1, Register str2,
1257 Register cnt1, Register cnt2,
1258 Register tmp1, Register tmp2,
1259 Register tmp3, Register tmp4,
1260 int int_cnt1, Register result, int ae);
1261 void string_indexof_char(Register str1, Register cnt1,
1262 Register ch, Register result,
1263 Register tmp1, Register tmp2, Register tmp3);
1264 private:
1265 void add2_with_carry(Register final_dest_hi, Register dest_hi, Register dest_lo,
1266 Register src1, Register src2);
1267 void add2_with_carry(Register dest_hi, Register dest_lo, Register src1, Register src2) {
1268 add2_with_carry(dest_hi, dest_hi, dest_lo, src1, src2);
1269 }
1270 void multiply_64_x_64_loop(Register x, Register xstart, Register x_xstart,
1271 Register y, Register y_idx, Register z,
1272 Register carry, Register product,
1273 Register idx, Register kdx);
1274 void multiply_128_x_128_loop(Register y, Register z,
1275 Register carry, Register carry2,
1276 Register idx, Register jdx,
1277 Register yz_idx1, Register yz_idx2,
1278 Register tmp, Register tmp3, Register tmp4,
1279 Register tmp7, Register product_hi);
|
1240
1241 static const int zero_words_block_size;
1242
1243 void byte_array_inflate(Register src, Register dst, Register len,
1244 FloatRegister vtmp1, FloatRegister vtmp2,
1245 FloatRegister vtmp3, Register tmp4);
1246
1247 void char_array_compress(Register src, Register dst, Register len,
1248 FloatRegister tmp1Reg, FloatRegister tmp2Reg,
1249 FloatRegister tmp3Reg, FloatRegister tmp4Reg,
1250 Register result);
1251
1252 void encode_iso_array(Register src, Register dst,
1253 Register len, Register result,
1254 FloatRegister Vtmp1, FloatRegister Vtmp2,
1255 FloatRegister Vtmp3, FloatRegister Vtmp4);
1256 void string_indexof(Register str1, Register str2,
1257 Register cnt1, Register cnt2,
1258 Register tmp1, Register tmp2,
1259 Register tmp3, Register tmp4,
1260 Register tmp5, Register tmp6,
1261 int int_cnt1, Register result, int ae);
1262 void string_indexof_char(Register str1, Register cnt1,
1263 Register ch, Register result,
1264 Register tmp1, Register tmp2, Register tmp3);
1265 private:
1266 void add2_with_carry(Register final_dest_hi, Register dest_hi, Register dest_lo,
1267 Register src1, Register src2);
1268 void add2_with_carry(Register dest_hi, Register dest_lo, Register src1, Register src2) {
1269 add2_with_carry(dest_hi, dest_hi, dest_lo, src1, src2);
1270 }
1271 void multiply_64_x_64_loop(Register x, Register xstart, Register x_xstart,
1272 Register y, Register y_idx, Register z,
1273 Register carry, Register product,
1274 Register idx, Register kdx);
1275 void multiply_128_x_128_loop(Register y, Register z,
1276 Register carry, Register carry2,
1277 Register idx, Register jdx,
1278 Register yz_idx1, Register yz_idx2,
1279 Register tmp, Register tmp3, Register tmp4,
1280 Register tmp7, Register product_hi);
|