Force inlining on trivial accessors.
Make volatility for GetFieldObject a template parameter.
Move some trivial mirror::String routines to a -inl.h.
Bug: 14285442
Change-Id: Ie23b11d4f18cb15a62c3bbb42837a8aaf6b68f92
diff --git a/runtime/mirror/object.cc b/runtime/mirror/object.cc
index 766bbc9..2cd71a0 100644
--- a/runtime/mirror/object.cc
+++ b/runtime/mirror/object.cc
@@ -47,10 +47,10 @@
void operator()(Object* obj, MemberOffset offset, bool /* is_static */) const
ALWAYS_INLINE SHARED_LOCKS_REQUIRED(Locks::mutator_lock_) {
// GetFieldObject() contains a RB.
- Object* ref = obj->GetFieldObject<Object>(offset, false);
+ Object* ref = obj->GetFieldObject<Object>(offset);
// No WB here as a large object space does not have a card table
// coverage. Instead, cards will be marked separately.
- dest_obj_->SetFieldObjectWithoutWriteBarrier<false, false>(offset, ref, false);
+ dest_obj_->SetFieldObjectWithoutWriteBarrier<false, false>(offset, ref);
}
void operator()(mirror::Class* klass, mirror::Reference* ref) const