summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Treehugger Robot <treehugger-gerrit@google.com> 2017-02-07 12:08:19 +0000
committer Gerrit Code Review <noreply-gerritcodereview@google.com> 2017-02-07 12:08:20 +0000
commit1a991dbf85c8f4316f68641393dabf18ef182d44 (patch)
treee4cc30cb281d8eb3a50fd1ffd7f077f9a586a766
parent61d52088047bb803910b598f299903995ca48200 (diff)
parent7b3672e2af7dd2a0f9922b2b5bb48d1be579acbe (diff)
Merge "ARM: VIXL32: Fix "Align allocation entrypoints.."."
-rw-r--r--compiler/optimizing/code_generator_arm_vixl.cc5
1 files changed, 4 insertions, 1 deletions
diff --git a/compiler/optimizing/code_generator_arm_vixl.cc b/compiler/optimizing/code_generator_arm_vixl.cc
index 0d31d830c8..433947ac3d 100644
--- a/compiler/optimizing/code_generator_arm_vixl.cc
+++ b/compiler/optimizing/code_generator_arm_vixl.cc
@@ -4005,8 +4005,11 @@ void LocationsBuilderARMVIXL::VisitNewArray(HNewArray* instruction) {
void InstructionCodeGeneratorARMVIXL::VisitNewArray(HNewArray* instruction) {
// Note: if heap poisoning is enabled, the entry point takes cares
// of poisoning the reference.
- codegen_->InvokeRuntime(kQuickAllocArrayResolved, instruction, instruction->GetDexPc());
+ QuickEntrypointEnum entrypoint =
+ CodeGenerator::GetArrayAllocationEntrypoint(instruction->GetLoadClass()->GetClass());
+ codegen_->InvokeRuntime(entrypoint, instruction, instruction->GetDexPc());
CheckEntrypointTypes<kQuickAllocArrayResolved, void*, mirror::Class*, int32_t>();
+ DCHECK(!codegen_->IsLeafMethod());
}
void LocationsBuilderARMVIXL::VisitParameterValue(HParameterValue* instruction) {