diff options
author | Ian Rogers <irogers@google.com> | 2013-09-23 23:51:32 -0700 |
---|---|---|
committer | Ian Rogers <irogers@google.com> | 2013-09-24 17:07:24 -0700 |
commit | fc0e94bed3f88ed7e50854fd8dfaf5dcb345250f (patch) | |
tree | 5cfbe05084351576e9659cb8f7b66dcb6163a37b /runtime/gc | |
parent | 576fe9d4181c749aa510e32d2521ed4192bdfda0 (diff) | |
download | art-fc0e94bed3f88ed7e50854fd8dfaf5dcb345250f.zip art-fc0e94bed3f88ed7e50854fd8dfaf5dcb345250f.tar.gz art-fc0e94bed3f88ed7e50854fd8dfaf5dcb345250f.tar.bz2 |
StringPiece clean up.
Profile guided clean up.
Try to avoid creating StringPieces with the contents of a dex file where
the length is known.
Try to avoid RegTypeCache::FromDescriptor when there's a class available.
Make ConstantType::ConstantValue inlinable.
Saving of about 50ms from a 2 threaded ThinkFree compile on host.
Change-Id: I47a12c3c76f46e2c9805be1c3a3e3870fe1f5d85
Diffstat (limited to 'runtime/gc')
-rw-r--r-- | runtime/gc/heap.cc | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/runtime/gc/heap.cc b/runtime/gc/heap.cc index ccd9aac..2ad6117 100644 --- a/runtime/gc/heap.cc +++ b/runtime/gc/heap.cc @@ -557,7 +557,7 @@ static void MSpaceChunkCallback(void* start, void* end, size_t used_bytes, void* mirror::Object* Heap::AllocObject(Thread* self, mirror::Class* c, size_t byte_count) { DCHECK(c == NULL || (c->IsClassClass() && byte_count >= sizeof(mirror::Class)) || (c->IsVariableSize() || c->GetObjectSize() == byte_count) || - strlen(ClassHelper(c).GetDescriptor()) == 0); + ClassHelper(c).GetDescriptorAsStringPiece().length() == 0); DCHECK_GE(byte_count, sizeof(mirror::Object)); mirror::Object* obj = NULL; |