summaryrefslogtreecommitdiffstats
path: root/compiler/dex/mir_field_info.cc
diff options
context:
space:
mode:
authorNicolas Geoffray <ngeoffray@google.com>2014-07-04 09:41:32 +0100
committerNicolas Geoffray <ngeoffray@google.com>2014-07-14 10:06:11 +0100
commite50383288a75244255d3ecedcc79ffe9caf774cb (patch)
tree8858489463a57c7b50f7db4d972abec21302b7a7 /compiler/dex/mir_field_info.cc
parentcf90ba7ebe00346651f3b7ce1e5b1f785f7caabd (diff)
downloadart-e50383288a75244255d3ecedcc79ffe9caf774cb.tar.gz
art-e50383288a75244255d3ecedcc79ffe9caf774cb.tar.bz2
art-e50383288a75244255d3ecedcc79ffe9caf774cb.zip
Support fields in optimizing compiler.
- Required support for temporaries, to be only used by baseline compiler. - Also fixed a few invalid assumptions around locations and instructions that don't need materialization. These instructions should not have an Out. Change-Id: Idc4a30dd95dd18015137300d36bec55fc024cf62
Diffstat (limited to 'compiler/dex/mir_field_info.cc')
-rw-r--r--compiler/dex/mir_field_info.cc4
1 files changed, 2 insertions, 2 deletions
diff --git a/compiler/dex/mir_field_info.cc b/compiler/dex/mir_field_info.cc
index 98866d9c2..68247b780 100644
--- a/compiler/dex/mir_field_info.cc
+++ b/compiler/dex/mir_field_info.cc
@@ -62,9 +62,9 @@ void MirIFieldLoweringInfo::Resolve(CompilerDriver* compiler_driver,
compiler_driver->GetResolvedFieldDexFileLocation(resolved_field,
&it->declaring_dex_file_, &it->declaring_class_idx_, &it->declaring_field_idx_);
bool is_volatile = compiler_driver->IsFieldVolatile(resolved_field);
-
+ it->field_offset_ = resolved_field->GetOffset();
std::pair<bool, bool> fast_path = compiler_driver->IsFastInstanceField(
- dex_cache.Get(), referrer_class.Get(), resolved_field, field_idx, &it->field_offset_);
+ dex_cache.Get(), referrer_class.Get(), resolved_field, field_idx);
it->flags_ = 0u | // Without kFlagIsStatic.
(is_volatile ? kFlagIsVolatile : 0u) |
(fast_path.first ? kFlagFastGet : 0u) |