summaryrefslogtreecommitdiff
path: root/runtime/interpreter/interpreter_switch_impl1.cc
diff options
context:
space:
mode:
Diffstat (limited to 'runtime/interpreter/interpreter_switch_impl1.cc')
-rw-r--r--runtime/interpreter/interpreter_switch_impl1.cc11
1 files changed, 8 insertions, 3 deletions
diff --git a/runtime/interpreter/interpreter_switch_impl1.cc b/runtime/interpreter/interpreter_switch_impl1.cc
index 71d77e2064..9c5b5b3266 100644
--- a/runtime/interpreter/interpreter_switch_impl1.cc
+++ b/runtime/interpreter/interpreter_switch_impl1.cc
@@ -54,9 +54,14 @@ class ActiveTransactionChecker {
static void RecordArrayElementsInTransaction(ObjPtr<mirror::Object> array, int32_t count)
REQUIRES_SHARED(Locks::mutator_lock_);
- static void RecordAllocatedObject([[maybe_unused]] ObjPtr<mirror::Object> new_object)
+ static void RecordNewObject(ObjPtr<mirror::Object> new_object)
REQUIRES_SHARED(Locks::mutator_lock_) {
- GetClassLinker()->GetTransaction()->RecordAllocatedObject(new_object);
+ GetClassLinker()->GetTransaction()->RecordNewObject(new_object);
+ }
+
+ static void RecordNewArray(ObjPtr<mirror::Array> new_object)
+ REQUIRES_SHARED(Locks::mutator_lock_) {
+ GetClassLinker()->GetTransaction()->RecordNewArray(new_object);
}
private:
@@ -85,7 +90,7 @@ void ActiveTransactionChecker::RecordArrayElementsInTransaction(ObjPtr<mirror::O
DCHECK(array->IsArrayInstance());
DCHECK_LE(count, array->AsArray()->GetLength());
Transaction* transaction = GetClassLinker()->GetTransaction();
- if (!transaction->NeedsTransactionRecords(array.Ptr())) {
+ if (!transaction->ArrayNeedsTransactionRecords(array->AsArray())) {
return;
}
// No read barrier is needed for reading a chain of constant references