| Index: src/arm/lithium-codegen-arm.cc
|
| diff --git a/src/arm/lithium-codegen-arm.cc b/src/arm/lithium-codegen-arm.cc
|
| index 74f564b6345da4679c59af82d09ff6840fb33a51..8aef5b3783664cc19270e657a5a1304d39e52a84 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");
|
| @@ -3074,7 +3074,7 @@ void LCodeGen::DoStoreContextSlot(LStoreContextSlot* instr) {
|
| target.offset(),
|
| value,
|
| scratch,
|
| - kLRHasBeenSaved,
|
| + GetLinkRegisterState(),
|
| kSaveFPRegs,
|
| EMIT_REMEMBERED_SET,
|
| check_needed);
|
| @@ -4366,7 +4366,7 @@ void LCodeGen::DoStoreNamedField(LStoreNamedField* instr) {
|
| HeapObject::kMapOffset,
|
| scratch,
|
| temp,
|
| - kLRHasBeenSaved,
|
| + GetLinkRegisterState(),
|
| kSaveFPRegs,
|
| OMIT_REMEMBERED_SET,
|
| OMIT_SMI_CHECK);
|
| @@ -4385,7 +4385,7 @@ void LCodeGen::DoStoreNamedField(LStoreNamedField* instr) {
|
| offset,
|
| value,
|
| scratch,
|
| - kLRHasBeenSaved,
|
| + GetLinkRegisterState(),
|
| kSaveFPRegs,
|
| EMIT_REMEMBERED_SET,
|
| check_needed);
|
| @@ -4400,7 +4400,7 @@ void LCodeGen::DoStoreNamedField(LStoreNamedField* instr) {
|
| offset,
|
| value,
|
| object,
|
| - kLRHasBeenSaved,
|
| + GetLinkRegisterState(),
|
| kSaveFPRegs,
|
| EMIT_REMEMBERED_SET,
|
| check_needed);
|
| @@ -4601,7 +4601,7 @@ void LCodeGen::DoStoreKeyedFixedArray(LStoreKeyed* instr) {
|
| __ RecordWrite(elements,
|
| key,
|
| value,
|
| - kLRHasBeenSaved,
|
| + GetLinkRegisterState(),
|
| kSaveFPRegs,
|
| EMIT_REMEMBERED_SET,
|
| check_needed);
|
| @@ -4653,7 +4653,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);
|
|
|