Home
last modified time | relevance | path

Searched refs:Location (Results 1 – 25 of 44) sorted by relevance

12

/art/compiler/optimizing/
Dlocations.cc27 static_assert(std::is_trivially_copyable<Location>::value, "Location should be trivially copyable");
38 output_overlaps_(Location::kOutputOverlap), in LocationSummary()
58 Location Location::RegisterOrConstant(HInstruction* instruction) { in RegisterOrConstant()
60 ? Location::ConstantLocation(instruction->AsConstant()) in RegisterOrConstant()
61 : Location::RequiresRegister(); in RegisterOrConstant()
64 Location Location::RegisterOrInt32Constant(HInstruction* instruction) { in RegisterOrInt32Constant()
69 return Location::ConstantLocation(constant); in RegisterOrInt32Constant()
72 return Location::RequiresRegister(); in RegisterOrInt32Constant()
75 Location Location::FpuRegisterOrInt32Constant(HInstruction* instruction) { in FpuRegisterOrInt32Constant()
80 return Location::ConstantLocation(constant); in FpuRegisterOrInt32Constant()
[all …]
Dparallel_move_test.cc37 static void DumpLocationForTest(std::ostream& os, Location location) { in DumpLocationForTest()
108 Location AllocateScratchLocationFor(Location::Kind kind) override { in AllocateScratchLocationFor()
109 if (kind == Location::kStackSlot || kind == Location::kFpuRegister || in AllocateScratchLocationFor()
110 kind == Location::kRegister) { in AllocateScratchLocationFor()
111 kind = Location::kRegister; in AllocateScratchLocationFor()
114 kind = Location::kRegisterPair; in AllocateScratchLocationFor()
116 Location scratch = GetScratchLocation(kind); in AllocateScratchLocationFor()
117 if (scratch.Equals(Location::NoLocation())) { in AllocateScratchLocationFor()
118 AddScratchLocation(Location::RegisterLocation(scratch_index_)); in AllocateScratchLocationFor()
119 AddScratchLocation(Location::RegisterLocation(scratch_index_ + 1)); in AllocateScratchLocationFor()
[all …]
Dlocations.h31 class Location; variable
33 std::ostream& operator<<(std::ostream& os, const Location& location);
39 class Location : public ValueObject {
81 Location() : ValueObject(), value_(kInvalid) { in Location() function
97 Location(const Location& other) = default;
99 Location& operator=(const Location& other) = default;
105 static Location ConstantLocation(HConstant* constant) { in ConstantLocation()
107 return Location(kConstant | reinterpret_cast<uintptr_t>(constant)); in ConstantLocation()
124 static Location NoLocation() { in NoLocation()
125 return Location(); in NoLocation()
[all …]
Dregister_allocation_resolver.h32 class Location; variable
69 Location source,
70 Location destination) const;
73 Location source,
74 Location destination) const;
75 void InsertMoveAfter(HInstruction* instruction, Location source, Location destination) const;
78 Location source,
79 Location destination) const;
82 Location source,
83 Location destination) const;
[all …]
Dparallel_move_resolver.cc80 Location LowOf(Location location) { in LowOf()
82 return Location::RegisterLocation(location.low()); in LowOf()
84 return Location::FpuRegisterLocation(location.low()); in LowOf()
86 return Location::StackSlot(location.GetStackIndex()); in LowOf()
88 return Location::NoLocation(); in LowOf()
92 Location HighOf(Location location) { in HighOf()
94 return Location::RegisterLocation(location.high()); in HighOf()
96 return Location::FpuRegisterLocation(location.high()); in HighOf()
98 return Location::StackSlot(location.GetHighStackIndex(4)); in HighOf()
100 return Location::NoLocation(); in HighOf()
[all …]
Dparallel_move_resolver.h82 bool IsScratchLocation(Location loc);
150 virtual Location AllocateScratchLocationFor(Location::Kind kind) = 0;
154 virtual void FreeScratchLocation(Location loc) = 0;
161 Location GetScratchLocation(Location::Kind kind);
165 void AddScratchLocation(Location loc);
168 void RemoveScratchLocation(Location loc);
171 ArenaVector<Location> scratches_;
178 void UpdateMoveSource(Location from, Location to);
180 void AddPendingMove(Location source, Location destination, DataType::Type type);
185 MoveOperands* GetUnblockedPendingMove(Location loc);
[all …]
Dcode_generator_x86.h86 Location GetNextLocation(DataType::Type type) override;
87 Location GetReturnLocation(DataType::Type type) const override;
88 Location GetMethodLocation() const override;
100 Location GetObjectLocation() const override { in GetObjectLocation()
101 return Location::RegisterLocation(ECX); in GetObjectLocation()
103 Location GetFieldIndexLocation() const override { in GetFieldIndexLocation()
104 return Location::RegisterLocation(EAX); in GetFieldIndexLocation()
106 Location GetReturnLocation(DataType::Type type) const override { in GetReturnLocation()
108 ? Location::RegisterPairLocation(EAX, EDX) in GetReturnLocation()
109 : Location::RegisterLocation(EAX); in GetReturnLocation()
[all …]
Dcode_generator_x86_64.h86 Location GetObjectLocation() const override { in GetObjectLocation()
87 return Location::RegisterLocation(RSI); in GetObjectLocation()
89 Location GetFieldIndexLocation() const override { in GetFieldIndexLocation()
90 return Location::RegisterLocation(RDI); in GetFieldIndexLocation()
92 Location GetReturnLocation(DataType::Type type ATTRIBUTE_UNUSED) const override { in GetReturnLocation()
93 return Location::RegisterLocation(RAX); in GetReturnLocation()
95 Location GetSetValueLocation(DataType::Type type ATTRIBUTE_UNUSED, bool is_instance) in GetSetValueLocation()
98 ? Location::RegisterLocation(RDX) in GetSetValueLocation()
99 : Location::RegisterLocation(RSI); in GetSetValueLocation()
101 Location GetFpuLocation(DataType::Type type ATTRIBUTE_UNUSED) const override { in GetFpuLocation()
[all …]
Dcommon_arm.h40 inline vixl::aarch32::Register HighRegisterFrom(Location location) { in HighRegisterFrom()
45 inline vixl::aarch32::DRegister HighDRegisterFrom(Location location) { in HighDRegisterFrom()
50 inline vixl::aarch32::Register LowRegisterFrom(Location location) { in LowRegisterFrom()
55 inline vixl::aarch32::SRegister LowSRegisterFrom(Location location) { in LowSRegisterFrom()
60 inline vixl::aarch32::SRegister HighSRegisterFrom(Location location) { in HighSRegisterFrom()
65 inline vixl::aarch32::Register RegisterFrom(Location location) { in RegisterFrom()
70 inline vixl::aarch32::Register RegisterFrom(Location location, DataType::Type type) { in RegisterFrom()
75 inline vixl::aarch32::DRegister DRegisterFrom(Location location) { in DRegisterFrom()
82 inline vixl::aarch32::SRegister SRegisterFrom(Location location) { in SRegisterFrom()
169 inline int32_t Int32ConstantFrom(Location location) { in Int32ConstantFrom()
[all …]
Dregister_allocation_resolver.cc62 Location location = locations->Out(); in Resolve()
66 location = Location::StackSlot(location.GetStackIndex() + codegen_->GetFrameSize()); in Resolve()
70 location = Location::DoubleStackSlot(location.GetStackIndex() + codegen_->GetFrameSize()); in Resolve()
129 Location source = current->ToLocation(); in Resolve()
132 if (location.GetPolicy() == Location::kSameAsFirstInput) { in Resolve()
192 Location source = input->GetLiveInterval()->GetLocationAt( in Resolve()
194 Location destination = phi->GetLiveInterval()->ToLocation(); in Resolve()
212 locations->SetTempAt(temp_index, Location::RegisterLocation(temp->GetRegister())); in Resolve()
217 Location location = Location::FpuRegisterPairLocation( in Resolve()
221 locations->SetTempAt(temp_index, Location::FpuRegisterLocation(temp->GetRegister())); in Resolve()
[all …]
Dcode_generator_x86.cc63 caller_saves.Add(Location::RegisterLocation(calling_convention.GetRegisterAt(0))); in OneRegInReferenceOutSaveEverythingCallerSaves()
158 Location length_loc = locations->InAt(1); in EmitNativeCode()
164 Location array_loc = array_length->GetLocations()->InAt(0); in EmitNativeCode()
166 length_loc = Location::RegisterLocation(calling_convention.GetRegisterAt(1)); in EmitNativeCode()
170 length_loc = Location::RegisterLocation(calling_convention.GetRegisterAt(2)); in EmitNativeCode()
179 Location::RegisterLocation(calling_convention.GetRegisterAt(0)), in EmitNativeCode()
182 Location::RegisterLocation(calling_convention.GetRegisterAt(1)), in EmitNativeCode()
255 x86_codegen->Move32(locations->Out(), Location::RegisterLocation(EAX)); in EmitNativeCode()
277 Location out = locations->Out(); in EmitNativeCode()
296 Location source = instruction_->IsLoadClass() ? out : locations->InAt(0); in EmitNativeCode()
[all …]
Dcode_generator_arm_vixl.h179 Location GetNextLocation(DataType::Type type) override;
180 Location GetReturnLocation(DataType::Type type) const override;
181 Location GetMethodLocation() const override;
194 Location GetObjectLocation() const override { in GetObjectLocation()
197 Location GetFieldIndexLocation() const override { in GetFieldIndexLocation()
200 Location GetReturnLocation(DataType::Type type) const override { in GetReturnLocation()
205 Location GetSetValueLocation(DataType::Type type, bool is_instance) const override { in GetSetValueLocation()
212 Location GetFpuLocation(DataType::Type type) const override { in GetFpuLocation()
290 Location ArithmeticZeroOrFpuRegister(HInstruction* input);
291 Location ArmEncodableConstantOrRegister(HInstruction* constant, Opcode opcode);
[all …]
Dcode_generator_x86_64.cc64 caller_saves.Add(Location::RegisterLocation(RAX)); in OneRegInReferenceOutSaveEverythingCallerSaves()
204 Location length_loc = locations->InAt(1); in EmitNativeCode()
210 Location array_loc = array_length->GetLocations()->InAt(0); in EmitNativeCode()
212 length_loc = Location::RegisterLocation(calling_convention.GetRegisterAt(1)); in EmitNativeCode()
216 length_loc = Location::RegisterLocation(calling_convention.GetRegisterAt(2)); in EmitNativeCode()
228 Location::RegisterLocation(calling_convention.GetRegisterAt(0)), in EmitNativeCode()
231 Location::RegisterLocation(calling_convention.GetRegisterAt(1)), in EmitNativeCode()
259 Location out = locations->Out(); in EmitNativeCode()
278 Location source = instruction_->IsLoadClass() ? out : locations->InAt(0); in EmitNativeCode()
279 x86_64_codegen->Move(Location::RegisterLocation(RAX), source); in EmitNativeCode()
[all …]
Dcode_generator_arm64.h101 inline Location FixedTempLocation() { in FixedTempLocation()
102 return Location::RegisterLocation(vixl::aarch64::x15.GetCode()); in FixedTempLocation()
118 Location ARM64ReturnLocation(DataType::Type return_type);
189 Location GetReturnLocation(DataType::Type return_type);
205 Location GetReturnLocation(DataType::Type return_type) const { in GetReturnLocation()
219 Location GetNextLocation(DataType::Type type) override;
220 Location GetReturnLocation(DataType::Type return_type) const override { in GetReturnLocation()
223 Location GetMethodLocation() const override;
235 Location GetObjectLocation() const override { in GetObjectLocation()
238 Location GetFieldIndexLocation() const override { in GetFieldIndexLocation()
[all …]
Dintrinsics_x86.cc99 Location src_pos = locations->InAt(1); in EmitNativeCode()
101 Location dest_pos = locations->InAt(3); in EmitNativeCode()
102 Location length = locations->InAt(4); in EmitNativeCode()
103 Location temp1_loc = locations->GetTemp(0); in EmitNativeCode()
176 locations->SetInAt(0, Location::RequiresFpuRegister()); in CreateFPToIntLocations()
177 locations->SetOut(Location::RequiresRegister()); in CreateFPToIntLocations()
179 locations->AddTemp(Location::RequiresFpuRegister()); in CreateFPToIntLocations()
186 locations->SetInAt(0, Location::RequiresRegister()); in CreateIntToFPLocations()
187 locations->SetOut(Location::RequiresFpuRegister()); in CreateIntToFPLocations()
189 locations->AddTemp(Location::RequiresFpuRegister()); in CreateIntToFPLocations()
[all …]
Dcommon_arm64.h66 inline vixl::aarch64::Register XRegisterFrom(Location location) { in XRegisterFrom()
71 inline vixl::aarch64::Register WRegisterFrom(Location location) { in WRegisterFrom()
76 inline vixl::aarch64::Register RegisterFrom(Location location, DataType::Type type) { in RegisterFrom()
90 inline vixl::aarch64::VRegister DRegisterFrom(Location location) { in DRegisterFrom()
95 inline vixl::aarch64::VRegister QRegisterFrom(Location location) { in QRegisterFrom()
100 inline vixl::aarch64::VRegister VRegisterFrom(Location location) { in VRegisterFrom()
105 inline vixl::aarch64::VRegister SRegisterFrom(Location location) { in SRegisterFrom()
110 inline vixl::aarch64::VRegister HRegisterFrom(Location location) { in HRegisterFrom()
115 inline vixl::aarch64::VRegister FPRegisterFrom(Location location, DataType::Type type) { in FPRegisterFrom()
129 inline vixl::aarch64::CPURegister CPURegisterFrom(Location location, DataType::Type type) { in CPURegisterFrom()
[all …]
Dintrinsics_x86_64.cc134 locations->SetInAt(0, Location::RequiresFpuRegister()); in CreateFPToIntLocations()
135 locations->SetOut(Location::RequiresRegister()); in CreateFPToIntLocations()
141 locations->SetInAt(0, Location::RequiresRegister()); in CreateIntToFPLocations()
142 locations->SetOut(Location::RequiresFpuRegister()); in CreateIntToFPLocations()
146 Location input = locations->InAt(0); in MoveFPToInt()
147 Location output = locations->Out(); in MoveFPToInt()
152 Location input = locations->InAt(0); in MoveIntToFP()
153 Location output = locations->Out(); in MoveIntToFP()
188 locations->SetInAt(0, Location::RequiresRegister()); in CreateIntToIntLocations()
189 locations->SetOut(Location::SameAsFirstInput()); in CreateIntToIntLocations()
[all …]
Dcode_generator_arm_vixl.cc78 static bool ExpectedPairLayout(Location location) { in ExpectedPairLayout()
517 Location out = locations->Out(); in EmitNativeCode()
536 Location source = instruction_->IsLoadClass() ? out : locations->InAt(0); in EmitNativeCode()
723 Location out, in ReadBarrierForHeapReferenceSlowPathARMVIXL()
724 Location ref, in ReadBarrierForHeapReferenceSlowPathARMVIXL()
725 Location obj, in ReadBarrierForHeapReferenceSlowPathARMVIXL()
727 Location index) in ReadBarrierForHeapReferenceSlowPathARMVIXL()
774 Location index = index_; in EmitNativeCode()
894 const Location out_;
895 const Location ref_;
[all …]
Dcode_generator_arm64.cc131 Location ARM64ReturnLocation(DataType::Type return_type) { in ARM64ReturnLocation()
142 return Location::NoLocation(); in ARM64ReturnLocation()
148 Location InvokeRuntimeCallingConvention::GetReturnLocation(DataType::Type return_type) { in GetReturnLocation()
155 caller_saves.Add(Location::RegisterLocation(calling_convention.GetRegisterAt(0).GetCode())); in OneRegInReferenceOutSaveEverythingCallerSaves()
314 Location out = locations->Out(); in EmitNativeCode()
333 Location source = instruction_->IsLoadClass() ? out : locations->InAt(0); in EmitNativeCode()
493 Location ret_loc = calling_convention.GetReturnLocation(ret_type); in EmitNativeCode()
607 Location out, in ReadBarrierForHeapReferenceSlowPathARM64()
608 Location ref, in ReadBarrierForHeapReferenceSlowPathARM64()
609 Location obj, in ReadBarrierForHeapReferenceSlowPathARM64()
[all …]
Dssa_liveness_analysis.cc335 static int RegisterOrLowRegister(Location location) { in RegisterOrLowRegister()
389 Location phi_location = user->GetLiveInterval()->ToLocation(); in FindFirstRegisterHint()
405 Location location = inputs[i]->GetLiveInterval()->GetLocationAt( in FindFirstRegisterHint()
418 Location expected = locations->InAt(use.GetInputIndex()); in FindFirstRegisterHint()
447 Location input_location = input_interval->ToLocation(); in FindHintAtDefinition()
456 Location out = locations->Out(); in FindHintAtDefinition()
457 if (out.IsUnallocated() && out.GetPolicy() == Location::kSameAsFirstInput) { in FindHintAtDefinition()
464 Location location = input_interval->ToLocation(); in FindHintAtDefinition()
475 bool LiveInterval::SameRegisterKind(Location other) const { in SameRegisterKind()
505 Location LiveInterval::ToLocation() const { in ToLocation()
[all …]
Dintrinsics_arm64.cc63 ALWAYS_INLINE inline MemOperand AbsoluteHeapOperandFrom(Location location, size_t offset = 0) { in AbsoluteHeapOperandFrom()
79 static void MoveFromReturnRegister(Location trg, in MoveFromReturnRegister()
138 Location out = invoke_->GetLocations()->Out(); in EmitNativeCode()
161 ReadBarrierSystemArrayCopySlowPathARM64(HInstruction* instruction, Location tmp) in ReadBarrierSystemArrayCopySlowPathARM64()
223 Location tmp_;
243 locations->SetInAt(0, Location::RequiresFpuRegister()); in CreateFPToIntLocations()
244 locations->SetOut(Location::RequiresRegister()); in CreateFPToIntLocations()
250 locations->SetInAt(0, Location::RequiresRegister()); in CreateIntToFPLocations()
251 locations->SetOut(Location::RequiresFpuRegister()); in CreateIntToFPLocations()
255 Location input = locations->InAt(0); in MoveFPToInt()
[all …]
Dcode_generator.h150 virtual Location GetNextLocation(DataType::Type type) = 0;
151 virtual Location GetReturnLocation(DataType::Type type) const = 0;
152 virtual Location GetMethodLocation() const = 0;
171 virtual Location GetObjectLocation() const = 0;
172 virtual Location GetFieldIndexLocation() const = 0;
173 virtual Location GetReturnLocation(DataType::Type type) const = 0;
174 virtual Location GetSetValueLocation(DataType::Type type, bool is_instance) const = 0;
175 virtual Location GetFpuLocation(DataType::Type type) const = 0;
218 virtual void MoveConstant(Location destination, int32_t value) = 0;
219 virtual void MoveLocation(Location dst, Location src, DataType::Type dst_type) = 0;
[all …]
Dintrinsics_utils.h44 Location MoveArguments(CodeGenerator* codegen) { in MoveArguments()
56 Location method_loc = MoveArguments(codegen); in EmitNativeCode()
65 Location out = invoke_->GetLocations()->Out(); in EmitNativeCode()
Dintrinsics_arm_vixl.cc82 Location MoveArguments(CodeGenerator* codegen) { in MoveArguments()
94 Location method_loc = MoveArguments(codegen); in EmitNativeCode()
103 Location out = invoke_->GetLocations()->Out(); in EmitNativeCode()
127 const Location& pos, in GenSystemArrayCopyBaseAddress()
149 const Location& copy_length, in GenSystemArrayCopyEndAddress()
191 Location dest_pos = locations->InAt(3); in EmitNativeCode()
262 locations->SetInAt(0, Location::RequiresFpuRegister()); in CreateFPToIntLocations()
263 locations->SetOut(Location::RequiresRegister()); in CreateFPToIntLocations()
269 locations->SetInAt(0, Location::RequiresRegister()); in CreateIntToFPLocations()
270 locations->SetOut(Location::RequiresFpuRegister()); in CreateIntToFPLocations()
[all …]
/art/test/910-methods/
Dexpected.txt6 Location start: 0
7 Location end: 36
16 Location start: JVMTI_ERROR_NATIVE_METHOD
17 Location end: JVMTI_ERROR_NATIVE_METHOD
26 Location start: JVMTI_ERROR_NATIVE_METHOD
27 Location end: JVMTI_ERROR_NATIVE_METHOD
36 Location start: -1
37 Location end: -1
46 Location start: -1
47 Location end: -1
[all …]

12