diff options
author | 2024-05-28 15:39:00 +0000 | |
---|---|---|
committer | 2024-05-31 12:14:53 +0000 | |
commit | ea096e4d28d23ed289b418d24daa177e002f2672 (patch) | |
tree | 3466d6a9778feccc7c51ffe522f2f01751bbff38 /runtime/interpreter/interpreter_switch_impl-inl.h | |
parent | b801817fcb6647c252b6cae9051f9500c88057b1 (diff) |
Avoid transaction records for all new objects.
Test: m test-art-host-gtest
Test: testrunner.py --host --optimizing --interp-ac
Bug: 181943478
Change-Id: I0a51f622812dd3be0844c9e7c79e3b569ac3f029
Diffstat (limited to 'runtime/interpreter/interpreter_switch_impl-inl.h')
-rw-r--r-- | runtime/interpreter/interpreter_switch_impl-inl.h | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/runtime/interpreter/interpreter_switch_impl-inl.h b/runtime/interpreter/interpreter_switch_impl-inl.h index 72a95953ad..1ebac52c1e 100644 --- a/runtime/interpreter/interpreter_switch_impl-inl.h +++ b/runtime/interpreter/interpreter_switch_impl-inl.h @@ -861,7 +861,7 @@ class InstructionHandler { } else { obj = AllocObjectFromCode(c, Self(), allocator_type); if (obj != nullptr) { - TransactionChecker::RecordAllocatedObject(obj); + TransactionChecker::RecordNewObject(obj); } } } @@ -875,17 +875,17 @@ class InstructionHandler { HANDLER_ATTRIBUTES bool NEW_ARRAY() { int32_t length = GetVReg(B()); - ObjPtr<mirror::Object> obj = AllocArrayFromCode( + ObjPtr<mirror::Array> array = AllocArrayFromCode( dex::TypeIndex(C()), length, shadow_frame_.GetMethod(), Self(), Runtime::Current()->GetHeap()->GetCurrentAllocator()); - if (UNLIKELY(obj == nullptr)) { + if (UNLIKELY(array == nullptr)) { return false; // Pending exception. } - TransactionChecker::RecordAllocatedObject(obj); - SetVRegReference(A(), obj); + TransactionChecker::RecordNewArray(array); + SetVRegReference(A(), array); return true; } |