| OLD | NEW |
| 1 // Copyright 2013 the V8 project authors. All rights reserved. | 1 // Copyright 2013 the V8 project authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "src/crankshaft/arm64/lithium-codegen-arm64.h" | 5 #include "src/crankshaft/arm64/lithium-codegen-arm64.h" |
| 6 | 6 |
| 7 #include "src/arm64/frames-arm64.h" | 7 #include "src/arm64/frames-arm64.h" |
| 8 #include "src/base/bits.h" | 8 #include "src/base/bits.h" |
| 9 #include "src/code-factory.h" | 9 #include "src/code-factory.h" |
| 10 #include "src/code-stubs.h" | 10 #include "src/code-stubs.h" |
| (...skipping 1973 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1984 RecordPushedArgumentsDelta(instr->hydrogen()->argument_delta()); | 1984 RecordPushedArgumentsDelta(instr->hydrogen()->argument_delta()); |
| 1985 } | 1985 } |
| 1986 | 1986 |
| 1987 | 1987 |
| 1988 void LCodeGen::DoCallRuntime(LCallRuntime* instr) { | 1988 void LCodeGen::DoCallRuntime(LCallRuntime* instr) { |
| 1989 CallRuntime(instr->function(), instr->arity(), instr); | 1989 CallRuntime(instr->function(), instr->arity(), instr); |
| 1990 RecordPushedArgumentsDelta(instr->hydrogen()->argument_delta()); | 1990 RecordPushedArgumentsDelta(instr->hydrogen()->argument_delta()); |
| 1991 } | 1991 } |
| 1992 | 1992 |
| 1993 | 1993 |
| 1994 void LCodeGen::DoCallStub(LCallStub* instr) { | |
| 1995 DCHECK(ToRegister(instr->context()).is(cp)); | |
| 1996 DCHECK(ToRegister(instr->result()).is(x0)); | |
| 1997 switch (instr->hydrogen()->major_key()) { | |
| 1998 case CodeStub::RegExpExec: { | |
| 1999 RegExpExecStub stub(isolate()); | |
| 2000 CallCode(stub.GetCode(), RelocInfo::CODE_TARGET, instr); | |
| 2001 break; | |
| 2002 } | |
| 2003 case CodeStub::SubString: { | |
| 2004 SubStringStub stub(isolate()); | |
| 2005 CallCode(stub.GetCode(), RelocInfo::CODE_TARGET, instr); | |
| 2006 break; | |
| 2007 } | |
| 2008 default: | |
| 2009 UNREACHABLE(); | |
| 2010 } | |
| 2011 RecordPushedArgumentsDelta(instr->hydrogen()->argument_delta()); | |
| 2012 } | |
| 2013 | |
| 2014 | |
| 2015 void LCodeGen::DoUnknownOSRValue(LUnknownOSRValue* instr) { | 1994 void LCodeGen::DoUnknownOSRValue(LUnknownOSRValue* instr) { |
| 2016 GenerateOsrPrologue(); | 1995 GenerateOsrPrologue(); |
| 2017 } | 1996 } |
| 2018 | 1997 |
| 2019 | 1998 |
| 2020 void LCodeGen::DoDeferredInstanceMigration(LCheckMaps* instr, Register object) { | 1999 void LCodeGen::DoDeferredInstanceMigration(LCheckMaps* instr, Register object) { |
| 2021 Register temp = ToRegister(instr->temp()); | 2000 Register temp = ToRegister(instr->temp()); |
| 2022 { | 2001 { |
| 2023 PushSafepointRegistersScope scope(this); | 2002 PushSafepointRegistersScope scope(this); |
| 2024 __ Push(object); | 2003 __ Push(object); |
| (...skipping 3715 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 5740 Handle<ScopeInfo> scope_info = instr->scope_info(); | 5719 Handle<ScopeInfo> scope_info = instr->scope_info(); |
| 5741 __ Push(scope_info); | 5720 __ Push(scope_info); |
| 5742 __ Push(ToRegister(instr->function())); | 5721 __ Push(ToRegister(instr->function())); |
| 5743 CallRuntime(Runtime::kPushBlockContext, instr); | 5722 CallRuntime(Runtime::kPushBlockContext, instr); |
| 5744 RecordSafepoint(Safepoint::kNoLazyDeopt); | 5723 RecordSafepoint(Safepoint::kNoLazyDeopt); |
| 5745 } | 5724 } |
| 5746 | 5725 |
| 5747 | 5726 |
| 5748 } // namespace internal | 5727 } // namespace internal |
| 5749 } // namespace v8 | 5728 } // namespace v8 |
| OLD | NEW |