| Index: src/a64/lithium-codegen-a64.cc
|
| diff --git a/src/a64/lithium-codegen-a64.cc b/src/a64/lithium-codegen-a64.cc
|
| index 109c5fb1a7837362f1144d793d5f286bfe7f45ef..7a0547bf08671dd5697d41b09273cbe9b471dec2 100644
|
| --- a/src/a64/lithium-codegen-a64.cc
|
| +++ b/src/a64/lithium-codegen-a64.cc
|
| @@ -2436,18 +2436,18 @@ void LCodeGen::DoContext(LContext* instr) {
|
| }
|
|
|
|
|
| -void LCodeGen::DoCheckFunction(LCheckFunction* instr) {
|
| +void LCodeGen::DoCheckValue(LCheckValue* instr) {
|
| Register reg = ToRegister(instr->value());
|
| - Handle<JSFunction> target = instr->hydrogen()->target();
|
| + Handle<HeapObject> object = instr->hydrogen()->object();
|
| AllowDeferredHandleDereference smi_check;
|
| - if (isolate()->heap()->InNewSpace(*target)) {
|
| + if (isolate()->heap()->InNewSpace(*object)) {
|
| Register temp = ToRegister(instr->temp());
|
| - Handle<Cell> cell = isolate()->factory()->NewCell(target);
|
| + Handle<Cell> cell = isolate()->factory()->NewCell(object);
|
| __ Mov(temp, Operand(Handle<Object>(cell)));
|
| __ Ldr(temp, FieldMemOperand(temp, Cell::kValueOffset));
|
| __ Cmp(reg, temp);
|
| } else {
|
| - __ Cmp(reg, Operand(target));
|
| + __ Cmp(reg, Operand(object));
|
| }
|
| DeoptimizeIf(ne, instr->environment());
|
| }
|
| @@ -4689,8 +4689,9 @@ void LCodeGen::DoStackCheck(LStackCheck* instr) {
|
|
|
| PredictableCodeSizeScope predictable(masm_,
|
| Assembler::kCallSizeWithRelocation);
|
| - StackCheckStub stub;
|
| - CallCode(stub.GetCode(isolate()), RelocInfo::CODE_TARGET, instr);
|
| + CallCode(isolate()->builtins()->StackCheck(),
|
| + RelocInfo::CODE_TARGET,
|
| + instr);
|
| EnsureSpaceForLazyDeopt();
|
| last_lazy_deopt_pc_ = masm()->pc_offset();
|
|
|
|
|