diff options
| author | Vladimir Marko <vmarko@google.com> | 2017-10-05 14:35:55 +0100 |
|---|---|---|
| committer | Vladimir Marko <vmarko@google.com> | 2017-10-09 10:39:22 +0100 |
| commit | e764d2e50c544c2cb98ee61a15d613161ac6bd17 (patch) | |
| tree | 112aa7ca459d2edb4f800897060a2407fcc622c7 /compiler/optimizing/code_generator_vector_mips64.cc | |
| parent | ca6fff898afcb62491458ae8bcd428bfb3043da1 (diff) | |
| download | art-e764d2e50c544c2cb98ee61a15d613161ac6bd17.tar.gz art-e764d2e50c544c2cb98ee61a15d613161ac6bd17.tar.bz2 art-e764d2e50c544c2cb98ee61a15d613161ac6bd17.zip | |
Use ScopedArenaAllocator for register allocation.
Memory needed to compile the two most expensive methods for
aosp_angler-userdebug boot image:
BatteryStats.dumpCheckinLocked() : 25.1MiB -> 21.1MiB
BatteryStats.dumpLocked(): 49.6MiB -> 42.0MiB
This is because all the memory previously used by Scheduler
is reused by the register allocator; the register allocator
has a higher peak usage of the ArenaStack.
And continue the "arena"->"allocator" renaming.
Test: m test-art-host-gtest
Test: testrunner.py --host
Bug: 64312607
Change-Id: Idfd79a9901552b5147ec0bf591cb38120de86b01
Diffstat (limited to 'compiler/optimizing/code_generator_vector_mips64.cc')
| -rw-r--r-- | compiler/optimizing/code_generator_vector_mips64.cc | 20 |
1 files changed, 10 insertions, 10 deletions
diff --git a/compiler/optimizing/code_generator_vector_mips64.cc b/compiler/optimizing/code_generator_vector_mips64.cc index 6b0162a375..e606df2158 100644 --- a/compiler/optimizing/code_generator_vector_mips64.cc +++ b/compiler/optimizing/code_generator_vector_mips64.cc @@ -102,8 +102,8 @@ void InstructionCodeGeneratorMIPS64::VisitVecExtractScalar(HVecExtractScalar* in } // Helper to set up locations for vector unary operations. -static void CreateVecUnOpLocations(ArenaAllocator* arena, HVecUnaryOperation* instruction) { - LocationSummary* locations = new (arena) LocationSummary(instruction); +static void CreateVecUnOpLocations(ArenaAllocator* allocator, HVecUnaryOperation* instruction) { + LocationSummary* locations = new (allocator) LocationSummary(instruction); switch (instruction->GetPackedType()) { case DataType::Type::kBool: locations->SetInAt(0, Location::RequiresFpuRegister()); @@ -285,8 +285,8 @@ void InstructionCodeGeneratorMIPS64::VisitVecNot(HVecNot* instruction) { } // Helper to set up locations for vector binary operations. -static void CreateVecBinOpLocations(ArenaAllocator* arena, HVecBinaryOperation* instruction) { - LocationSummary* locations = new (arena) LocationSummary(instruction); +static void CreateVecBinOpLocations(ArenaAllocator* allocator, HVecBinaryOperation* instruction) { + LocationSummary* locations = new (allocator) LocationSummary(instruction); switch (instruction->GetPackedType()) { case DataType::Type::kBool: case DataType::Type::kUint8: @@ -713,8 +713,8 @@ void InstructionCodeGeneratorMIPS64::VisitVecXor(HVecXor* instruction) { } // Helper to set up locations for vector shift operations. -static void CreateVecShiftLocations(ArenaAllocator* arena, HVecBinaryOperation* instruction) { - LocationSummary* locations = new (arena) LocationSummary(instruction); +static void CreateVecShiftLocations(ArenaAllocator* allocator, HVecBinaryOperation* instruction) { + LocationSummary* locations = new (allocator) LocationSummary(instruction); switch (instruction->GetPackedType()) { case DataType::Type::kUint8: case DataType::Type::kInt8: @@ -843,8 +843,8 @@ void InstructionCodeGeneratorMIPS64::VisitVecSetScalars(HVecSetScalars* instruct } // Helper to set up locations for vector accumulations. -static void CreateVecAccumLocations(ArenaAllocator* arena, HVecOperation* instruction) { - LocationSummary* locations = new (arena) LocationSummary(instruction); +static void CreateVecAccumLocations(ArenaAllocator* allocator, HVecOperation* instruction) { + LocationSummary* locations = new (allocator) LocationSummary(instruction); switch (instruction->GetPackedType()) { case DataType::Type::kUint8: case DataType::Type::kInt8: @@ -923,10 +923,10 @@ void InstructionCodeGeneratorMIPS64::VisitVecSADAccumulate(HVecSADAccumulate* in } // Helper to set up locations for vector memory operations. -static void CreateVecMemLocations(ArenaAllocator* arena, +static void CreateVecMemLocations(ArenaAllocator* allocator, HVecMemoryOperation* instruction, bool is_load) { - LocationSummary* locations = new (arena) LocationSummary(instruction); + LocationSummary* locations = new (allocator) LocationSummary(instruction); switch (instruction->GetPackedType()) { case DataType::Type::kBool: case DataType::Type::kUint8: |
