summaryrefslogtreecommitdiffstats
path: root/runtime/class_linker.h
diff options
context:
space:
mode:
authorFred Shih <ffred@google.com>2014-08-25 17:24:27 -0700
committerFred Shih <ffred@google.com>2014-08-28 12:00:07 -0700
commit381e4ca3cc9fc6405ff20e1de873a56d78d51923 (patch)
treed526a0a141f6141c941cc6862be30f64eaa4735c /runtime/class_linker.h
parenta0a0da29e7d4d5c1bd471c49f1a4b6ec98fb767a (diff)
downloadart-381e4ca3cc9fc6405ff20e1de873a56d78d51923.zip
art-381e4ca3cc9fc6405ff20e1de873a56d78d51923.tar.gz
art-381e4ca3cc9fc6405ff20e1de873a56d78d51923.tar.bz2
Filling hole between subclass and superclass.
Subclasses no longer need to be 4-byte aligned at the end. Any gaps between a superclass and its subclasses will be filled in by halfword or byte fields if possible. Refactored the alignment and shuffling methods to use a priority queue in order to reduce the amount of logic when laying out objects. Change-Id: Ifed71af534e0c5e77bb14555c44b973fe66df6da
Diffstat (limited to 'runtime/class_linker.h')
-rw-r--r--runtime/class_linker.h13
1 files changed, 0 insertions, 13 deletions
diff --git a/runtime/class_linker.h b/runtime/class_linker.h
index 52ecff6..c7d6060 100644
--- a/runtime/class_linker.h
+++ b/runtime/class_linker.h
@@ -527,19 +527,6 @@ class ClassLinker {
void LinkCode(ConstHandle<mirror::ArtMethod> method, const OatFile::OatClass* oat_class,
const DexFile& dex_file, uint32_t dex_method_index, uint32_t method_index)
SHARED_LOCKS_REQUIRED(Locks::mutator_lock_);
- template<int n>
- void AlignFields(size_t& current_field, const size_t num_fields,
- MemberOffset& field_offset,
- mirror::ObjectArray<mirror::ArtField>* fields,
- std::deque<mirror::ArtField*>& grouped_and_sorted_fields)
- SHARED_LOCKS_REQUIRED(Locks::mutator_lock_);
- template<int n>
- void ShuffleForward(size_t& current_field, const size_t num_fields,
- MemberOffset& field_offset,
- mirror::ObjectArray<mirror::ArtField>* fields,
- std::deque<mirror::ArtField*>& grouped_and_sorted_fields)
- SHARED_LOCKS_REQUIRED(Locks::mutator_lock_);
-
void CreateReferenceInstanceOffsets(ConstHandle<mirror::Class> klass)
SHARED_LOCKS_REQUIRED(Locks::mutator_lock_);
void CreateReferenceStaticOffsets(ConstHandle<mirror::Class> klass)