4425 __ mov(dst_reg, zr);
4426 %}
4427
4428 enc_class aarch64_enc_mov_p1(iRegP dst, immP_1 src) %{
4429 MacroAssembler _masm(&cbuf);
4430 Register dst_reg = as_Register($dst$$reg);
4431 __ mov(dst_reg, (u_int64_t)1);
4432 %}
4433
4434 enc_class aarch64_enc_mov_poll_page(iRegP dst, immPollPage src) %{
4435 MacroAssembler _masm(&cbuf);
4436 address page = (address)$src$$constant;
4437 Register dst_reg = as_Register($dst$$reg);
4438 unsigned long off;
4439 __ adrp(dst_reg, Address(page, relocInfo::poll_type), off);
4440 assert(off == 0, "assumed offset == 0");
4441 %}
4442
4443 enc_class aarch64_enc_mov_byte_map_base(iRegP dst, immByteMapBase src) %{
4444 MacroAssembler _masm(&cbuf);
4445 address page = (address)$src$$constant;
4446 Register dst_reg = as_Register($dst$$reg);
4447 unsigned long off;
4448 __ adrp(dst_reg, ExternalAddress(page), off);
4449 assert(off == 0, "assumed offset == 0");
4450 %}
4451
4452 enc_class aarch64_enc_mov_n(iRegN dst, immN src) %{
4453 MacroAssembler _masm(&cbuf);
4454 Register dst_reg = as_Register($dst$$reg);
4455 address con = (address)$src$$constant;
4456 if (con == NULL) {
4457 ShouldNotReachHere();
4458 } else {
4459 relocInfo::relocType rtype = $src->constant_reloc();
4460 assert(rtype == relocInfo::oop_type, "unexpected reloc type");
4461 __ set_narrow_oop(dst_reg, (jobject)con);
4462 }
4463 %}
4464
4465 enc_class aarch64_enc_mov_n0(iRegN dst, immN0 src) %{
4466 MacroAssembler _masm(&cbuf);
4467 Register dst_reg = as_Register($dst$$reg);
4468 __ mov(dst_reg, zr);
4469 %}
|
4425 __ mov(dst_reg, zr);
4426 %}
4427
4428 enc_class aarch64_enc_mov_p1(iRegP dst, immP_1 src) %{
4429 MacroAssembler _masm(&cbuf);
4430 Register dst_reg = as_Register($dst$$reg);
4431 __ mov(dst_reg, (u_int64_t)1);
4432 %}
4433
4434 enc_class aarch64_enc_mov_poll_page(iRegP dst, immPollPage src) %{
4435 MacroAssembler _masm(&cbuf);
4436 address page = (address)$src$$constant;
4437 Register dst_reg = as_Register($dst$$reg);
4438 unsigned long off;
4439 __ adrp(dst_reg, Address(page, relocInfo::poll_type), off);
4440 assert(off == 0, "assumed offset == 0");
4441 %}
4442
4443 enc_class aarch64_enc_mov_byte_map_base(iRegP dst, immByteMapBase src) %{
4444 MacroAssembler _masm(&cbuf);
4445 __ load_byte_map_base($dst$$Register);
4446 %}
4447
4448 enc_class aarch64_enc_mov_n(iRegN dst, immN src) %{
4449 MacroAssembler _masm(&cbuf);
4450 Register dst_reg = as_Register($dst$$reg);
4451 address con = (address)$src$$constant;
4452 if (con == NULL) {
4453 ShouldNotReachHere();
4454 } else {
4455 relocInfo::relocType rtype = $src->constant_reloc();
4456 assert(rtype == relocInfo::oop_type, "unexpected reloc type");
4457 __ set_narrow_oop(dst_reg, (jobject)con);
4458 }
4459 %}
4460
4461 enc_class aarch64_enc_mov_n0(iRegN dst, immN0 src) %{
4462 MacroAssembler _masm(&cbuf);
4463 Register dst_reg = as_Register($dst$$reg);
4464 __ mov(dst_reg, zr);
4465 %}
|