/art/compiler/dex/quick/arm64/ |
D | fp_arm64.cc | 25 RegLocation rl_src1, RegLocation rl_src2) { in GenArithOpFloat() argument 49 CallRuntimeHelperRegLocationRegLocation(kQuickFmodf, rl_src1, rl_src2, false); in GenArithOpFloat() 60 rl_src2 = LoadValue(rl_src2, kFPReg); in GenArithOpFloat() 62 NewLIR3(op, rl_result.reg.GetReg(), rl_src1.reg.GetReg(), rl_src2.reg.GetReg()); in GenArithOpFloat() 67 RegLocation rl_dest, RegLocation rl_src1, RegLocation rl_src2) { in GenArithOpDouble() argument 94 LoadValueDirectWideFixed(rl_src2, rs_d1); in GenArithOpDouble() 110 rl_src2 = LoadValueWide(rl_src2, kFPReg); in GenArithOpDouble() 111 DCHECK(rl_src2.wide); in GenArithOpDouble() 115 NewLIR3(FWIDE(op), rl_result.reg.GetReg(), rl_src1.reg.GetReg(), rl_src2.reg.GetReg()); in GenArithOpDouble() 205 RegLocation rl_src2; in GenFusedFPCmpBranch() local [all …]
|
D | int_arm64.cc | 50 RegLocation rl_src2) { in GenCmpLong() argument 53 rl_src2 = LoadValueWide(rl_src2, kCoreReg); in GenCmpLong() 56 OpRegReg(kOpCmp, rl_src1.reg, rl_src2.reg); in GenCmpLong() 216 RegLocation rl_src2 = mir_graph_->GetSrcWide(mir, 2); in GenFusedLongCmpBranch() local 222 std::swap(rl_src1, rl_src2); in GenFusedLongCmpBranch() 228 if (rl_src2.is_const) { in GenFusedLongCmpBranch() 231 int64_t val = mir_graph_->ConstantValueWide(rl_src2); in GenFusedLongCmpBranch() 240 rl_src2 = UpdateLocWide(rl_src2); in GenFusedLongCmpBranch() 241 if (rl_src2.location != kLocPhysReg) { in GenFusedLongCmpBranch() 249 rl_src2 = LoadValueWide(rl_src2, kCoreReg); in GenFusedLongCmpBranch() [all …]
|
D | codegen_arm64.h | 143 RegLocation rl_src2) OVERRIDE; 151 RegLocation rl_src2) OVERRIDE; 153 RegLocation rl_src2) OVERRIDE; 155 RegLocation rl_src2) OVERRIDE; 174 RegLocation rl_src2) OVERRIDE; 179 void GenCmpLong(RegLocation rl_dest, RegLocation rl_src1, RegLocation rl_src2) OVERRIDE; 342 RegLocation GenDivRem(RegLocation rl_dest, RegLocation rl_src1, RegLocation rl_src2, 362 void GenLongOp(OpKind op, RegLocation rl_dest, RegLocation rl_src1, RegLocation rl_src2); 393 RegLocation rl_src2, bool is_div);
|
/art/compiler/dex/quick/x86/ |
D | fp_x86.cc | 25 RegLocation rl_dest, RegLocation rl_src1, RegLocation rl_src2) { in GenArithOpFloat() argument 52 GenRemFP(rl_dest, rl_src1, rl_src2, false /* is_double */); in GenArithOpFloat() 61 rl_src2 = LoadValue(rl_src2, kFPReg); in GenArithOpFloat() 65 RegStorage r_src2 = rl_src2.reg; in GenArithOpFloat() 76 RegLocation rl_dest, RegLocation rl_src1, RegLocation rl_src2) { in GenArithOpDouble() argument 81 DCHECK(rl_src2.wide); in GenArithOpDouble() 82 DCHECK(rl_src2.fp); in GenArithOpDouble() 105 GenRemFP(rl_dest, rl_src1, rl_src2, true /* is_double */); in GenArithOpDouble() 114 rl_src2 = LoadValueWide(rl_src2, kFPReg); in GenArithOpDouble() 116 if (rl_result.reg == rl_src2.reg) { in GenArithOpDouble() [all …]
|
D | int_x86.cc | 35 RegLocation rl_src2) { in GenCmpLong() argument 38 rl_src2 = LoadValueWide(rl_src2, kCoreReg); in GenCmpLong() 41 OpRegReg(kOpCmp, rl_src1.reg, rl_src2.reg); in GenCmpLong() 57 LoadValueDirectWideFixed(rl_src2, r_tmp2); in GenCmpLong() 387 RegLocation rl_src2 = mir_graph_->GetSrcWide(mir, 2); in GenFusedLongCmpBranch() local 391 std::swap(rl_src1, rl_src2); in GenFusedLongCmpBranch() 394 if (rl_src2.is_const) { in GenFusedLongCmpBranch() 396 int64_t val = mir_graph_->ConstantValueWide(rl_src2); in GenFusedLongCmpBranch() 403 rl_src2 = LoadValueWide(rl_src2, kCoreReg); in GenFusedLongCmpBranch() 405 OpRegReg(kOpCmp, rl_src1.reg, rl_src2.reg); in GenFusedLongCmpBranch() [all …]
|
D | codegen_x86.h | 152 RegLocation rl_src2) OVERRIDE; 154 RegLocation rl_src2) OVERRIDE; 156 RegLocation rl_src2) OVERRIDE; 171 RegLocation rl_src2) OVERRIDE; 173 RegLocation rl_src2) OVERRIDE; 176 void GenCmpLong(RegLocation rl_dest, RegLocation rl_src1, RegLocation rl_src2) OVERRIDE; 198 bool GenLongLongImm(RegLocation rl_dest, RegLocation rl_src1, RegLocation rl_src2, 208 virtual void GenLongArith(RegLocation rl_dest, RegLocation rl_src1, RegLocation rl_src2, 730 RegLocation GenDivRem(RegLocation rl_dest, RegLocation rl_src1, RegLocation rl_src2, 783 void GenRemFP(RegLocation rl_dest, RegLocation rl_src1, RegLocation rl_src2, bool is_double); [all …]
|
/art/compiler/dex/quick/arm/ |
D | fp_arm.cc | 24 RegLocation rl_src1, RegLocation rl_src2) { in GenArithOpFloat() argument 52 CallRuntimeHelperRegLocationRegLocation(kQuickFmodf, rl_src1, rl_src2, false); in GenArithOpFloat() 63 rl_src2 = LoadValue(rl_src2, kFPReg); in GenArithOpFloat() 65 NewLIR3(op, rl_result.reg.GetReg(), rl_src1.reg.GetReg(), rl_src2.reg.GetReg()); in GenArithOpFloat() 70 RegLocation rl_dest, RegLocation rl_src1, RegLocation rl_src2) { in GenArithOpDouble() argument 94 CallRuntimeHelperRegLocationRegLocation(kQuickFmod, rl_src1, rl_src2, false); in GenArithOpDouble() 107 rl_src2 = LoadValueWide(rl_src2, kFPReg); in GenArithOpDouble() 108 DCHECK(rl_src2.wide); in GenArithOpDouble() 112 NewLIR3(op, rl_result.reg.GetReg(), rl_src1.reg.GetReg(), rl_src2.reg.GetReg()); in GenArithOpDouble() 218 RegLocation rl_src2; in GenFusedFPCmpBranch() local [all …]
|
D | int_arm.cc | 122 void ArmMir2Lir::GenCmpLong(RegLocation rl_dest, RegLocation rl_src1, RegLocation rl_src2) { in GenCmpLong() argument 126 rl_src2 = LoadValueWide(rl_src2, kCoreReg); in GenCmpLong() 129 OpRegReg(kOpCmp, rl_src1.reg.GetHigh(), rl_src2.reg.GetHigh()); in GenCmpLong() 132 OpRegRegReg(kOpSub, t_reg, rl_src1.reg.GetLow(), rl_src2.reg.GetLow()); in GenCmpLong() 307 RegLocation rl_src2 = mir_graph_->GetSrcWide(mir, 2); in GenFusedLongCmpBranch() local 311 std::swap(rl_src1, rl_src2); in GenFusedLongCmpBranch() 314 if (rl_src2.is_const) { in GenFusedLongCmpBranch() 315 rl_src2 = UpdateLocWide(rl_src2); in GenFusedLongCmpBranch() 317 int64_t val = mir_graph_->ConstantValueWide(rl_src2); in GenFusedLongCmpBranch() 318 if ((rl_src2.location != kLocPhysReg) && in GenFusedLongCmpBranch() [all …]
|
D | codegen_arm.h | 88 RegLocation rl_src2) OVERRIDE; 90 RegLocation rl_src1, RegLocation rl_src2); 98 RegLocation rl_src2); 100 RegLocation rl_src2); 102 RegLocation rl_src2); 114 void GenCmpLong(RegLocation rl_dest, RegLocation rl_src1, RegLocation rl_src2); 193 RegLocation rl_src2); 203 RegLocation GenDivRem(RegLocation rl_dest, RegLocation rl_src1, RegLocation rl_src2,
|
/art/compiler/dex/quick/mips/ |
D | fp_mips.cc | 25 RegLocation rl_dest, RegLocation rl_src1, RegLocation rl_src2) { in GenArithOpFloat() argument 53 CallRuntimeHelperRegLocationRegLocation(kQuickFmodf, rl_src1, rl_src2, false); in GenArithOpFloat() 64 rl_src2 = LoadValue(rl_src2, kFPReg); in GenArithOpFloat() 66 NewLIR3(op, rl_result.reg.GetReg(), rl_src1.reg.GetReg(), rl_src2.reg.GetReg()); in GenArithOpFloat() 71 RegLocation rl_dest, RegLocation rl_src1, RegLocation rl_src2) { in GenArithOpDouble() argument 95 CallRuntimeHelperRegLocationRegLocation(kQuickFmod, rl_src1, rl_src2, false); in GenArithOpDouble() 107 rl_src2 = LoadValueWide(rl_src2, kFPReg); in GenArithOpDouble() 108 DCHECK(rl_src2.wide); in GenArithOpDouble() 112 NewLIR3(op, rl_result.reg.GetReg(), rl_src1.reg.GetReg(), rl_src2.reg.GetReg()); in GenArithOpDouble() 169 RegLocation rl_src1, RegLocation rl_src2) { in GenCmpFP() argument [all …]
|
D | int_mips.cc | 45 RegLocation rl_src2) { in GenCmpLong() argument 47 rl_src2 = LoadValueWide(rl_src2, kCoreReg); in GenCmpLong() 51 NewLIR3(kMipsSlt, t0.GetReg(), rl_src1.reg.GetHighReg(), rl_src2.reg.GetHighReg()); in GenCmpLong() 52 NewLIR3(kMipsSlt, t1.GetReg(), rl_src2.reg.GetHighReg(), rl_src1.reg.GetHighReg()); in GenCmpLong() 55 NewLIR3(kMipsSltu, t0.GetReg(), rl_src1.reg.GetLowReg(), rl_src2.reg.GetLowReg()); in GenCmpLong() 56 NewLIR3(kMipsSltu, t1.GetReg(), rl_src2.reg.GetLowReg(), rl_src1.reg.GetLowReg()); in GenCmpLong() 266 RegLocation rl_src2, bool is_div, bool check_zero) { in GenDivRem() argument 396 RegLocation rl_src1, RegLocation rl_src2) { in GenAddLong() argument 398 rl_src2 = LoadValueWide(rl_src2, kCoreReg); in GenAddLong() 408 OpRegRegReg(kOpAdd, rl_result.reg.GetLow(), rl_src2.reg.GetLow(), rl_src1.reg.GetLow()); in GenAddLong() [all …]
|
D | codegen_mips.h | 88 RegLocation rl_src1, RegLocation rl_src2); 96 RegLocation rl_src2); 98 RegLocation rl_src2); 100 RegLocation rl_src2); 110 RegLocation rl_src2) OVERRIDE; 113 void GenCmpLong(RegLocation rl_dest, RegLocation rl_src1, RegLocation rl_src2); 187 RegLocation rl_src2); 189 RegLocation rl_src2); 193 RegLocation rl_src2, bool is_div, bool check_zero);
|
/art/compiler/dex/quick/ |
D | gen_common.cc | 215 RegLocation rl_src2, LIR* taken, in GenCompareAndBranch() argument 218 DCHECK(!rl_src2.fp); in GenCompareAndBranch() 247 rl_src1 = rl_src2; in GenCompareAndBranch() 248 rl_src2 = rl_temp; in GenCompareAndBranch() 254 if (rl_src2.is_const) { in GenCompareAndBranch() 256 RegLocation rl_temp = UpdateLoc(rl_src2); in GenCompareAndBranch() 257 int32_t constant_value = mir_graph_->ConstantValue(rl_src2); in GenCompareAndBranch() 261 OpCmpImmBranch(cond, rl_src1.reg, mir_graph_->ConstantValue(rl_src2), taken); in GenCompareAndBranch() 276 rl_src2 = LoadValue(rl_src2); in GenCompareAndBranch() 277 OpCmpBranch(cond, rl_src1.reg, rl_src2.reg, taken); in GenCompareAndBranch() [all …]
|
D | mir_to_lir.h | 842 RegLocation rl_src2, LIR* taken, LIR* fall_through); 869 RegLocation rl_src1, RegLocation rl_src2); 875 RegLocation rl_src1, RegLocation rl_src2); 883 RegLocation rl_src1, RegLocation rl_src2); 1256 RegLocation rl_src1, RegLocation rl_src2) = 0; 1259 RegLocation rl_src2) = 0; 1261 RegLocation rl_src1, RegLocation rl_src2) = 0; 1263 RegLocation rl_src1, RegLocation rl_src2) = 0; 1297 RegLocation rl_src2, bool is_div, bool check_zero) = 0; 1307 virtual void GenCmpLong(RegLocation rl_dest, RegLocation rl_src1, RegLocation rl_src2) = 0;
|
/art/compiler/dex/portable/ |
D | mir_to_gbc.h | 118 RegLocation rl_src1, RegLocation rl_src2); 126 RegLocation rl_src2); 128 RegLocation rl_dest, RegLocation rl_src1, RegLocation rl_src2); 132 RegLocation rl_src2); 158 RegLocation rl_dest, RegLocation rl_src1, RegLocation rl_src2);
|
D | mir_to_gbc.cc | 330 ConditionCode cc, RegLocation rl_src1, RegLocation rl_src2) { in ConvertCompareAndBranch() argument 335 ::llvm::Value* src2 = GetLLVMValue(rl_src2.orig_sreg); in ConvertCompareAndBranch() 409 RegLocation rl_src1, RegLocation rl_src2) { in ConvertFPArithOp() argument 411 ::llvm::Value* src2 = GetLLVMValue(rl_src2.orig_sreg); in ConvertFPArithOp() 426 RegLocation rl_dest, RegLocation rl_src1, RegLocation rl_src2) { in ConvertShift() argument 430 args.push_back(GetLLVMValue(rl_src2.orig_sreg)); in ConvertShift() 446 RegLocation rl_src1, RegLocation rl_src2) { in ConvertArithOp() argument 448 ::llvm::Value* src2 = GetLLVMValue(rl_src2.orig_sreg); in ConvertArithOp() 640 RegLocation rl_src2) { in ConvertWideComparison() argument 641 DCHECK_EQ(rl_src1.fp, rl_src2.fp); in ConvertWideComparison() [all …]
|