Home
last modified time | relevance | path

Searched refs:locations (Results 1 – 25 of 37) sorted by relevance

12

/art/compiler/optimizing/
Dcode_generator_vector_x86.cc29 LocationSummary* locations = new (GetGraph()->GetAllocator()) LocationSummary(instruction); in VisitVecReplicateScalar() local
36 locations->AddTemp(Location::RequiresFpuRegister()); in VisitVecReplicateScalar()
45 locations->SetInAt(0, is_zero ? Location::ConstantLocation(input->AsConstant()) in VisitVecReplicateScalar()
47 locations->SetOut(Location::RequiresFpuRegister()); in VisitVecReplicateScalar()
51 locations->SetInAt(0, is_zero ? Location::ConstantLocation(input->AsConstant()) in VisitVecReplicateScalar()
53 locations->SetOut(is_zero ? Location::RequiresFpuRegister() in VisitVecReplicateScalar()
63 LocationSummary* locations = instruction->GetLocations(); in VisitVecReplicateScalar() local
64 XmmRegister dst = locations->Out().AsFpuRegister<XmmRegister>(); in VisitVecReplicateScalar()
77 __ movd(dst, locations->InAt(0).AsRegister<Register>()); in VisitVecReplicateScalar()
85 __ movd(dst, locations->InAt(0).AsRegister<Register>()); in VisitVecReplicateScalar()
[all …]
Dcode_generator_vector_x86_64.cc29 LocationSummary* locations = new (GetGraph()->GetAllocator()) LocationSummary(instruction); in VisitVecReplicateScalar() local
40 locations->SetInAt(0, is_zero ? Location::ConstantLocation(input->AsConstant()) in VisitVecReplicateScalar()
42 locations->SetOut(Location::RequiresFpuRegister()); in VisitVecReplicateScalar()
46 locations->SetInAt(0, is_zero ? Location::ConstantLocation(input->AsConstant()) in VisitVecReplicateScalar()
48 locations->SetOut(is_zero ? Location::RequiresFpuRegister() in VisitVecReplicateScalar()
58 LocationSummary* locations = instruction->GetLocations(); in VisitVecReplicateScalar() local
59 XmmRegister dst = locations->Out().AsFpuRegister<XmmRegister>(); in VisitVecReplicateScalar()
72 __ movd(dst, locations->InAt(0).AsRegister<CpuRegister>(), /*64-bit*/ false); in VisitVecReplicateScalar()
80 __ movd(dst, locations->InAt(0).AsRegister<CpuRegister>(), /*64-bit*/ false); in VisitVecReplicateScalar()
86 __ movd(dst, locations->InAt(0).AsRegister<CpuRegister>(), /*64-bit*/ false); in VisitVecReplicateScalar()
[all …]
Dcode_generator_vector_arm_vixl.cc37 LocationSummary* locations = new (GetGraph()->GetAllocator()) LocationSummary(instruction); in VisitVecReplicateScalar() local
45 locations->SetInAt(0, Location::RequiresRegister()); in VisitVecReplicateScalar()
46 locations->SetOut(Location::RequiresFpuRegister()); in VisitVecReplicateScalar()
55 LocationSummary* locations = instruction->GetLocations(); in VisitVecReplicateScalar() local
56 vixl32::DRegister dst = DRegisterFrom(locations->Out()); in VisitVecReplicateScalar()
80 LocationSummary* locations = new (GetGraph()->GetAllocator()) LocationSummary(instruction); in VisitVecExtractScalar() local
83 locations->SetInAt(0, Location::RequiresFpuRegister()); in VisitVecExtractScalar()
84 locations->SetOut(Location::RequiresRegister()); in VisitVecExtractScalar()
93 LocationSummary* locations = instruction->GetLocations(); in VisitVecExtractScalar() local
94 vixl32::DRegister src = DRegisterFrom(locations->InAt(0)); in VisitVecExtractScalar()
[all …]
Dcode_generator_vector_mips.cc27 LocationSummary* locations = new (GetGraph()->GetAllocator()) LocationSummary(instruction); in VisitVecReplicateScalar() local
36 locations->SetInAt(0, Location::RequiresRegister()); in VisitVecReplicateScalar()
37 locations->SetOut(Location::RequiresFpuRegister()); in VisitVecReplicateScalar()
41 locations->SetInAt(0, Location::RequiresFpuRegister()); in VisitVecReplicateScalar()
42 locations->SetOut(Location::RequiresFpuRegister(), Location::kNoOutputOverlap); in VisitVecReplicateScalar()
51 LocationSummary* locations = instruction->GetLocations(); in VisitVecReplicateScalar() local
52 VectorRegister dst = VectorRegisterFrom(locations->Out()); in VisitVecReplicateScalar()
58 __ FillB(dst, locations->InAt(0).AsRegister<Register>()); in VisitVecReplicateScalar()
63 __ FillH(dst, locations->InAt(0).AsRegister<Register>()); in VisitVecReplicateScalar()
67 __ FillW(dst, locations->InAt(0).AsRegister<Register>()); in VisitVecReplicateScalar()
[all …]
Dcode_generator_vector_mips64.cc32 LocationSummary* locations = new (GetGraph()->GetAllocator()) LocationSummary(instruction); in VisitVecReplicateScalar() local
41 locations->SetInAt(0, Location::RequiresRegister()); in VisitVecReplicateScalar()
42 locations->SetOut(Location::RequiresFpuRegister()); in VisitVecReplicateScalar()
46 locations->SetInAt(0, Location::RequiresFpuRegister()); in VisitVecReplicateScalar()
47 locations->SetOut(Location::RequiresFpuRegister(), Location::kNoOutputOverlap); in VisitVecReplicateScalar()
56 LocationSummary* locations = instruction->GetLocations(); in VisitVecReplicateScalar() local
57 VectorRegister dst = VectorRegisterFrom(locations->Out()); in VisitVecReplicateScalar()
63 __ FillB(dst, locations->InAt(0).AsRegister<GpuRegister>()); in VisitVecReplicateScalar()
68 __ FillH(dst, locations->InAt(0).AsRegister<GpuRegister>()); in VisitVecReplicateScalar()
72 __ FillW(dst, locations->InAt(0).AsRegister<GpuRegister>()); in VisitVecReplicateScalar()
[all …]
Dcode_generator_vector_arm64.cc51 LocationSummary* locations = new (GetGraph()->GetAllocator()) LocationSummary(instruction); in VisitVecReplicateScalar() local
61 locations->SetInAt(0, ARM64EncodableConstantOrRegister(input, instruction)); in VisitVecReplicateScalar()
62 locations->SetOut(Location::RequiresFpuRegister()); in VisitVecReplicateScalar()
68 locations->SetInAt(0, Location::ConstantLocation(input->AsConstant())); in VisitVecReplicateScalar()
69 locations->SetOut(Location::RequiresFpuRegister()); in VisitVecReplicateScalar()
71 locations->SetInAt(0, Location::RequiresFpuRegister()); in VisitVecReplicateScalar()
72 locations->SetOut(Location::RequiresFpuRegister(), Location::kNoOutputOverlap); in VisitVecReplicateScalar()
82 LocationSummary* locations = instruction->GetLocations(); in VisitVecReplicateScalar() local
83 Location src_loc = locations->InAt(0); in VisitVecReplicateScalar()
84 VRegister dst = VRegisterFrom(locations->Out()); in VisitVecReplicateScalar()
[all …]
Dintrinsics_arm64.cc168 LocationSummary* locations = instruction_->GetLocations(); in EmitNativeCode() local
169 DCHECK(locations->CanCall()); in EmitNativeCode()
178 Register src_curr_addr = XRegisterFrom(locations->GetTemp(0)); in EmitNativeCode()
179 Register dst_curr_addr = XRegisterFrom(locations->GetTemp(1)); in EmitNativeCode()
180 Register src_stop_addr = XRegisterFrom(locations->GetTemp(2)); in EmitNativeCode()
240 LocationSummary* locations = in CreateFPToIntLocations() local
242 locations->SetInAt(0, Location::RequiresFpuRegister()); in CreateFPToIntLocations()
243 locations->SetOut(Location::RequiresRegister()); in CreateFPToIntLocations()
247 LocationSummary* locations = in CreateIntToFPLocations() local
249 locations->SetInAt(0, Location::RequiresRegister()); in CreateIntToFPLocations()
[all …]
Dintrinsics_arm_vixl.cc179 LocationSummary* locations = instruction_->GetLocations(); in EmitNativeCode() local
180 DCHECK(locations->CanCall()); in EmitNativeCode()
191 Location dest_pos = locations->InAt(3); in EmitNativeCode()
192 vixl32::Register src_curr_addr = RegisterFrom(locations->GetTemp(0)); in EmitNativeCode()
193 vixl32::Register dst_curr_addr = RegisterFrom(locations->GetTemp(1)); in EmitNativeCode()
194 vixl32::Register src_stop_addr = RegisterFrom(locations->GetTemp(2)); in EmitNativeCode()
195 vixl32::Register tmp = RegisterFrom(locations->GetTemp(3)); in EmitNativeCode()
260 LocationSummary* locations = in CreateFPToIntLocations() local
262 locations->SetInAt(0, Location::RequiresFpuRegister()); in CreateFPToIntLocations()
263 locations->SetOut(Location::RequiresRegister()); in CreateFPToIntLocations()
[all …]
Dcode_generator_arm_vixl.cc318 void SlowPathCodeARMVIXL::SaveLiveRegisters(CodeGenerator* codegen, LocationSummary* locations) { in SaveLiveRegisters() argument
322 const uint32_t core_spills = codegen->GetSlowPathSpills(locations, /* core_registers= */ true); in SaveLiveRegisters()
325 if (locations->RegisterContainsObject(i)) { in SaveLiveRegisters()
326 locations->SetStackBit(stack_offset / kVRegSize); in SaveLiveRegisters()
337 uint32_t fp_spills = codegen->GetSlowPathSpills(locations, /* core_registers= */ false); in SaveLiveRegisters()
356 void SlowPathCodeARMVIXL::RestoreLiveRegisters(CodeGenerator* codegen, LocationSummary* locations) { in RestoreLiveRegisters() argument
360 const uint32_t core_spills = codegen->GetSlowPathSpills(locations, /* core_registers= */ true); in RestoreLiveRegisters()
371 uint32_t fp_spills = codegen->GetSlowPathSpills(locations, /* core_registers= */ false); in RestoreLiveRegisters()
473 LocationSummary* locations = instruction_->GetLocations(); in EmitNativeCode() local
484 locations->InAt(0), in EmitNativeCode()
[all …]
Dcode_generator_mips64.cc132 LocationSummary* locations = instruction_->GetLocations(); in EmitNativeCode() local
142 codegen->EmitParallelMoves(locations->InAt(0), in EmitNativeCode()
145 locations->InAt(1), in EmitNativeCode()
193 LocationSummary* locations = instruction_->GetLocations(); in EmitNativeCode() local
194 Location out = locations->Out(); in EmitNativeCode()
201 SaveLiveRegisters(codegen, locations); in EmitNativeCode()
213 Location source = instruction_->IsLoadClass() ? out : locations->InAt(0); in EmitNativeCode()
225 DCHECK(out.IsRegister() && !locations->GetLiveRegisters()->ContainsCoreRegister(out.reg())); in EmitNativeCode()
231 RestoreLiveRegisters(codegen, locations); in EmitNativeCode()
253 LocationSummary* locations = instruction_->GetLocations(); in EmitNativeCode() local
[all …]
Dcode_generator_mips.cc180 LocationSummary* locations = instruction_->GetLocations(); in EmitNativeCode() local
190 codegen->EmitParallelMoves(locations->InAt(0), in EmitNativeCode()
193 locations->InAt(1), in EmitNativeCode()
240 LocationSummary* locations = instruction_->GetLocations(); in EmitNativeCode() local
241 Location out = locations->Out(); in EmitNativeCode()
248 SaveLiveRegisters(codegen, locations); in EmitNativeCode()
260 Location source = instruction_->IsLoadClass() ? out : locations->InAt(0); in EmitNativeCode()
272 DCHECK(out.IsRegister() && !locations->GetLiveRegisters()->ContainsCoreRegister(out.reg())); in EmitNativeCode()
278 RestoreLiveRegisters(codegen, locations); in EmitNativeCode()
300 LocationSummary* locations = instruction_->GetLocations(); in EmitNativeCode() local
[all …]
Dcode_generator.cc110 LocationSummary* locations = instruction->GetLocations(); in CheckTypeConsistency() local
111 if (locations == nullptr) { in CheckTypeConsistency()
115 if (locations->Out().IsUnallocated() in CheckTypeConsistency()
116 && (locations->Out().GetPolicy() == Location::kSameAsFirstInput)) { in CheckTypeConsistency()
117 DCHECK(CheckType(instruction->GetType(), locations->InAt(0))) in CheckTypeConsistency()
119 << " " << locations->InAt(0); in CheckTypeConsistency()
121 DCHECK(CheckType(instruction->GetType(), locations->Out())) in CheckTypeConsistency()
123 << " " << locations->Out(); in CheckTypeConsistency()
128 DCHECK(CheckType(inputs[i]->GetType(), locations->InAt(i))) in CheckTypeConsistency()
129 << inputs[i]->GetType() << " " << locations->InAt(i); in CheckTypeConsistency()
[all …]
Dregister_allocation_resolver.cc61 LocationSummary* locations = instruction->GetLocations(); in Resolve() local
62 Location location = locations->Out(); in Resolve()
68 locations->UpdateOut(location); in Resolve()
72 locations->UpdateOut(location); in Resolve()
133 if (locations->InAt(0).IsUnallocated()) { in Resolve()
134 locations->SetInAt(0, source); in Resolve()
136 DCHECK(locations->InAt(0).Equals(source)); in Resolve()
139 locations->UpdateOut(source); in Resolve()
209 LocationSummary* locations = at->GetLocations(); in Resolve() local
212 locations->SetTempAt(temp_index, Location::RegisterLocation(temp->GetRegister())); in Resolve()
[all …]
Dssa_liveness_analysis.cc54 LocationSummary* locations = current->GetLocations(); in NumberInstructions() local
55 if (locations != nullptr && locations->Out().IsValid()) { in NumberInstructions()
72 LocationSummary* locations = current->GetLocations(); in NumberInstructions() local
73 if (locations != nullptr && locations->Out().IsValid()) { in NumberInstructions()
417 LocationSummary* locations = user->GetLocations(); in FindFirstRegisterHint() local
418 Location expected = locations->InAt(use.GetInputIndex()); in FindFirstRegisterHint()
455 LocationSummary* locations = GetDefinedBy()->GetLocations(); in FindHintAtDefinition() local
456 Location out = locations->Out(); in FindHintAtDefinition()
Dcode_generator.h98 virtual void SaveLiveRegisters(CodeGenerator* codegen, LocationSummary* locations);
100 virtual void RestoreLiveRegisters(CodeGenerator* codegen, LocationSummary* locations);
220 virtual void AddLocationAsTemp(Location location, LocationSummary* locations) = 0;
292 uint32_t GetSlowPathSpills(LocationSummary* locations, bool core_registers) const { in GetSlowPathSpills() argument
293 DCHECK(locations->OnlyCallsOnSlowPath() || in GetSlowPathSpills()
294 (locations->Intrinsified() && locations->CallsOnMainAndSlowPath() && in GetSlowPathSpills()
295 !locations->HasCustomSlowPathCallingConvention())); in GetSlowPathSpills()
297 ? locations->GetLiveRegisters()->GetCoreRegisters() in GetSlowPathSpills()
298 : locations->GetLiveRegisters()->GetFloatingPointRegisters(); in GetSlowPathSpills()
299 if (locations->HasCustomSlowPathCallingConvention()) { in GetSlowPathSpills()
[all …]
Dcode_generator_mips.h250 void GenerateMinMaxInt(LocationSummary* locations, bool is_min, bool isR6, DataType::Type type);
251 void GenerateMinMaxFP(LocationSummary* locations, bool is_min, bool isR6, DataType::Type type);
253 void GenerateAbsFP(LocationSummary* locations, DataType::Type type, bool isR2OrNewer, bool isR6);
298 void GenerateIntCompare(IfCondition cond, LocationSummary* locations);
306 LocationSummary* locations,
308 void GenerateLongCompare(IfCondition cond, LocationSummary* locations);
310 LocationSummary* locations,
315 LocationSummary* locations);
335 LocationSummary* locations,
358 int32_t VecAddress(LocationSummary* locations,
[all …]
Dregister_allocator_linear_scan.cc225 LocationSummary* locations = instruction->GetLocations(); in ProcessInstruction() local
228 if (locations == nullptr) return; in ProcessInstruction()
231 for (size_t i = 0; i < locations->GetTempCount(); ++i) { in ProcessInstruction()
232 Location temp = locations->GetTemp(i); in ProcessInstruction()
274 if (locations->NeedsSafepoint()) { in ProcessInstruction()
286 if (locations->WillCall()) { in ProcessInstruction()
290 for (size_t i = 0; i < locations->GetInputCount(); ++i) { in ProcessInstruction()
291 Location input = locations->InAt(i); in ProcessInstruction()
344 Location output = locations->Out(); in ProcessInstruction()
346 Location first = locations->InAt(0); in ProcessInstruction()
[all …]
Dssa_liveness_analysis.h318 LocationSummary* locations = instruction->GetLocations(); variable
326 if (locations->IsFixedInput(input_index) || locations->OutputUsesSameAs(input_index)) {
333 } else if (!locations->InAt(input_index).IsValid()) {
907 LocationSummary* locations = defined_by_->GetLocations(); in CanUseInputRegister() local
908 if (locations->OutputCanOverlapWithInputs()) { in CanUseInputRegister()
956 LocationSummary* locations = defined_by_->GetLocations(); in DefinitionRequiresRegister() local
957 Location location = locations->Out(); in DefinitionRequiresRegister()
964 && (locations->InAt(0).IsRegister() in DefinitionRequiresRegister()
965 || locations->InAt(0).IsRegisterPair() in DefinitionRequiresRegister()
966 || locations->InAt(0).GetPolicy() == Location::kRequiresRegister))) { in DefinitionRequiresRegister()
[all …]
Dintrinsics.cc246 LocationSummary* locations = new (allocator) LocationSummary(invoke, call_kind, kIntrinsified); in ComputeIntegerValueOfLocations() local
248 locations->SetInAt(0, Location::RegisterOrConstant(invoke->InputAt(0))); in ComputeIntegerValueOfLocations()
249 locations->AddTemp(first_argument_location); in ComputeIntegerValueOfLocations()
250 locations->SetOut(return_location); in ComputeIntegerValueOfLocations()
252 locations->SetInAt(0, Location::ConstantLocation(invoke->InputAt(0)->AsConstant())); in ComputeIntegerValueOfLocations()
253 locations->SetOut(Location::RequiresRegister()); in ComputeIntegerValueOfLocations()
Dcode_generator_mips64.h246 void GenerateMinMaxInt(LocationSummary* locations, bool is_min);
247 void GenerateMinMaxFP(LocationSummary* locations, bool is_min, DataType::Type type);
301 void GenerateIntLongCompare(IfCondition cond, bool is64bit, LocationSummary* locations);
311 LocationSummary* locations,
316 LocationSummary* locations);
328 LocationSummary* locations,
341 int32_t VecAddress(LocationSummary* locations,
507 void AddLocationAsTemp(Location location, LocationSummary* locations) override;
/art/tools/
Dhost_bcp.sh21 Extracts boot class path locations from <image> and outputs the appropriate
23 --runtime-arg -Xbootclasspath-locations:...
75 --runtime-arg -Xbootclasspath-locations:${BCPL}
/art/test/510-checker-try-catch/smali/
DRegisterAllocator.smali23 ## CHECK-DAG: Phi reg:0 is_catch_phi:true locations:{{\[.*\]}}-><<SlotA1:\d+>>(sp)
24 ## CHECK-DAG: Phi reg:0 is_catch_phi:true locations:{{\[.*\]}}-><<SlotA2:\d+>>(sp)
25 ## CHECK-DAG: Phi reg:1 is_catch_phi:true locations:{{\[.*\]}}-><<SlotB:\d+>>(sp)
61 ## CHECK-DAG: Phi reg:0 is_catch_phi:true locations:{{\[.*\]}}->2x<<SlotB1:\d+>>(sp)
62 ## CHECK-DAG: Phi reg:0 is_catch_phi:true locations:{{\[.*\]}}->2x<<SlotB2:\d+>>(sp)
63 ## CHECK-DAG: Phi reg:2 is_catch_phi:true locations:{{\[.*\]}}-><<SlotA:\d+>>(sp)
/art/runtime/jit/
Dprofile_saver.cc446 const std::set<std::string>& locations = it.second; in FetchAndCacheResolvedClassesAndMethods() local
447 VLOG(profiler) << "Locations for " << it.first << " " << android::base::Join(locations, ':'); in FetchAndCacheResolvedClassesAndMethods()
455 << " found=" << (locations.find(base_location) != locations.end()) in FetchAndCacheResolvedClassesAndMethods()
457 if (locations.find(base_location) != locations.end()) { in FetchAndCacheResolvedClassesAndMethods()
472 << " found=" << (locations.find(base_location) != locations.end()) in FetchAndCacheResolvedClassesAndMethods()
474 if (locations.find(base_location) != locations.end()) { in FetchAndCacheResolvedClassesAndMethods()
484 if (locations.find(base_location) != locations.end()) { in FetchAndCacheResolvedClassesAndMethods()
536 const std::set<std::string>& locations = it.second; in ProcessProfilingInfo() local
538 << android::base::Join(locations, ":"); in ProcessProfilingInfo()
543 jit_code_cache_->GetProfiledMethods(locations, profile_methods); in ProcessProfilingInfo()
[all …]
/art/test/614-checker-dump-constant-location/
Dinfo.txt2 locations in parallel moves.
/art/test/555-UnsafeGetLong-regression/
Dinfo.txt1 Regression test for sun.misc.Unsafe.getLong's intrinsic's locations

12