From 41aedbb684ccef76ff8373f39aba606ce4cb3194 Mon Sep 17 00:00:00 2001 From: Nicolas Geoffray Date: Wed, 14 Jan 2015 10:49:16 +0000 Subject: Fully support pairs in the register allocator. Enabled on ARM for longs and doubles. Change-Id: Id8792d08bd7ca9fb049c5db8a40ae694bafc2d8b --- compiler/optimizing/code_generator.cc | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'compiler/optimizing/code_generator.cc') diff --git a/compiler/optimizing/code_generator.cc b/compiler/optimizing/code_generator.cc index cdfd989bb8..fe7bdc0cdf 100644 --- a/compiler/optimizing/code_generator.cc +++ b/compiler/optimizing/code_generator.cc @@ -632,6 +632,14 @@ void CodeGenerator::RecordPcInfo(HInstruction* instruction, uint32_t dex_pc) { break; } + case Location::kRegisterPair : { + stack_map_stream_.AddDexRegisterEntry(DexRegisterMap::kInRegister, location.low()); + stack_map_stream_.AddDexRegisterEntry(DexRegisterMap::kInRegister, location.high()); + ++i; + DCHECK_LT(i, environment_size); + break; + } + default: LOG(FATAL) << "Unexpected kind " << location.GetKind(); } -- cgit v1.2.3-59-g8ed1b