Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(724)

Unified Diff: runtime/vm/stub_code_arm.cc

Issue 2112043002: Land Ivan's change of 'Remove support for verified memory handling' (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: Address code review comments. Created 4 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « runtime/vm/snapshot.cc ('k') | runtime/vm/stub_code_ia32.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: runtime/vm/stub_code_arm.cc
diff --git a/runtime/vm/stub_code_arm.cc b/runtime/vm/stub_code_arm.cc
index 0fc07ac0229843deb28885b8d101a393e7abd150..9f71894e5774254c62622e605d960cbc83965681 100644
--- a/runtime/vm/stub_code_arm.cc
+++ b/runtime/vm/stub_code_arm.cc
@@ -371,7 +371,8 @@ static void PushArgumentsArray(Assembler* assembler) {
Label loop;
__ Bind(&loop);
__ ldr(IP, Address(R1, kWordSize, Address::PreIndex));
- __ InitializeFieldNoBarrier(R0, Address(R3, R2, LSL, 1), IP);
+ // Generational barrier is needed, array is not necessarily in new space.
+ __ StoreIntoObject(R0, Address(R3, R2, LSL, 1), IP);
__ Bind(&enter);
__ subs(R2, R2, Operand(Smi::RawValue(1))); // R2 is Smi.
__ b(&loop, PL);
@@ -678,12 +679,12 @@ void StubCode::GenerateAllocateArrayStub(Assembler* assembler) {
// R0: new object start as a tagged pointer.
// NOTFP: new object end address.
// Store the type argument field.
- __ InitializeFieldNoBarrier(R0,
+ __ StoreIntoObjectNoBarrier(R0,
FieldAddress(R0, Array::type_arguments_offset()),
R1);
// Set the length field.
- __ InitializeFieldNoBarrier(R0,
+ __ StoreIntoObjectNoBarrier(R0,
FieldAddress(R0, Array::length_offset()),
R2);
@@ -926,7 +927,7 @@ void StubCode::GenerateAllocateContextStub(Assembler* assembler) {
// R3: next object start.
// R4: allocation stats address.
__ LoadObject(R8, Object::null_object());
- __ InitializeFieldNoBarrier(R0, FieldAddress(R0, Context::parent_offset()),
+ __ StoreIntoObjectNoBarrier(R0, FieldAddress(R0, Context::parent_offset()),
R8);
// Initialize the context variables.
@@ -1130,7 +1131,7 @@ void StubCode::GenerateAllocationStubForClass(Assembler* assembler,
// Set the type arguments in the new object.
__ ldr(R4, Address(SP, 0));
FieldAddress type_args(R0, cls.type_arguments_field_offset());
- __ InitializeFieldNoBarrier(R0, type_args, R4);
+ __ StoreIntoObjectNoBarrier(R0, type_args, R4);
}
// Done allocating and initializing the instance.
« no previous file with comments | « runtime/vm/snapshot.cc ('k') | runtime/vm/stub_code_ia32.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698