diff options
author | 2020-05-04 15:37:29 +0100 | |
---|---|---|
committer | 2020-05-05 08:05:24 +0000 | |
commit | b6f4c79b06bb97651a7be1ac828d18ed18356603 (patch) | |
tree | ef0bbb1281f6d4785e60f26cb420646c83eb6f6d /runtime/native/java_lang_Class.cc | |
parent | 3971661c74a9b4635d9744f72f3b053c820067c9 (diff) |
Clean up Constructor/Method/Field construction.
Simplify the code by ignoring active transactions. Writing
to fields of a newly allocated object does not need to be
recorded as aborting the transaction removes all references
to the new object and it's unnecessary to roll back writes
to unreachable object's fields.
Test: m test-art-host-gtest
Test: testrunner.py --host --optimizing
Test: aosp_taimen-userdebug boots.
Change-Id: Ib5cd60c003d2ad3e6a246ff86d6b9288428c60ee
Diffstat (limited to 'runtime/native/java_lang_Class.cc')
-rw-r--r-- | runtime/native/java_lang_Class.cc | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/runtime/native/java_lang_Class.cc b/runtime/native/java_lang_Class.cc index 2c537c6626..5a73bf3383 100644 --- a/runtime/native/java_lang_Class.cc +++ b/runtime/native/java_lang_Class.cc @@ -540,10 +540,10 @@ static jobject Class_getDeclaredConstructorInternal( return nullptr; } Handle<mirror::Constructor> result = hs.NewHandle( - mirror::Class::GetDeclaredConstructorInternal<kRuntimePointerSize, false>( - soa.Self(), - klass, - soa.Decode<mirror::ObjectArray<mirror::Class>>(args))); + mirror::Class::GetDeclaredConstructorInternal<kRuntimePointerSize>( + soa.Self(), + klass, + soa.Decode<mirror::ObjectArray<mirror::Class>>(args))); if (result == nullptr || ShouldDenyAccessToMember(result->GetArtMethod(), soa.Self())) { return nullptr; } @@ -588,7 +588,7 @@ static jobjectArray Class_getDeclaredConstructorsInternal( DCHECK_EQ(Runtime::Current()->GetClassLinker()->GetImagePointerSize(), kRuntimePointerSize); DCHECK(!Runtime::Current()->IsActiveTransaction()); ObjPtr<mirror::Constructor> constructor = - mirror::Constructor::CreateFromArtMethod<kRuntimePointerSize, false>(soa.Self(), &m); + mirror::Constructor::CreateFromArtMethod<kRuntimePointerSize>(soa.Self(), &m); if (UNLIKELY(constructor == nullptr)) { soa.Self()->AssertPendingOOMException(); return nullptr; @@ -611,7 +611,7 @@ static jobject Class_getDeclaredMethodInternal(JNIEnv* env, jobject javaThis, return nullptr; } Handle<mirror::Method> result = hs.NewHandle( - mirror::Class::GetDeclaredMethodInternal<kRuntimePointerSize, false>( + mirror::Class::GetDeclaredMethodInternal<kRuntimePointerSize>( soa.Self(), klass, soa.Decode<mirror::String>(name), @@ -659,7 +659,7 @@ static jobjectArray Class_getDeclaredMethodsUnchecked(JNIEnv* env, jobject javaT DCHECK_EQ(Runtime::Current()->GetClassLinker()->GetImagePointerSize(), kRuntimePointerSize); DCHECK(!Runtime::Current()->IsActiveTransaction()); ObjPtr<mirror::Method> method = - mirror::Method::CreateFromArtMethod<kRuntimePointerSize, false>(soa.Self(), &m); + mirror::Method::CreateFromArtMethod<kRuntimePointerSize>(soa.Self(), &m); if (method == nullptr) { soa.Self()->AssertPendingException(); return nullptr; |