OLD | NEW |
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 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/v8.h" | 5 #include "src/v8.h" |
6 | 6 |
7 #if V8_TARGET_ARCH_ARM | 7 #if V8_TARGET_ARCH_ARM |
8 | 8 |
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 4587 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4598 ExternalReference debug_is_active = | 4598 ExternalReference debug_is_active = |
4599 ExternalReference::debug_is_active_address(isolate()); | 4599 ExternalReference::debug_is_active_address(isolate()); |
4600 __ mov(ip, Operand(debug_is_active)); | 4600 __ mov(ip, Operand(debug_is_active)); |
4601 __ ldrb(r0, MemOperand(ip)); | 4601 __ ldrb(r0, MemOperand(ip)); |
4602 __ SmiTag(r0); | 4602 __ SmiTag(r0); |
4603 context()->Plug(r0); | 4603 context()->Plug(r0); |
4604 } | 4604 } |
4605 | 4605 |
4606 | 4606 |
4607 void FullCodeGenerator::VisitCallRuntime(CallRuntime* expr) { | 4607 void FullCodeGenerator::VisitCallRuntime(CallRuntime* expr) { |
4608 if (expr->function() != NULL && | 4608 InlineFunctionGenerator generator = FindInlineFunctionGenerator(expr); |
4609 expr->function()->intrinsic_type == Runtime::INLINE) { | 4609 if (generator != nullptr) { |
4610 Comment cmnt(masm_, "[ InlineRuntimeCall"); | 4610 Comment cmnt(masm_, "[ InlineRuntimeCall"); |
4611 EmitInlineRuntimeCall(expr); | 4611 EmitInlineRuntimeCall(expr, generator); |
4612 return; | 4612 return; |
4613 } | 4613 } |
4614 | 4614 |
4615 Comment cmnt(masm_, "[ CallRuntime"); | 4615 Comment cmnt(masm_, "[ CallRuntime"); |
4616 ZoneList<Expression*>* args = expr->arguments(); | 4616 ZoneList<Expression*>* args = expr->arguments(); |
4617 int arg_count = args->length(); | 4617 int arg_count = args->length(); |
4618 | 4618 |
4619 if (expr->is_jsruntime()) { | 4619 if (expr->is_jsruntime()) { |
4620 // Push the builtins object as the receiver. | 4620 // Push the builtins object as the receiver. |
4621 Register receiver = LoadDescriptor::ReceiverRegister(); | 4621 Register receiver = LoadDescriptor::ReceiverRegister(); |
(...skipping 902 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
5524 | 5524 |
5525 DCHECK(interrupt_address == | 5525 DCHECK(interrupt_address == |
5526 isolate->builtins()->OsrAfterStackCheck()->entry()); | 5526 isolate->builtins()->OsrAfterStackCheck()->entry()); |
5527 return OSR_AFTER_STACK_CHECK; | 5527 return OSR_AFTER_STACK_CHECK; |
5528 } | 5528 } |
5529 | 5529 |
5530 | 5530 |
5531 } } // namespace v8::internal | 5531 } } // namespace v8::internal |
5532 | 5532 |
5533 #endif // V8_TARGET_ARCH_ARM | 5533 #endif // V8_TARGET_ARCH_ARM |
OLD | NEW |