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/interface-descriptors.h" | 5 #include "src/interface-descriptors.h" |
6 | 6 |
7 namespace v8 { | 7 namespace v8 { |
8 namespace internal { | 8 namespace internal { |
9 | 9 |
10 namespace { | 10 namespace { |
(...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
72 } | 72 } |
73 return ""; | 73 return ""; |
74 } | 74 } |
75 | 75 |
76 | 76 |
77 void VoidDescriptor::InitializePlatformSpecific( | 77 void VoidDescriptor::InitializePlatformSpecific( |
78 CallInterfaceDescriptorData* data) { | 78 CallInterfaceDescriptorData* data) { |
79 data->InitializePlatformSpecific(0, nullptr); | 79 data->InitializePlatformSpecific(0, nullptr); |
80 } | 80 } |
81 | 81 |
| 82 void FastNewFunctionContextDescriptor::InitializePlatformSpecific( |
| 83 CallInterfaceDescriptorData* data) { |
| 84 Register registers[] = {FunctionRegister(), SlotsRegister()}; |
| 85 data->InitializePlatformSpecific(arraysize(registers), registers); |
| 86 } |
| 87 |
82 FunctionType* LoadDescriptor::BuildCallInterfaceDescriptorFunctionType( | 88 FunctionType* LoadDescriptor::BuildCallInterfaceDescriptorFunctionType( |
83 Isolate* isolate, int parameter_count) { | 89 Isolate* isolate, int parameter_count) { |
84 Zone* zone = isolate->interface_descriptor_zone(); | 90 Zone* zone = isolate->interface_descriptor_zone(); |
85 FunctionType* function = | 91 FunctionType* function = |
86 Type::Function(AnyTagged(zone), Type::Undefined(), 3, zone)->AsFunction(); | 92 Type::Function(AnyTagged(zone), Type::Undefined(), 3, zone)->AsFunction(); |
87 function->InitParameter(0, AnyTagged(zone)); | 93 function->InitParameter(0, AnyTagged(zone)); |
88 function->InitParameter(1, AnyTagged(zone)); | 94 function->InitParameter(1, AnyTagged(zone)); |
89 function->InitParameter(2, SmiType(zone)); | 95 function->InitParameter(2, SmiType(zone)); |
90 return function; | 96 return function; |
91 } | 97 } |
(...skipping 483 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
575 Type::Function(AnyTagged(zone), Type::Undefined(), 4, zone)->AsFunction(); | 581 Type::Function(AnyTagged(zone), Type::Undefined(), 4, zone)->AsFunction(); |
576 function->InitParameter(kAccumulatorParameter, AnyTagged(zone)); | 582 function->InitParameter(kAccumulatorParameter, AnyTagged(zone)); |
577 function->InitParameter(kBytecodeOffsetParameter, UntaggedIntegral32(zone)); | 583 function->InitParameter(kBytecodeOffsetParameter, UntaggedIntegral32(zone)); |
578 function->InitParameter(kBytecodeArrayParameter, AnyTagged(zone)); | 584 function->InitParameter(kBytecodeArrayParameter, AnyTagged(zone)); |
579 function->InitParameter(kDispatchTableParameter, AnyTagged(zone)); | 585 function->InitParameter(kDispatchTableParameter, AnyTagged(zone)); |
580 return function; | 586 return function; |
581 } | 587 } |
582 | 588 |
583 } // namespace internal | 589 } // namespace internal |
584 } // namespace v8 | 590 } // namespace v8 |
OLD | NEW |