Lines Matching defs:first

319   Register first = noreg;
332 if (first != noreg) {
333 __ z_stmg(first, last, first_offset, Z_SP);
335 first = reg;
364 assert(first != noreg, "Should spill at least one int reg.");
365 __ z_stmg(first, last, first_offset, Z_SP);
427 Register first = noreg;
475 if (first != noreg) {
476 __ z_lmg(first, last, first_offset, Z_SP);
478 first = reg;
499 assert(first != noreg, "Should spill at least one int reg.");
500 __ z_lmg(first, last, first_offset, Z_SP);
621 // VMRegImpl::stack0 refers to the first slot 0(sp).
630 // By skipping the first C ABI register we can call non-static jni methods
790 // We put the first 5 arguments into registers and the rest on the
874 VMReg r = regs[i].first();
916 VMReg r = regs[member_arg_pos].first();
932 VMReg r = regs[0].first();
985 if (src.first()->is_stack()) {
988 Register rHandle = dst.first()->is_stack() ? Z_R1 : dst.first()->as_Register();
990 int slot_in_older_frame = reg2slot(src.first());
995 __ add2reg(rHandle, reg2offset(src.first())+frame_offset, Z_SP);
1003 if (dst.first()->is_stack()) {
1004 __ z_stg(rHandle, reg2offset(dst.first()), Z_SP);
1009 const Register rOop = src.first()->as_Register();
1010 const Register rHandle = dst.first()->is_stack() ? Z_R1 : dst.first()->as_Register();
1030 if (dst.first()->is_stack()) {
1031 __ z_stg(rHandle, reg2offset(dst.first()), Z_SP);
1033 // nothing to do here, since rHandle = dst.first()->as_Register in this case.
1054 if (src.first()->is_stack()) {
1055 if (dst.first()->is_stack()) {
1057 __ z_mvc(Address(Z_SP, reg2offset(dst.first())),
1058 Address(Z_SP, reg2offset(src.first()) + frame_offset), sizeof(float));
1061 Address memaddr(Z_SP, reg2offset(src.first()) + frame_offset);
1062 if (dst.first()->is_Register()) {
1063 __ mem2reg_opt(dst.first()->as_Register(), memaddr, false);
1065 __ mem2freg_opt(dst.first()->as_FloatRegister(), memaddr, false);
1068 } else if (src.first()->is_Register()) {
1069 if (dst.first()->is_stack()) {
1071 __ reg2mem_opt(src.first()->as_Register(),
1072 Address(Z_SP, reg2offset(dst.first()), false ));
1074 if (dst.first()->is_Register()) {
1076 __ move_reg_if_needed(dst.first()->as_Register(), T_INT,
1077 src.first()->as_Register(), T_INT);
1081 __ z_ldgr(dst.first()->as_FloatRegister(), src.first()->as_Register());
1086 __ reg2mem_opt(src.first()->as_Register(), stackaddr, false);
1087 __ mem2freg_opt(dst.first()->as_FloatRegister(), stackaddr, false);
1092 if (dst.first()->is_stack()) {
1094 __ freg2mem_opt(src.first()->as_FloatRegister(),
1095 Address(Z_SP, reg2offset(dst.first())), false);
1097 if (dst.first()->is_Register()) {
1100 __ z_lgdr(dst.first()->as_Register(), src.first()->as_FloatRegister());
1105 __ freg2mem_opt(src.first()->as_FloatRegister(), stackaddr, false);
1106 __ mem2reg_opt(dst.first()->as_Register(), stackaddr, false);
1110 __ move_freg_if_needed(dst.first()->as_FloatRegister(), T_FLOAT,
1111 src.first()->as_FloatRegister(), T_FLOAT);
1131 if (src.first()->is_stack()) {
1132 if (dst.first()->is_stack()) {
1134 __ z_mvc(Address(Z_SP, reg2offset(dst.first())),
1135 Address(Z_SP, reg2offset(src.first()) + frame_offset), sizeof(double));
1138 Address stackaddr(Z_SP, reg2offset(src.first()) + frame_offset);
1140 if (dst.first()->is_Register()) {
1141 __ mem2reg_opt(dst.first()->as_Register(), stackaddr);
1143 __ mem2freg_opt(dst.first()->as_FloatRegister(), stackaddr);
1146 } else if (src.first()->is_Register()) {
1147 if (dst.first()->is_stack()) {
1149 __ reg2mem_opt(src.first()->as_Register(),
1150 Address(Z_SP, reg2offset(dst.first())));
1152 if (dst.first()->is_Register()) {
1154 __ move_reg_if_needed(dst.first()->as_Register(), T_LONG,
1155 src.first()->as_Register(), T_LONG);
1159 __ z_ldgr(dst.first()->as_FloatRegister(), src.first()->as_Register());
1163 __ reg2mem_opt(src.first()->as_Register(), stackaddr);
1164 __ mem2freg_opt(dst.first()->as_FloatRegister(), stackaddr);
1169 if (dst.first()->is_stack()) {
1171 __ freg2mem_opt(src.first()->as_FloatRegister(),
1172 Address(Z_SP, reg2offset(dst.first())));
1174 if (dst.first()->is_Register()) {
1177 __ z_lgdr(dst.first()->as_Register(), src.first()->as_FloatRegister());
1182 __ freg2mem_opt(src.first()->as_FloatRegister(), stackaddr);
1183 __ mem2reg_opt(dst.first()->as_Register(), stackaddr);
1188 __ move_freg_if_needed(dst.first()->as_FloatRegister(), T_DOUBLE,
1189 src.first()->as_FloatRegister(), T_DOUBLE);
1204 if (src.first()->is_stack()) {
1205 if (dst.first()->is_stack()) {
1207 __ z_mvc(Address(Z_SP, reg2offset(dst.first())),
1208 Address(Z_SP, reg2offset(src.first()) + frame_offset), sizeof(long));
1211 assert(dst.first()->is_Register(), "long dst value must be in GPR");
1212 __ mem2reg_opt(dst.first()->as_Register(),
1213 Address(Z_SP, reg2offset(src.first()) + frame_offset));
1217 assert(src.first()->is_Register(), "long src value must be in GPR");
1218 if (dst.first()->is_stack()) {
1220 __ reg2mem_opt(src.first()->as_Register(),
1221 Address(Z_SP, reg2offset(dst.first())));
1224 assert(dst.first()->is_Register(), "long dst value must be in GPR");
1225 __ move_reg_if_needed(dst.first()->as_Register(),
1226 T_LONG, src.first()->as_Register(), T_LONG);
1248 if (src.first()->is_stack()) {
1249 Address memaddr(Z_SP, reg2offset(src.first()) + frame_offset);
1250 if (dst.first()->is_stack()) {
1252 Address firstaddr(Z_SP, reg2offset(dst.first()));
1257 __ mem2reg_signed_opt(dst.first()->as_Register(), memaddr);
1260 if (dst.first()->is_stack()) {
1262 Address firstaddr(Z_SP, reg2offset(dst.first()));
1263 __ z_lgfr(src.first()->as_Register(), src.first()->as_Register());
1264 __ reg2mem_opt(src.first()->as_Register(), firstaddr);
1267 __ z_lgfr(dst.first()->as_Register(), src.first()->as_Register());
1283 // Handle double words first.
1285 if (in_regs[i].first()->is_FloatRegister() && in_sig_bt[i] == T_DOUBLE) {
1289 const FloatRegister freg = in_regs[i].first()->as_FloatRegister();
1296 } else if (in_regs[i].first()->is_Register() &&
1299 const Register reg = in_regs[i].first()->as_Register();
1315 if (in_regs[i].first()->is_FloatRegister()) {
1320 const FloatRegister freg = in_regs[i].first()->as_FloatRegister();
1328 } else if (in_regs[i].first()->is_stack() &&
1330 int offset_in_older_frame = in_regs[i].first()->reg2stack() + SharedRuntime::out_preserve_stack_slots();
1386 if (in_regs[i].first()->is_Register()) {
1388 __ clear_reg(in_regs[i].first()->as_Register(), true, false);
1390 if (in_regs[i].first()->is_FloatRegister()) {
1391 FloatRegister fr = in_regs[i].first()->as_FloatRegister();
1408 if (src.first()->is_stack()) {
1409 if (dst.first()->is_stack()) {
1411 __ mem2reg_opt(Z_R0_scratch, Address(Z_SP, reg2offset(src.first()) + frame_offset));
1412 __ reg2mem_opt(Z_R0_scratch, Address(Z_SP, reg2offset(dst.first())));
1415 __ mem2reg_opt(dst.first()->as_Register(),
1416 Address(Z_SP, reg2offset(src.first()) + frame_offset));
1419 if (dst.first()->is_stack()) {
1421 __ reg2mem_opt(src.first()->as_Register(), Address(Z_SP, reg2offset(dst.first())));
1423 __ lgr_if_needed(dst.first()->as_Register(), src.first()->as_Register());
1439 assert(!body_arg.first()->is_Register() || body_arg.first()->as_Register() != tmp_reg,
1441 assert(!length_arg.first()->is_Register() || length_arg.first()->as_Register() != tmp_reg,
1450 if (reg.first()->is_stack()) {
1456 const Register first = reg.first()->as_Register();
1460 if (tmp_reg != first) {
1463 __ compare64_and_branch(first, (RegisterOrConstant)0L, Assembler::bcondEqual, set_out_args);
1464 __ z_lgf(tmp2_reg, Address(first, arrayOopDesc::length_offset_in_bytes()));
1465 __ add2reg(tmp_reg, arrayOopDesc::base_offset_in_bytes(in_elem_type), first);
1531 // The first hidden argument arg[0] is a pointer to the JNI environment.
1537 // which is passed as the first visible argument.
1628 // for storing the first five register arguments).
1662 // at the first byte above the separator line.
1714 if (in_regs[i].first()->is_Register()) {
1715 const Register reg = in_regs[i].first()->as_Register();
1728 if (in_regs[i].first()->is_FloatRegister()) {
1872 if (in_regs[jix].first()->is_Register()) {
1873 assert(!reg_destroyed[in_regs[jix].first()->as_Register()->encoding()], "ack!");
1875 if (in_regs[jix].first()->is_FloatRegister()) {
1876 assert(!freg_destroyed[in_regs[jix].first()->as_FloatRegister()->encoding()], "ack!");
1879 if (out_regs[cix].first()->is_Register()) {
1880 reg_destroyed[out_regs[cix].first()->as_Register()->encoding()] = true;
1882 if (out_regs[cix].first()->is_FloatRegister()) {
1883 freg_destroyed[out_regs[cix].first()->as_FloatRegister()->encoding()] = true;
1951 // Get JNIEnv* which is first argument to native.
2258 // pending_exception first and hence have it in a register already.
2417 VMReg r_1 = regs[i].first();
2544 assert(!regs[i].second()->is_valid() || regs[i].first()->next() == regs[i].second(),
2546 VMReg r_1 = regs[i].first();