| Index: src/arm/lithium-codegen-arm.cc
|
| diff --git a/src/arm/lithium-codegen-arm.cc b/src/arm/lithium-codegen-arm.cc
|
| index 6fd97972c3facddf5b0463003f498fc510b62d0c..244bb1945b0999187fcc5279da6fe5ff840f8706 100644
|
| --- a/src/arm/lithium-codegen-arm.cc
|
| +++ b/src/arm/lithium-codegen-arm.cc
|
| @@ -239,7 +239,7 @@ bool LCodeGen::GeneratePrologue() {
|
| __ str(r0, target);
|
| // Update the write barrier. This clobbers r3 and r0.
|
| __ RecordWriteContextSlot(
|
| - cp, target.offset(), r0, r3, kLRHasBeenSaved, kSaveFPRegs);
|
| + cp, target.offset(), r0, r3, GetLinkRegisterState(), kSaveFPRegs);
|
| }
|
| }
|
| Comment(";;; End allocate local context");
|
| @@ -3066,7 +3066,7 @@ void LCodeGen::DoStoreContextSlot(LStoreContextSlot* instr) {
|
| target.offset(),
|
| value,
|
| scratch,
|
| - kLRHasBeenSaved,
|
| + GetLinkRegisterState(),
|
| kSaveFPRegs,
|
| EMIT_REMEMBERED_SET,
|
| check_needed);
|
| @@ -4351,7 +4351,7 @@ void LCodeGen::DoStoreNamedField(LStoreNamedField* instr) {
|
| HeapObject::kMapOffset,
|
| scratch,
|
| temp,
|
| - kLRHasBeenSaved,
|
| + GetLinkRegisterState(),
|
| kSaveFPRegs,
|
| OMIT_REMEMBERED_SET,
|
| OMIT_SMI_CHECK);
|
| @@ -4370,7 +4370,7 @@ void LCodeGen::DoStoreNamedField(LStoreNamedField* instr) {
|
| offset,
|
| value,
|
| scratch,
|
| - kLRHasBeenSaved,
|
| + GetLinkRegisterState(),
|
| kSaveFPRegs,
|
| EMIT_REMEMBERED_SET,
|
| check_needed);
|
| @@ -4385,7 +4385,7 @@ void LCodeGen::DoStoreNamedField(LStoreNamedField* instr) {
|
| offset,
|
| value,
|
| object,
|
| - kLRHasBeenSaved,
|
| + GetLinkRegisterState(),
|
| kSaveFPRegs,
|
| EMIT_REMEMBERED_SET,
|
| check_needed);
|
| @@ -4586,7 +4586,7 @@ void LCodeGen::DoStoreKeyedFixedArray(LStoreKeyed* instr) {
|
| __ RecordWrite(elements,
|
| key,
|
| value,
|
| - kLRHasBeenSaved,
|
| + GetLinkRegisterState(),
|
| kSaveFPRegs,
|
| EMIT_REMEMBERED_SET,
|
| check_needed);
|
| @@ -4638,7 +4638,7 @@ void LCodeGen::DoTransitionElementsKind(LTransitionElementsKind* instr) {
|
| __ str(new_map_reg, FieldMemOperand(object_reg, HeapObject::kMapOffset));
|
| // Write barrier.
|
| __ RecordWriteField(object_reg, HeapObject::kMapOffset, new_map_reg,
|
| - scratch, kLRHasBeenSaved, kDontSaveFPRegs);
|
| + scratch, GetLinkRegisterState(), kDontSaveFPRegs);
|
| } else if (FLAG_compiled_transitions) {
|
| PushSafepointRegistersScope scope(this, Safepoint::kWithRegisters);
|
| __ Move(r0, object_reg);
|
|
|