summaryrefslogtreecommitdiffstats
path: root/compiler/optimizing/code_generator_arm.cc
diff options
context:
space:
mode:
authorCalin Juravle <calin@google.com>2014-11-13 11:16:27 +0000
committerGerrit Code Review <noreply-gerritcodereview@google.com>2014-11-13 11:16:28 +0000
commitd77ae8a11e6493ac738864eae073ca4909e4d847 (patch)
treef6835a2f659cedfc47975bf82f52f05927f8b4b2 /compiler/optimizing/code_generator_arm.cc
parent39edb50e16334c8a4ebbfcf0efac38b25074a2dd (diff)
parentf97f9fbfdf7f2e23c662f21081fadee6af37809d (diff)
downloadart-d77ae8a11e6493ac738864eae073ca4909e4d847.tar.gz
art-d77ae8a11e6493ac738864eae073ca4909e4d847.tar.bz2
art-d77ae8a11e6493ac738864eae073ca4909e4d847.zip
Merge "[optimizing compiler] add HTemporary support for long and doubles"
Diffstat (limited to 'compiler/optimizing/code_generator_arm.cc')
-rw-r--r--compiler/optimizing/code_generator_arm.cc7
1 files changed, 6 insertions, 1 deletions
diff --git a/compiler/optimizing/code_generator_arm.cc b/compiler/optimizing/code_generator_arm.cc
index 6f5a3cbc15..c5d6246134 100644
--- a/compiler/optimizing/code_generator_arm.cc
+++ b/compiler/optimizing/code_generator_arm.cc
@@ -822,7 +822,12 @@ void CodeGeneratorARM::Move(HInstruction* instruction, Location location, HInstr
}
} else if (instruction->IsTemporary()) {
Location temp_location = GetTemporaryLocation(instruction->AsTemporary());
- Move32(location, temp_location);
+ if (temp_location.IsStackSlot()) {
+ Move32(location, temp_location);
+ } else {
+ DCHECK(temp_location.IsDoubleStackSlot());
+ Move64(location, temp_location);
+ }
} else {
DCHECK((instruction->GetNext() == move_for) || instruction->GetNext()->IsTemporary());
switch (instruction->GetType()) {