/art/compiler/dex/quick/x86/ |
D | fp_x86.cc | 73 NewLIR2(op, r_dest.GetReg(), r_src2.GetReg()); in GenArithOpFloat() 123 NewLIR2(op, rl_result.reg.GetReg(), rl_src2.reg.GetReg()); in GenArithOpDouble() 240 NewLIR2(kX86Cvtsi2ssRR, temp_reg.GetReg(), rl_result.reg.GetReg()); in GenConversion() 241 NewLIR2(kX86ComissRR, rl_src.reg.GetReg(), temp_reg.GetReg()); in GenConversion() 242 LIR* branch_pos_overflow = NewLIR2(kX86Jcc8, 0, kX86CondAe); in GenConversion() 243 LIR* branch_na_n = NewLIR2(kX86Jcc8, 0, kX86CondP); in GenConversion() 244 NewLIR2(kX86Cvttss2siRR, rl_result.reg.GetReg(), rl_src.reg.GetReg()); in GenConversion() 247 NewLIR2(kX86Xor32RR, rl_result.reg.GetReg(), rl_result.reg.GetReg()); in GenConversion() 261 NewLIR2(kX86Cvtsi2sdRR, temp_reg.GetReg(), rl_result.reg.GetReg()); in GenConversion() 262 NewLIR2(kX86ComisdRR, rl_src.reg.GetReg(), temp_reg.GetReg()); in GenConversion() [all …]
|
D | int_x86.cc | 45 NewLIR2(kX86Set8R, rl_result.reg.GetReg(), kX86CondG); // result = (src1 > src2) ? 1 : 0 in GenCmpLong() 46 NewLIR2(kX86Set8R, temp_reg.GetReg(), kX86CondL); // temp = (src1 >= src2) ? 0 : 1 in GenCmpLong() 47 NewLIR2(kX86Sub8RR, rl_result.reg.GetReg(), temp_reg.GetReg()); in GenCmpLong() 48 NewLIR2(kX86Movsx8qRR, rl_result.reg.GetReg(), rl_result.reg.GetReg()); in GenCmpLong() 64 NewLIR2(kX86Set8R, rs_r2.GetReg(), kX86CondL); // r2 = (r1:r0) < (r3:r2) ? 1 : 0 in GenCmpLong() 65 NewLIR2(kX86Movzx8RR, rs_r2.GetReg(), rs_r2.GetReg()); in GenCmpLong() 68 NewLIR2(kX86Set8R, rs_r0.GetReg(), kX86CondNz); // r0 = (r1:r0) != (r3:r2) ? 1 : 0 in GenCmpLong() 69 NewLIR2(kX86Movzx8RR, r0, r0); in GenCmpLong() 100 NewLIR2(src1.Is64Bit() ? kX86Cmp64RR : kX86Cmp32RR, src1.GetReg(), src2.GetReg()); in OpCmpBranch() 102 LIR* branch = NewLIR2(kX86Jcc8, 0 /* lir operand for Jcc offset */ , in OpCmpBranch() [all …]
|
D | target_x86.cc | 874 NewLIR2(kX86Mov64RT, rs_rAX.GetReg(), in CheckSuspendUsingLoad() 877 NewLIR2(kX86Mov32RT, rs_rAX.GetReg(), in CheckSuspendUsingLoad() 1544 NewLIR2(kX86XorpsRR, reg, reg); in GenConst128() 1595 NewLIR2(kX86MovdqaRR, rs_dest.GetReg(), rs_src.GetReg()); in GenMoveVector() 1618 NewLIR2(kX86MovdqaRR, rs_src1_high_tmp.GetReg(), rs_src2.GetReg()); in GenMultiplyVectorSignedByte() 1619 NewLIR2(kX86MovdqaRR, rs_dest_high_tmp.GetReg(), rs_dest_src1.GetReg()); in GenMultiplyVectorSignedByte() 1623 NewLIR2(kX86PmullwRR, rs_dest_src1.GetReg(), rs_src2.GetReg()); in GenMultiplyVectorSignedByte() 1629 NewLIR2(kX86PsrlwRI, rs_src1_high_tmp.GetReg(), 0x8); in GenMultiplyVectorSignedByte() 1633 NewLIR2(kX86PmullwRR, rs_src1_high_tmp.GetReg(), rs_dest_high_tmp.GetReg()); in GenMultiplyVectorSignedByte() 1636 NewLIR2(kX86PorRR, rs_dest_src1.GetReg(), rs_src1_high_tmp.GetReg()); in GenMultiplyVectorSignedByte() [all …]
|
D | utility_x86.cc | 91 return NewLIR2(kX86XorpsRR, r_dest.GetReg(), r_dest.GetReg()); in LoadConstantNoClobber() 98 res = NewLIR2(kX86Xor32RR, r_dest.GetReg(), r_dest.GetReg()); in LoadConstantNoClobber() 102 res = NewLIR2(kX86Mov32RI, r_dest.GetReg(), value); in LoadConstantNoClobber() 106 NewLIR2(kX86MovdxrRR, r_dest_save.GetReg(), r_dest.GetReg()); in LoadConstantNoClobber() 120 LIR* branch = NewLIR2(kX86Jcc8, 0 /* offset to be patched */, in OpCondBranch() 198 return NewLIR2(opcode, r_dest_src1.GetReg(), value); in OpRegImm() 238 NewLIR2(is64Bit ? kX86Mov64RR : kX86Mov32RR, r_dest_src1.GetReg(), r_src2.GetReg()); in OpRegReg() 239 NewLIR2(is64Bit ? kX86Sal64RI : kX86Sal32RI, r_dest_src1.GetReg(), is64Bit ? 56 : 24); in OpRegReg() 240 return NewLIR2(is64Bit ? kX86Sar64RI : kX86Sar32RI, r_dest_src1.GetReg(), in OpRegReg() 254 return NewLIR2(opcode, r_dest_src1.GetReg(), r_src2.GetReg()); in OpRegReg() [all …]
|
D | call_x86.cc | 129 NewLIR2(cu_->target64 ? kX86Mov64RT : kX86Mov32RT, rl_result.reg.GetReg(), ex_offset); in GenMoveException() 130 NewLIR2(cu_->target64 ? kX86Mov64TI : kX86Mov32TI, ex_offset, 0); in GenMoveException() 141 NewLIR2(cu_->target64 ? kX86Mov64RT : kX86Mov32RT, reg_card_base.GetReg(), ct_offset); in UnconditionallyMarkGCCard() 354 cg->NewLIR2(kX86Mov32RT, arg0_ref.GetReg(), info->string_init_offset); in X86NextSDCallInsn()
|
/art/compiler/dex/quick/arm/ |
D | fp_arm.cc | 180 NewLIR2(kThumb2VcvtF64S32, tmp1.GetReg(), src_high.GetReg()); in GenConversion() 181 NewLIR2(kThumb2VcvtF64U32, rl_result.reg.GetReg(), src_low.GetReg()); in GenConversion() 206 NewLIR2(kThumb2VcvtF64S32, high_val.GetReg(), src_high.GetReg()); in GenConversion() 207 NewLIR2(kThumb2VcvtF64U32, low_val.GetReg(), src_low.GetReg()); in GenConversion() 211 NewLIR2(kThumb2VcvtDF, rl_result.reg.GetReg(), low_val.GetReg()); in GenConversion() 236 NewLIR2(op, rl_result.reg.GetReg(), src_reg); in GenConversion() 240 NewLIR2(op, rl_result.reg.GetReg(), src_reg); in GenConversion() 255 NewLIR2(kThumb2Vcmpd, rl_src1.reg.GetReg(), rl_src2.reg.GetReg()); in GenFusedFPCmpBranch() 261 NewLIR2(kThumb2Vcmps, rl_src1.reg.GetReg(), rl_src2.reg.GetReg()); in GenFusedFPCmpBranch() 329 NewLIR2(kThumb2Vcmpd, rl_src1.reg.GetReg(), rl_src2.reg.GetReg()); in GenCmpFP() [all …]
|
D | utility_arm.cc | 83 NewLIR2(kThumb2Vmovs_IMM8, r_dest, 0); in LoadFPConstantValue() 89 return NewLIR2(kThumb2Vmovs_IMM8, r_dest, encoded_imm); in LoadFPConstantValue() 233 return NewLIR2(kThumbMovImm, r_dest.GetReg(), value); in LoadConstantNoClobber() 238 res = NewLIR2(kThumb2MovI8M, r_dest.GetReg(), mod_imm); in LoadConstantNoClobber() 243 res = NewLIR2(kThumb2MvnI8M, r_dest.GetReg(), mod_imm); in LoadConstantNoClobber() 248 res = NewLIR2(kThumb2MovImm16, r_dest.GetReg(), value); in LoadConstantNoClobber() 252 res = NewLIR2(kThumb2MovImm16, r_dest.GetReg(), Low16Bits(value)); in LoadConstantNoClobber() 253 NewLIR2(kThumb2MovImm16H, r_dest.GetReg(), High16Bits(value)); in LoadConstantNoClobber() 264 LIR* branch = NewLIR2(kThumbBCond, 0 /* offset to be patched */, in OpCondBranch() 403 return NewLIR2(opcode, r_dest_src1.GetReg(), r_src2.GetReg()); in OpRegRegShift() [all …]
|
D | int_arm.cc | 77 return NewLIR2(kThumb2It, code, mask); in OpIT() 147 NewLIR2(kThumb2MovI8M, t_reg.GetReg(), ModifiedImmediate(-1)); in GenCmpLong() 396 branch = NewLIR2((arm_cond == kArmCondEq) ? kThumb2Cbz : kThumb2Cbnz, in OpCmpImmBranch() 401 branch = NewLIR2(kThumb2Cbz, reg.GetReg(), 0); in OpCmpImmBranch() 407 branch = NewLIR2(kThumbBCond, 0, arm_cond); in OpCmpImmBranch() 946 NewLIR2(kThumbOrr, r_tmp.GetReg(), r_tmp_high.GetReg()); in GenInlinedCas() 1091 LIR* lir = NewLIR2(kThumb2LdrPcRel12, reg.GetReg(), 0); in OpPcRelLoad() 1100 LIR* movw = NewLIR2(kThumb2MovImm16, r_dest.GetReg(), 0); in OpPcRelDexCacheArrayAddr() 1101 LIR* movt = NewLIR2(kThumb2MovImm16H, r_dest.GetReg(), 0); in OpPcRelDexCacheArrayAddr() 1103 LIR* add_pc = NewLIR2(add_pc_opcode, r_dest.GetReg(), rs_rARM_PC.GetReg()); in OpPcRelDexCacheArrayAddr() [all …]
|
D | call_arm.cc | 87 NewLIR2(kThumb2LdmiaWB, r_base.GetReg(), (1 << r_key.GetRegNum()) | (1 << r_disp.GetRegNum())); in GenLargeSparseSwitch()
|
/art/compiler/dex/quick/mips/ |
D | utility_mips.cc | 142 res = NewLIR2(kMipsMove, r_dest.GetReg(), rZERO); in LoadConstantNoClobber() 150 res = NewLIR2(kMipsLui, r_dest.GetReg(), value >> 16); in LoadConstantNoClobber() 156 NewLIR2(kMipsMtc1, r_dest.GetReg(), r_dest_save.GetReg()); in LoadConstantNoClobber() 181 res = NewLIR2(kMipsLui, r_dest.GetReg(), value >> 16); in LoadConstantWideNoClobber() 184 res = NewLIR2(kMipsLui, r_dest.GetReg(), value >> 16); in LoadConstantWideNoClobber() 188 NewLIR2(kMips64Dahi, r_dest.GetReg(), value >> 32); in LoadConstantWideNoClobber() 191 NewLIR2(kMips64Dati, r_dest.GetReg(), value >> 48); in LoadConstantWideNoClobber() 194 res = NewLIR2(kMipsLui, r_dest.GetReg(), value >> 16); in LoadConstantWideNoClobber() 195 NewLIR2(kMips64Dahi, r_dest.GetReg(), (value >> 32) + bit31); in LoadConstantWideNoClobber() 197 res = NewLIR2(kMipsLui, r_dest.GetReg(), value >> 16); in LoadConstantWideNoClobber() [all …]
|
D | int_mips.cc | 134 branch = NewLIR2(br_op, src1.GetReg(), src2.GetReg()); in OpCmpBranch() 240 NewLIR2(kMipsMtc1, r_src.GetLowReg(), r_dest.GetLowReg()); in OpRegCopyWide() 241 NewLIR2(kMipsMtc1, r_src.GetHighReg(), r_dest.GetHighReg()); in OpRegCopyWide() 244 NewLIR2(kMipsMtc1, r_src.GetLowReg(), r_dest.GetReg()); in OpRegCopyWide() 245 NewLIR2(kMipsMthc1, r_src.GetHighReg(), r_dest.GetReg()); in OpRegCopyWide() 252 NewLIR2(kMipsMfc1, r_dest.GetLowReg(), r_src.GetLowReg()); in OpRegCopyWide() 253 NewLIR2(kMipsMfc1, r_dest.GetHighReg(), r_src.GetHighReg()); in OpRegCopyWide() 256 NewLIR2(kMipsMfc1, r_dest.GetLowReg(), r_src.GetReg()); in OpRegCopyWide() 257 NewLIR2(kMipsMfhc1, r_dest.GetHighReg(), r_src.GetReg()); in OpRegCopyWide() 310 NewLIR2(kMipsR2Div, reg1.GetReg(), reg2.GetReg()); in GenDivRem()
|
D | fp_mips.cc | 176 NewLIR2(op, rl_result.reg.GetReg(), rl_src.reg.GetReg()); in GenConversion() 267 NewLIR2(kMipsFnegs, rl_result.reg.GetReg(), rl_src.reg.GetReg()); in GenNegFloat() 281 NewLIR2(kMipsFnegd, rl_result.reg.GetReg(), rl_src.reg.GetReg()); in GenNegDouble()
|
D | call_mips.cc | 91 NewLIR2(kMipsLui, r_end.GetReg(), size_hi); in GenLargeSparseSwitch()
|
/art/compiler/dex/quick/arm64/ |
D | fp_arm64.cc | 220 NewLIR2(op, rl_result.reg.GetReg(), rl_src.reg.GetReg()); in GenConversion() 239 NewLIR2(WIDE(kA64Fcmp2ff), rl_src1.reg.GetReg(), rl_src2.reg.GetReg()); in GenFusedFPCmpBranch() 245 NewLIR2(kA64Fcmp2ff, rl_src1.reg.GetReg(), rl_src2.reg.GetReg()); in GenFusedFPCmpBranch() 312 NewLIR2(WIDE(kA64Fcmp2ff), rl_src1.reg.GetReg(), rl_src2.reg.GetReg()); in GenCmpFP() 320 NewLIR2(kA64Fcmp2ff, rl_src1.reg.GetReg(), rl_src2.reg.GetReg()); in GenCmpFP() 341 NewLIR2(kA64Fneg2ff, rl_result.reg.GetReg(), rl_src.reg.GetReg()); in GenNegFloat() 349 NewLIR2(WIDE(kA64Fneg2ff), rl_result.reg.GetReg(), rl_src.reg.GetReg()); in GenNegDouble() 382 NewLIR2(kA64Fabs2ff, rl_result.reg.GetReg(), rl_src.reg.GetReg()); in GenInlinedAbsFloat() 401 NewLIR2(WIDE(kA64Fabs2ff), rl_result.reg.GetReg(), rl_src.reg.GetReg()); in GenInlinedAbsDouble() 415 NewLIR2(WIDE(kA64Fsqrt2ff), rl_result.reg.GetReg(), rl_src.reg.GetReg()); in GenInlinedSqrt() [all …]
|
D | utility_arm64.cc | 115 return NewLIR2(kA64Fmov2sw, r_dest.GetReg(), rwzr); in LoadFPConstantValue() 119 return NewLIR2(kA64Fmov2fI, r_dest.GetReg(), encoded_imm); in LoadFPConstantValue() 139 return NewLIR2(kA64Fmov2Sx, r_dest.GetReg(), rxzr); in LoadFPConstantValueWide() 143 return NewLIR2(WIDE(kA64Fmov2fI), r_dest.GetReg(), encoded_imm); in LoadFPConstantValueWide() 421 res = NewLIR2(opcode, r_dest.GetReg(), rwzr); in LoadConstantNoClobber() 472 return NewLIR2(opcode, r_dest.GetReg(), rxzr); in LoadConstantWide() 546 LIR* branch = NewLIR2(kA64B2ct, ArmConditionEncoding(cc), in OpCondBranch() 591 return NewLIR2(kA64Rev2rr | wide, r_dest_src1.GetReg(), r_src2.GetReg()); in OpRegRegShift() 594 NewLIR2(kA64Rev162rr | wide, r_dest_src1.GetReg(), r_src2.GetReg()); in OpRegRegShift() 618 return NewLIR2(opcode | wide, r_dest_src1.GetReg(), r_src2.GetReg()); in OpRegRegShift() [all …]
|
D | call_arm64.cc | 80 LIR* branch_out = NewLIR2(kA64Cbz2rt, r_idx.GetReg(), 0); in GenLargeSparseSwitch() 176 NewLIR2(kA64Ldxr2rX, rw3, rx2); in GenMonitorEnter() 232 NewLIR2(kA64Ldxr2rX, rw2, rx3); in GenMonitorExit()
|
D | int_arm64.cc | 276 branch = NewLIR2(opcode | wide, reg.GetReg(), 0); in OpCmpImmBranch() 282 branch = NewLIR2(opcode | wide, reg.GetReg(), 0); in OpCmpImmBranch() 293 branch = NewLIR2(kA64B2ct, arm_cond, 0); in OpCmpImmBranch() 803 NewLIR2(kA64Ldaxr2rX | wide, r_tmp_stored.GetReg(), r_ptr.GetReg()); in GenInlinedCas() 942 LIR* lir = NewLIR2(kA64Ldr2rp, As32BitReg(reg).GetReg(), 0); in OpPcRelLoad() 952 LIR* adrp = NewLIR2(kA64Adrp2xd, r_dest.GetReg(), 0); in OpPcRelDexCacheArrayLoad() 1790 NewLIR2(kA64Rbit2rr | wide, rl_result.reg.GetReg(), rl_i.reg.GetReg()); in GenInlinedReverseBits()
|
/art/compiler/dex/quick/ |
D | mir_to_lir-inl.h | 91 inline LIR* Mir2Lir::NewLIR2(int opcode, int dest, int src1) { in NewLIR2() function
|
D | mir_to_lir.h | 657 LIR* NewLIR2(int opcode, int dest, int src1);
|