/art/compiler/optimizing/ |
D | locations.h | 34 class Location : public ValueObject { 55 Location() : value_(kInvalid) { in Location() function 68 Location(const Location& other) : ValueObject(), value_(other.value_) {} in Location() function 70 Location& operator=(const Location& other) { 79 static Location ConstantLocation(HConstant* constant) { in ConstantLocation() 81 return Location(kConstant | reinterpret_cast<uword>(constant)); in ConstantLocation() 98 static Location NoLocation() { in NoLocation() 99 return Location(); in NoLocation() 103 static Location RegisterLocation(ManagedRegister reg) { in RegisterLocation() 104 return Location(kRegister, reg.RegId()); in RegisterLocation() [all …]
|
D | register_allocator.h | 32 class Location; variable 96 void BlockRegister(Location location, size_t start, size_t end, Primitive::Type type); 110 void InsertParallelMoveAtExitOf(HBasicBlock* block, Location source, Location destination) const; 111 void InsertParallelMoveAtEntryOf(HBasicBlock* block, Location source, Location destination) const; 112 void InsertMoveAfter(HInstruction* instruction, Location source, Location destination) const; 113 void AddInputMoveFor(HInstruction* instruction, Location source, Location destination) const; 114 void InsertParallelMoveAt(size_t position, Location source, Location destination) const;
|
D | locations.cc | 28 inputs_.Put(i, Location()); in LocationSummary() 33 Location Location::RegisterOrConstant(HInstruction* instruction) { in RegisterOrConstant() 35 ? Location::ConstantLocation(instruction->AsConstant()) in RegisterOrConstant() 36 : Location::RequiresRegister(); in RegisterOrConstant()
|
D | code_generator_x86_64.cc | 32 x86_64::X86_64ManagedRegister Location::AsX86_64() const { in AsX86_64() 46 static Location X86_64CpuLocation(Register reg) { in X86_64CpuLocation() 47 return Location::RegisterLocation(X86_64ManagedRegister::FromCpuRegister(reg)); in X86_64CpuLocation() 101 Location index_location, in BoundsCheckSlowPathX86_64() 102 Location length_location) in BoundsCheckSlowPathX86_64() 118 const Location index_location_; 119 const Location length_location_; 248 Location CodeGeneratorX86_64::GetStackLocation(HLoadLocal* load) const { in GetStackLocation() 251 return Location::DoubleStackSlot(GetStackSlot(load->GetLocal())); in GetStackLocation() 256 return Location::StackSlot(GetStackSlot(load->GetLocal())); in GetStackLocation() [all …]
|
D | code_generator.cc | 120 Location CodeGenerator::GetTemporaryLocation(HTemporary* temp) const { in GetTemporaryLocation() 127 return Location::StackSlot(slot); in GetTemporaryLocation() 156 Location loc = locations->InAt(i); in AllocateRegistersLocally() 165 Location loc = locations->GetTemp(i); in AllocateRegistersLocally() 177 Location loc = locations->InAt(i); in AllocateRegistersLocally() 180 if (loc.GetPolicy() == Location::kRequiresRegister) { in AllocateRegistersLocally() 181 loc = Location::RegisterLocation( in AllocateRegistersLocally() 184 DCHECK_EQ(loc.GetPolicy(), Location::kAny); in AllocateRegistersLocally() 189 loc = Location::RegisterLocation( in AllocateRegistersLocally() 199 Location loc = locations->GetTemp(i); in AllocateRegistersLocally() [all …]
|
D | code_generator_x86.cc | 31 x86::X86ManagedRegister Location::AsX86() const { in AsX86() 42 static Location X86CpuLocation(Register reg) { in X86CpuLocation() 43 return Location::RegisterLocation(X86ManagedRegister::FromCpuRegister(reg)); in X86CpuLocation() 95 Location index_location, in BoundsCheckSlowPathX86() 96 Location length_location) in BoundsCheckSlowPathX86() 111 const Location index_location_; 112 const Location length_location_; 276 Location CodeGeneratorX86::GetStackLocation(HLoadLocal* load) const { in GetStackLocation() 279 return Location::DoubleStackSlot(GetStackSlot(load->GetLocal())); in GetStackLocation() 284 return Location::StackSlot(GetStackSlot(load->GetLocal())); in GetStackLocation() [all …]
|
D | code_generator_arm.cc | 31 arm::ArmManagedRegister Location::AsArm() const { in AsArm() 42 static Location ArmCoreLocation(Register reg) { in ArmCoreLocation() 43 return Location::RegisterLocation(ArmManagedRegister::FromCoreRegister(reg)); in ArmCoreLocation() 96 Location index_location, in BoundsCheckSlowPathARM() 97 Location length_location) in BoundsCheckSlowPathARM() 114 const Location index_location_; 115 const Location length_location_; 301 Location CodeGeneratorARM::GetStackLocation(HLoadLocal* load) const { in GetStackLocation() 304 return Location::DoubleStackSlot(GetStackSlot(load->GetLocal())); in GetStackLocation() 309 return Location::StackSlot(GetStackSlot(load->GetLocal())); in GetStackLocation() [all …]
|
D | code_generator_x86.h | 54 Location GetNextLocation(Primitive::Type type); 134 virtual void Move(HInstruction* instruction, Location location, HInstruction* move_for) OVERRIDE; 159 virtual Location GetStackLocation(HLoadLocal* load) const OVERRIDE; 181 void Move32(Location destination, Location source); 183 void Move64(Location destination, Location source);
|
D | code_generator_arm.h | 54 Location GetNextLocation(Primitive::Type type); 132 virtual void Move(HInstruction* instruction, Location location, HInstruction* move_for) OVERRIDE; 157 virtual Location GetStackLocation(HLoadLocal* load) const OVERRIDE; 179 void Move32(Location destination, Location source); 181 void Move64(Location destination, Location source);
|
D | register_allocator.cc | 88 void RegisterAllocator::BlockRegister(Location location, in BlockRegister() 135 Location output = locations->Out(); in AllocateRegistersInternal() 146 Location input = locations->InAt(i); in AllocateRegistersInternal() 648 static Location ConvertToLocation(LiveInterval* interval) { in ConvertToLocation() 650 return Location::RegisterLocation(ManagedRegister(interval->GetRegister())); in ConvertToLocation() 658 return Location::DoubleStackSlot(interval->GetParent()->GetSpillSlot()); in ConvertToLocation() 660 return Location::StackSlot(interval->GetParent()->GetSpillSlot()); in ConvertToLocation() 676 Location source, in AddInputMoveFor() 677 Location destination) const { in AddInputMoveFor() 698 Location source, in InsertParallelMoveAt() [all …]
|
D | parallel_move_resolver.cc | 80 Location destination = moves_.Get(index)->MarkPending(); in PerformMove() 132 Location source = move->GetSource(); in PerformMove() 133 Location destination = move->GetDestination(); in PerformMove() 150 bool ParallelMoveResolver::IsScratchLocation(Location loc) { in IsScratchLocation() 174 IsScratchLocation(Location::RegisterLocation(ManagedRegister(reg)))) { in AllocateScratchRegister()
|
D | code_generator_x86_64.h | 47 Location GetNextLocation(Primitive::Type type); 131 virtual void Move(HInstruction* instruction, Location location, HInstruction* move_for) OVERRIDE; 155 virtual Location GetStackLocation(HLoadLocal* load) const OVERRIDE; 183 void Move(Location destination, Location source);
|
D | parallel_move_resolver.h | 26 class Location; variable 60 bool IsScratchLocation(Location loc);
|
D | code_generator.h | 94 virtual void Move(HInstruction* instruction, Location location, HInstruction* move_for) = 0; 102 Location GetTemporaryLocation(HTemporary* temp) const; 164 virtual Location GetStackLocation(HLoadLocal* load) const = 0;
|
D | parallel_move_test.cc | 73 Location::RegisterLocation(ManagedRegister(operands[i][0])), in BuildParallelMove() 74 Location::RegisterLocation(ManagedRegister(operands[i][1])))); in BuildParallelMove()
|
D | ssa_liveness_analysis.h | 293 Location location = locations->Out(); in FirstRegisterUseAfter() 298 if ((location.GetPolicy() == Location::kRequiresRegister) in FirstRegisterUseAfter() 299 || (location.GetPolicy() == Location::kSameAsFirstInput in FirstRegisterUseAfter() 300 && locations->InAt(0).GetPolicy() == Location::kRequiresRegister)) { in FirstRegisterUseAfter() 311 Location location = use->GetUser()->GetLocations()->InAt(use->GetInputIndex()); in FirstRegisterUseAfter() 312 if (location.IsUnallocated() && location.GetPolicy() == Location::kRequiresRegister) { in FirstRegisterUseAfter()
|
D | nodes.h | 1471 MoveOperands(Location source, Location destination) in MoveOperands() 1474 Location GetSource() const { return source_; } in GetSource() 1475 Location GetDestination() const { return destination_; } in GetDestination() 1477 void SetSource(Location value) { source_ = value; } in SetSource() 1478 void SetDestination(Location value) { destination_ = value; } in SetDestination() 1482 Location MarkPending() { in MarkPending() 1484 Location dest = destination_; in MarkPending() 1485 destination_ = Location::NoLocation(); in MarkPending() 1489 void ClearPending(Location dest) { in ClearPending() 1500 bool Blocks(Location loc) const { in Blocks() [all …]
|
D | graph_visualizer.cc | 104 void DumpLocation(Location location, Primitive::Type type) { in DumpLocation()
|