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 5388 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
5399 } | 5399 } |
5400 } | 5400 } |
5401 | 5401 |
5402 | 5402 |
5403 void LCodeGen::DoThisFunction(LThisFunction* instr) { | 5403 void LCodeGen::DoThisFunction(LThisFunction* instr) { |
5404 Register result = ToRegister(instr->result()); | 5404 Register result = ToRegister(instr->result()); |
5405 __ Ldr(result, MemOperand(fp, JavaScriptFrameConstants::kFunctionOffset)); | 5405 __ Ldr(result, MemOperand(fp, JavaScriptFrameConstants::kFunctionOffset)); |
5406 } | 5406 } |
5407 | 5407 |
5408 | 5408 |
5409 void LCodeGen::DoToFastProperties(LToFastProperties* instr) { | |
5410 DCHECK(ToRegister(instr->value()).Is(x0)); | |
5411 DCHECK(ToRegister(instr->result()).Is(x0)); | |
5412 __ Push(x0); | |
5413 CallRuntime(Runtime::kToFastProperties, 1, instr); | |
5414 } | |
5415 | |
5416 | |
5417 void LCodeGen::DoTransitionElementsKind(LTransitionElementsKind* instr) { | 5409 void LCodeGen::DoTransitionElementsKind(LTransitionElementsKind* instr) { |
5418 Register object = ToRegister(instr->object()); | 5410 Register object = ToRegister(instr->object()); |
5419 | 5411 |
5420 Handle<Map> from_map = instr->original_map(); | 5412 Handle<Map> from_map = instr->original_map(); |
5421 Handle<Map> to_map = instr->transitioned_map(); | 5413 Handle<Map> to_map = instr->transitioned_map(); |
5422 ElementsKind from_kind = instr->from_kind(); | 5414 ElementsKind from_kind = instr->from_kind(); |
5423 ElementsKind to_kind = instr->to_kind(); | 5415 ElementsKind to_kind = instr->to_kind(); |
5424 | 5416 |
5425 Label not_applicable; | 5417 Label not_applicable; |
5426 | 5418 |
(...skipping 309 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
5736 | 5728 |
5737 | 5729 |
5738 void LCodeGen::DoStoreFrameContext(LStoreFrameContext* instr) { | 5730 void LCodeGen::DoStoreFrameContext(LStoreFrameContext* instr) { |
5739 Register context = ToRegister(instr->context()); | 5731 Register context = ToRegister(instr->context()); |
5740 __ Str(context, MemOperand(fp, StandardFrameConstants::kContextOffset)); | 5732 __ Str(context, MemOperand(fp, StandardFrameConstants::kContextOffset)); |
5741 } | 5733 } |
5742 | 5734 |
5743 | 5735 |
5744 } // namespace internal | 5736 } // namespace internal |
5745 } // namespace v8 | 5737 } // namespace v8 |
OLD | NEW |