/art/compiler/optimizing/ |
D | intrinsics_x86_64.cc | 37 : arena_(codegen->GetGraph()->GetArena()), codegen_(codegen) { in IntrinsicLocationsBuilderX86_64() 42 return reinterpret_cast<X86_64Assembler*>(codegen_->GetAssembler()); in GetAssembler() 46 return codegen_->GetGraph()->GetArena(); in GetAllocator() 330 MathAbsFP(invoke->GetLocations(), true, GetAssembler(), codegen_); in VisitMathAbsDouble() 338 MathAbsFP(invoke->GetLocations(), false, GetAssembler(), codegen_); in VisitMathAbsFloat() 488 GenMinMaxFP(invoke->GetLocations(), true, true, GetAssembler(), codegen_); in VisitMathMinDoubleDouble() 496 GenMinMaxFP(invoke->GetLocations(), true, false, GetAssembler(), codegen_); in VisitMathMinFloatFloat() 504 GenMinMaxFP(invoke->GetLocations(), false, true, GetAssembler(), codegen_); in VisitMathMaxDoubleDouble() 512 GenMinMaxFP(invoke->GetLocations(), false, false, GetAssembler(), codegen_); in VisitMathMaxFloatFloat() 657 CreateSSE41FPToFPLocations(arena_, invoke, codegen_); in VisitMathCeil() [all …]
|
D | graph_visualizer.cc | 43 codegen_(codegen), in HGraphVisualizerPrinter() 130 codegen_.DumpCoreRegister(output_, location.reg()); in DumpLocation() 132 codegen_.DumpFloatingPointRegister(output_, location.reg()); in DumpLocation() 146 codegen_.DumpFloatingPointRegister(output_, location.low()); in DumpLocation() 148 codegen_.DumpFloatingPointRegister(output_, location.high()); in DumpLocation() 150 codegen_.DumpCoreRegister(output_, location.low()); in DumpLocation() 152 codegen_.DumpCoreRegister(output_, location.high()); in DumpLocation() 343 const CodeGenerator& codegen_; member in art::HGraphVisualizerPrinter 352 : output_(output), graph_(graph), codegen_(codegen) {} in HGraphVisualizer() 356 HGraphVisualizerPrinter printer(graph_, *output_, "", true, codegen_); in PrintHeader() [all …]
|
D | intrinsics_x86.h | 53 CodeGeneratorX86* codegen_; variable 60 explicit IntrinsicCodeGeneratorX86(CodeGeneratorX86* codegen) : codegen_(codegen) {} in IntrinsicCodeGeneratorX86() 76 CodeGeneratorX86* codegen_; variable
|
D | intrinsics_x86_64.h | 53 CodeGeneratorX86_64* codegen_; variable 60 explicit IntrinsicCodeGeneratorX86_64(CodeGeneratorX86_64* codegen) : codegen_(codegen) {} in IntrinsicCodeGeneratorX86_64() 76 CodeGeneratorX86_64* codegen_; variable
|
D | code_generator_arm64.cc | 479 codegen_->MoveLocation(move->GetDestination(), move->GetSource()); in EmitMove() 996 bool use_acquire_release = codegen_->GetInstructionSetFeatures().PreferAcquireRelease(); in GenerateClassInitializationCheck() 1044 codegen_->AddSlowPath(slow_path); in GenerateSuspendCheck() 1047 codegen_->ClearSpillSlotsFromLoopPhisInStackMap(instruction); in GenerateSuspendCheck() 1053 UseScratchRegisterScope temps(codegen_->GetVIXLAssembler()); in GenerateSuspendCheck() 1061 __ Cbz(temp, codegen_->GetLabelOf(successor)); in GenerateSuspendCheck() 1071 codegen_(codegen) {} in InstructionCodeGeneratorARM64() 1142 bool use_acquire_release = codegen_->GetInstructionSetFeatures().PreferAcquireRelease(); in HandleFieldGet() 1147 codegen_->LoadAcquire(instruction, OutputCPURegister(instruction), field); in HandleFieldGet() 1149 codegen_->Load(field_info.GetFieldType(), OutputCPURegister(instruction), field); in HandleFieldGet() [all …]
|
D | intrinsics_arm64.cc | 59 return codegen_->GetAssembler()->vixl_masm_; in GetVIXLAssembler() 63 return codegen_->GetGraph()->GetArena(); in GetAllocator() 654 codegen_->Load(Primitive::kPrimNot, WRegisterFrom(invoke->GetLocations()->Out()), in VisitThreadCurrentThread() 715 GenUnsafeGet(invoke, Primitive::kPrimInt, false, codegen_); in VisitUnsafeGet() 718 GenUnsafeGet(invoke, Primitive::kPrimInt, true, codegen_); in VisitUnsafeGetVolatile() 721 GenUnsafeGet(invoke, Primitive::kPrimLong, false, codegen_); in VisitUnsafeGetLong() 724 GenUnsafeGet(invoke, Primitive::kPrimLong, true, codegen_); in VisitUnsafeGetLongVolatile() 727 GenUnsafeGet(invoke, Primitive::kPrimNot, false, codegen_); in VisitUnsafeGetObject() 730 GenUnsafeGet(invoke, Primitive::kPrimNot, true, codegen_); in VisitUnsafeGetObjectVolatile() 805 GenUnsafePut(invoke->GetLocations(), Primitive::kPrimInt, false, false, codegen_); in VisitUnsafePut() [all …]
|
D | code_generator_x86_64.cc | 456 codegen_(codegen) {} in InstructionCodeGeneratorX86_64() 786 if (!codegen_->GoesToNextBlock(got->GetBlock(), successor)) { in VisitGoto() 787 __ jmp(codegen_->GetLabelOf(successor)); in VisitGoto() 871 Label* true_target = codegen_->GetLabelOf(if_instr->IfTrueSuccessor()); in VisitIf() 872 Label* false_target = codegen_->GetLabelOf(if_instr->IfFalseSuccessor()); in VisitIf() 874 if (codegen_->GoesToNextBlock(if_instr->GetBlock(), in VisitIf() 878 if (codegen_->GoesToNextBlock(if_instr->GetBlock(), in VisitIf() 898 codegen_->AddSlowPath(slow_path); in VisitDeoptimize() 931 locations->SetInAt(1, Location::StackSlot(codegen_->GetStackSlot(store->GetLocal()))); in VisitStoreLocal() 936 locations->SetInAt(1, Location::DoubleStackSlot(codegen_->GetStackSlot(store->GetLocal()))); in VisitStoreLocal() [all …]
|
D | intrinsics_arm.cc | 34 return codegen_->GetAssembler(); in GetAssembler() 38 return codegen_->GetGraph()->GetArena(); in GetAllocator() 542 GenUnsafeGet(invoke, Primitive::kPrimInt, false, codegen_); in VisitUnsafeGet() 545 GenUnsafeGet(invoke, Primitive::kPrimInt, true, codegen_); in VisitUnsafeGetVolatile() 548 GenUnsafeGet(invoke, Primitive::kPrimLong, false, codegen_); in VisitUnsafeGetLong() 551 GenUnsafeGet(invoke, Primitive::kPrimLong, true, codegen_); in VisitUnsafeGetLongVolatile() 554 GenUnsafeGet(invoke, Primitive::kPrimNot, false, codegen_); in VisitUnsafeGetObject() 557 GenUnsafeGet(invoke, Primitive::kPrimNot, true, codegen_); in VisitUnsafeGetObjectVolatile() 665 GenUnsafePut(invoke->GetLocations(), Primitive::kPrimInt, false, false, codegen_); in VisitUnsafePut() 668 GenUnsafePut(invoke->GetLocations(), Primitive::kPrimInt, false, true, codegen_); in VisitUnsafePutOrdered() [all …]
|
D | code_generator_arm.cc | 494 codegen_(codegen) {} in InstructionCodeGeneratorARM() 915 codegen_->ClearSpillSlotsFromLoopPhisInStackMap(info->GetSuspendCheck()); in VisitGoto() 923 if (!codegen_->GoesToNextBlock(got->GetBlock(), successor)) { in VisitGoto() 924 __ b(codegen_->GetLabelOf(successor)); in VisitGoto() 998 Label* true_target = codegen_->GetLabelOf(if_instr->IfTrueSuccessor()); in VisitIf() 999 Label* false_target = codegen_->GetLabelOf(if_instr->IfFalseSuccessor()); in VisitIf() 1001 if (codegen_->GoesToNextBlock(if_instr->GetBlock(), in VisitIf() 1005 if (codegen_->GoesToNextBlock(if_instr->GetBlock(), in VisitIf() 1025 codegen_->AddSlowPath(slow_path); in VisitDeoptimize() 1142 locations->SetInAt(1, Location::StackSlot(codegen_->GetStackSlot(store->GetLocal()))); in VisitStoreLocal() [all …]
|
D | code_generator_mips64.cc | 425 return codegen_->GetAssembler(); in GetAssembler() 430 codegen_->MoveLocation(move->GetDestination(), move->GetSource(), move->GetType()); in EmitMove() 435 codegen_->SwapLocations(move->GetDestination(), move->GetSource(), move->GetType()); in EmitSwap() 456 ScratchRegisterScope ensure_scratch(this, TMP, V0, codegen_->GetNumberOfCoreRegisters()); in Exchange() 987 codegen_->AddSlowPath(slow_path); in GenerateSuspendCheck() 997 __ Beqzc(TMP, codegen_->GetLabelOf(successor)); in GenerateSuspendCheck() 1007 codegen_(codegen) {} in InstructionCodeGeneratorMIPS64() 1396 codegen_->MaybeRecordImplicitNullCheck(instruction); in VisitArrayGet() 1411 codegen_->MaybeRecordImplicitNullCheck(instruction); in VisitArrayLength() 1492 codegen_->MaybeRecordImplicitNullCheck(instruction); in VisitArraySet() [all …]
|
D | code_generator_x86.cc | 467 codegen_(codegen) {} in InstructionCodeGeneratorX86() 823 if (!codegen_->GoesToNextBlock(got->GetBlock(), successor)) { in VisitGoto() 824 __ jmp(codegen_->GetLabelOf(successor)); in VisitGoto() 908 Label* true_target = codegen_->GetLabelOf(if_instr->IfTrueSuccessor()); in VisitIf() 909 Label* false_target = codegen_->GetLabelOf(if_instr->IfFalseSuccessor()); in VisitIf() 911 if (codegen_->GoesToNextBlock(if_instr->GetBlock(), in VisitIf() 915 if (codegen_->GoesToNextBlock(if_instr->GetBlock(), in VisitIf() 935 codegen_->AddSlowPath(slow_path); in VisitDeoptimize() 968 locations->SetInAt(1, Location::StackSlot(codegen_->GetStackSlot(store->GetLocal()))); in VisitStoreLocal() 973 locations->SetInAt(1, Location::DoubleStackSlot(codegen_->GetStackSlot(store->GetLocal()))); in VisitStoreLocal() [all …]
|
D | intrinsics_arm.h | 64 explicit IntrinsicCodeGeneratorARM(CodeGeneratorARM* codegen) : codegen_(codegen) {} in IntrinsicCodeGeneratorARM() 80 CodeGeneratorARM* codegen_; variable
|
D | intrinsics_arm64.h | 64 explicit IntrinsicCodeGeneratorARM64(CodeGeneratorARM64* codegen) : codegen_(codegen) {} in IntrinsicCodeGeneratorARM64() 80 CodeGeneratorARM64* codegen_; variable
|
D | intrinsics_x86.cc | 41 : arena_(codegen->GetGraph()->GetArena()), codegen_(codegen) { in IntrinsicLocationsBuilderX86() 46 return reinterpret_cast<X86Assembler*>(codegen_->GetAssembler()); in GetAssembler() 50 return codegen_->GetGraph()->GetArena(); in GetAllocator() 780 CreateSSE41FPToFPLocations(arena_, invoke, codegen_); in VisitMathCeil() 784 GenSSE41FPToFPIntrinsic(codegen_, invoke, GetAssembler(), 2); in VisitMathCeil() 788 CreateSSE41FPToFPLocations(arena_, invoke, codegen_); in VisitMathFloor() 792 GenSSE41FPToFPIntrinsic(codegen_, invoke, GetAssembler(), 1); in VisitMathFloor() 796 CreateSSE41FPToFPLocations(arena_, invoke, codegen_); in VisitMathRint() 800 GenSSE41FPToFPIntrinsic(codegen_, invoke, GetAssembler(), 0); in VisitMathRint() 807 if (codegen_->GetInstructionSetFeatures().HasSSE4_1()) { in VisitMathRoundFloat() [all …]
|
D | register_allocator.cc | 44 codegen_(codegen), in RegisterAllocator() 109 for (HLinearOrderIterator it(*codegen_->GetGraph()); !it.Done(); it.Advance()) { in AllocateRegisters() 153 for (HLinearPostOrderIterator it(*codegen_->GetGraph()); !it.Done(); it.Advance()) { in AllocateRegistersInternal() 164 number_of_registers_ = codegen_->GetNumberOfCoreRegisters(); in AllocateRegistersInternal() 184 number_of_registers_ = codegen_->GetNumberOfFloatingPointRegisters(); in AllocateRegistersInternal() 229 if (codegen_->NeedsTwoRegisters(Primitive::kPrimDouble)) { in ProcessInstruction() 250 if (codegen_->IsLeafMethod()) { in ProcessInstruction() 277 for (size_t i = 0; i < codegen_->GetNumberOfCoreRegisters(); ++i) { in ProcessInstruction() 278 if (!codegen_->IsCoreCalleeSaveRegister(i)) { in ProcessInstruction() 284 for (size_t i = 0; i < codegen_->GetNumberOfFloatingPointRegisters(); ++i) { in ProcessInstruction() [all …]
|
D | code_generator_arm.h | 102 : ParallelMoveResolverWithSwap(allocator), codegen_(codegen) {} in ParallelMoveResolverARM() 115 CodeGeneratorARM* const codegen_; variable 137 : HGraphVisitor(graph), codegen_(codegen) {} in LocationsBuilderARM() 153 CodeGeneratorARM* const codegen_; variable 197 CodeGeneratorARM* const codegen_; variable
|
D | code_generator_mips64.h | 111 : ParallelMoveResolverWithSwap(allocator), codegen_(codegen) {} in ParallelMoveResolverMIPS64() 123 CodeGeneratorMIPS64* const codegen_; 145 : HGraphVisitor(graph), codegen_(codegen) {} in LocationsBuilderMIPS64() 163 CodeGeneratorMIPS64* const codegen_; variable 200 CodeGeneratorMIPS64* const codegen_; variable
|
D | code_generator_x86.h | 96 : ParallelMoveResolverWithSwap(allocator), codegen_(codegen) {} in ParallelMoveResolverX86() 112 CodeGeneratorX86* const codegen_; variable 120 : HGraphVisitor(graph), codegen_(codegen) {} in LocationsBuilderX86() 136 CodeGeneratorX86* const codegen_; variable 190 CodeGeneratorX86* const codegen_; variable
|
D | code_generator_x86_64.h | 105 : ParallelMoveResolverWithSwap(allocator), codegen_(codegen) {} in ParallelMoveResolverX86_64() 122 CodeGeneratorX86_64* const codegen_; variable 130 : HGraphVisitor(graph), codegen_(codegen) {} in LocationsBuilderX86_64() 146 CodeGeneratorX86_64* const codegen_; variable 191 CodeGeneratorX86_64* const codegen_; variable
|
D | code_generator_arm64.h | 170 CodeGeneratorARM64* const codegen_; variable 178 : HGraphVisitor(graph), codegen_(codegen) {} in LocationsBuilderARM64() 192 CodeGeneratorARM64* const codegen_; variable 201 : ParallelMoveResolverNoSwap(allocator), codegen_(codegen), vixl_temps_() {} in ParallelMoveResolverARM64() 216 CodeGeneratorARM64* const codegen_; variable 360 return codegen_->GetAssembler(); in GetAssembler()
|
D | graph_visualizer.h | 46 const CodeGenerator& codegen_; variable
|
D | register_allocator.h | 160 CodeGenerator* const codegen_; variable
|
D | ssa_liveness_analysis.cc | 122 codegen_->AllocateLocations(current); in NumberInstructions() 140 codegen_->AllocateLocations(current); in NumberInstructions()
|
D | ssa_liveness_analysis.h | 1097 codegen_(codegen), in SsaLivenessAnalysis() 1206 CodeGenerator* const codegen_; variable
|