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/v8.h" | 5 #include "src/v8.h" |
6 | 6 |
7 #if V8_TARGET_ARCH_X64 | 7 #if V8_TARGET_ARCH_X64 |
8 | 8 |
9 #include "src/bootstrapper.h" | 9 #include "src/bootstrapper.h" |
10 #include "src/code-stubs.h" | 10 #include "src/code-stubs.h" |
(...skipping 14 matching lines...) Expand all Loading... |
25 Isolate* isolate, CodeStubDescriptor* descriptor, | 25 Isolate* isolate, CodeStubDescriptor* descriptor, |
26 int constant_stack_parameter_count) { | 26 int constant_stack_parameter_count) { |
27 Address deopt_handler = Runtime::FunctionForId( | 27 Address deopt_handler = Runtime::FunctionForId( |
28 Runtime::kArrayConstructor)->entry; | 28 Runtime::kArrayConstructor)->entry; |
29 | 29 |
30 if (constant_stack_parameter_count == 0) { | 30 if (constant_stack_parameter_count == 0) { |
31 descriptor->Initialize(deopt_handler, constant_stack_parameter_count, | 31 descriptor->Initialize(deopt_handler, constant_stack_parameter_count, |
32 JS_FUNCTION_STUB_MODE); | 32 JS_FUNCTION_STUB_MODE); |
33 } else { | 33 } else { |
34 descriptor->Initialize(rax, deopt_handler, constant_stack_parameter_count, | 34 descriptor->Initialize(rax, deopt_handler, constant_stack_parameter_count, |
35 JS_FUNCTION_STUB_MODE, PASS_ARGUMENTS); | 35 JS_FUNCTION_STUB_MODE); |
36 } | 36 } |
37 } | 37 } |
38 | 38 |
39 | 39 |
40 static void InitializeInternalArrayConstructorDescriptor( | 40 static void InitializeInternalArrayConstructorDescriptor( |
41 Isolate* isolate, CodeStubDescriptor* descriptor, | 41 Isolate* isolate, CodeStubDescriptor* descriptor, |
42 int constant_stack_parameter_count) { | 42 int constant_stack_parameter_count) { |
43 Address deopt_handler = Runtime::FunctionForId( | 43 Address deopt_handler = Runtime::FunctionForId( |
44 Runtime::kInternalArrayConstructor)->entry; | 44 Runtime::kInternalArrayConstructor)->entry; |
45 | 45 |
46 if (constant_stack_parameter_count == 0) { | 46 if (constant_stack_parameter_count == 0) { |
47 descriptor->Initialize(deopt_handler, constant_stack_parameter_count, | 47 descriptor->Initialize(deopt_handler, constant_stack_parameter_count, |
48 JS_FUNCTION_STUB_MODE); | 48 JS_FUNCTION_STUB_MODE); |
49 } else { | 49 } else { |
50 descriptor->Initialize(rax, deopt_handler, constant_stack_parameter_count, | 50 descriptor->Initialize(rax, deopt_handler, constant_stack_parameter_count, |
51 JS_FUNCTION_STUB_MODE, PASS_ARGUMENTS); | 51 JS_FUNCTION_STUB_MODE); |
52 } | 52 } |
53 } | 53 } |
54 | 54 |
55 | 55 |
56 void ArrayNoArgumentConstructorStub::InitializeDescriptor( | 56 void ArrayNoArgumentConstructorStub::InitializeDescriptor( |
57 CodeStubDescriptor* descriptor) { | 57 CodeStubDescriptor* descriptor) { |
58 InitializeArrayConstructorDescriptor(isolate(), descriptor, 0); | 58 InitializeArrayConstructorDescriptor(isolate(), descriptor, 0); |
59 } | 59 } |
60 | 60 |
61 | 61 |
(...skipping 5373 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
5435 kStackSpace, nullptr, return_value_operand, NULL); | 5435 kStackSpace, nullptr, return_value_operand, NULL); |
5436 } | 5436 } |
5437 | 5437 |
5438 | 5438 |
5439 #undef __ | 5439 #undef __ |
5440 | 5440 |
5441 } // namespace internal | 5441 } // namespace internal |
5442 } // namespace v8 | 5442 } // namespace v8 |
5443 | 5443 |
5444 #endif // V8_TARGET_ARCH_X64 | 5444 #endif // V8_TARGET_ARCH_X64 |
OLD | NEW |