| Index: src/arm/macro-assembler-arm.cc
|
| diff --git a/src/arm/macro-assembler-arm.cc b/src/arm/macro-assembler-arm.cc
|
| index 2c798c1749f70cd152c2afddabf09e936e8a5f5a..0aa886bac724a3236d86382c0f7f04558c355f1d 100644
|
| --- a/src/arm/macro-assembler-arm.cc
|
| +++ b/src/arm/macro-assembler-arm.cc
|
| @@ -2252,18 +2252,16 @@ void MacroAssembler::CheckMap(Register obj,
|
| }
|
|
|
|
|
| -void MacroAssembler::DispatchMap(Register obj,
|
| - Register scratch,
|
| - Handle<Map> map,
|
| - Handle<Code> success,
|
| - SmiCheckType smi_check_type) {
|
| +void MacroAssembler::DispatchWeakMap(Register obj, Register scratch1,
|
| + Register scratch2, Handle<WeakCell> cell,
|
| + Handle<Code> success,
|
| + SmiCheckType smi_check_type) {
|
| Label fail;
|
| if (smi_check_type == DO_SMI_CHECK) {
|
| JumpIfSmi(obj, &fail);
|
| }
|
| - ldr(scratch, FieldMemOperand(obj, HeapObject::kMapOffset));
|
| - mov(ip, Operand(map));
|
| - cmp(scratch, ip);
|
| + ldr(scratch1, FieldMemOperand(obj, HeapObject::kMapOffset));
|
| + CmpWeakValue(scratch1, cell, scratch2);
|
| Jump(success, RelocInfo::CODE_TARGET, eq);
|
| bind(&fail);
|
| }
|
|
|