Index: src/mips/macro-assembler-mips.cc |
diff --git a/src/mips/macro-assembler-mips.cc b/src/mips/macro-assembler-mips.cc |
index b43fb56084f67b8b79e670eead73fe01b677214d..c601657dd94707d6ce5765828645d75d12fcacdd 100644 |
--- a/src/mips/macro-assembler-mips.cc |
+++ b/src/mips/macro-assembler-mips.cc |
@@ -5884,6 +5884,19 @@ void MacroAssembler::EnumLength(Register dst, Register map) { |
} |
+void MacroAssembler::LoadAccessor(Register dst, Register holder, |
+ int accessor_index, |
+ AccessorComponent accessor) { |
+ lw(dst, FieldMemOperand(holder, HeapObject::kMapOffset)); |
+ LoadInstanceDescriptors(dst, dst); |
+ lw(dst, |
+ FieldMemOperand(dst, DescriptorArray::GetValueOffset(accessor_index))); |
+ int offset = accessor == ACCESSOR_GETTER ? AccessorPair::kGetterOffset |
+ : AccessorPair::kSetterOffset; |
+ lw(dst, FieldMemOperand(dst, offset)); |
+} |
+ |
+ |
void MacroAssembler::CheckEnumCache(Register null_value, Label* call_runtime) { |
Register empty_fixed_array_value = t2; |
LoadRoot(empty_fixed_array_value, Heap::kEmptyFixedArrayRootIndex); |