| 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 #include "src/interface-descriptors.h" | 7 #include "src/interface-descriptors.h" |
| 8 | 8 |
| 9 namespace v8 { | 9 namespace v8 { |
| 10 namespace internal { | 10 namespace internal { |
| (...skipping 82 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 93 } | 93 } |
| 94 | 94 |
| 95 | 95 |
| 96 void StoreDescriptor::InitializePlatformSpecific( | 96 void StoreDescriptor::InitializePlatformSpecific( |
| 97 CallInterfaceDescriptorData* data) { | 97 CallInterfaceDescriptorData* data) { |
| 98 Register registers[] = {ReceiverRegister(), NameRegister(), ValueRegister()}; | 98 Register registers[] = {ReceiverRegister(), NameRegister(), ValueRegister()}; |
| 99 data->InitializePlatformSpecific(arraysize(registers), registers); | 99 data->InitializePlatformSpecific(arraysize(registers), registers); |
| 100 } | 100 } |
| 101 | 101 |
| 102 | 102 |
| 103 void StoreTransitionDescriptor::InitializePlatformSpecific( | 103 Type::FunctionType* |
| 104 CallInterfaceDescriptorData* data) { | 104 StoreTransitionDescriptor::BuildCallInterfaceDescriptorFunctionType( |
| 105 Register registers[] = {ReceiverRegister(), NameRegister(), ValueRegister(), | 105 Isolate* isolate, int paramater_count) { |
| 106 MapRegister()}; | 106 Type::FunctionType* function = Type::FunctionType::New( |
| 107 data->InitializePlatformSpecific(arraysize(registers), registers); | 107 AnyTagged(), Type::Undefined(), 4, isolate->interface_descriptor_zone()); |
| 108 function->InitParameter(0, AnyTagged()); // Receiver |
| 109 function->InitParameter(1, AnyTagged()); // Name |
| 110 function->InitParameter(2, AnyTagged()); // Value |
| 111 function->InitParameter(3, AnyTagged()); // Map |
| 112 return function; |
| 108 } | 113 } |
| 109 | 114 |
| 110 | 115 |
| 111 Type::FunctionType* | 116 Type::FunctionType* |
| 112 LoadGlobalViaContextDescriptor::BuildCallInterfaceDescriptorFunctionType( | 117 LoadGlobalViaContextDescriptor::BuildCallInterfaceDescriptorFunctionType( |
| 113 Isolate* isolate, int paramater_count) { | 118 Isolate* isolate, int paramater_count) { |
| 114 Type::FunctionType* function = Type::FunctionType::New( | 119 Type::FunctionType* function = Type::FunctionType::New( |
| 115 AnyTagged(), Type::Undefined(), 3, isolate->interface_descriptor_zone()); | 120 AnyTagged(), Type::Undefined(), 3, isolate->interface_descriptor_zone()); |
| 116 function->InitParameter(0, SmiType()); | 121 function->InitParameter(0, SmiType()); |
| 117 function->InitParameter(1, SmiType()); | 122 function->InitParameter(1, SmiType()); |
| 118 function->InitParameter(2, AnyTagged()); | 123 function->InitParameter(2, AnyTagged()); |
| 119 return function; | 124 return function; |
| 120 } | 125 } |
| 121 | 126 |
| 122 | 127 |
| 123 void LoadGlobalViaContextDescriptor::InitializePlatformSpecific( | 128 void LoadGlobalViaContextDescriptor::InitializePlatformSpecific( |
| 124 CallInterfaceDescriptorData* data) { | 129 CallInterfaceDescriptorData* data) { |
| 125 Register registers[] = {DepthRegister(), SlotRegister(), NameRegister()}; | 130 Register registers[] = {DepthRegister(), SlotRegister(), NameRegister()}; |
| 126 data->InitializePlatformSpecific(arraysize(registers), registers); | 131 data->InitializePlatformSpecific(arraysize(registers), registers); |
| 127 } | 132 } |
| 128 | 133 |
| 129 | 134 |
| 130 Type::FunctionType* | 135 Type::FunctionType* |
| 131 StoreGlobalViaContextDescriptor::BuildCallInterfaceDescriptorFunctionType( | 136 StoreGlobalViaContextDescriptor::BuildCallInterfaceDescriptorFunctionType( |
| 132 Isolate* isolate, int paramater_count) { | 137 Isolate* isolate, int paramater_count) { |
| 133 Type::FunctionType* function = Type::FunctionType::New( | 138 Type::FunctionType* function = Type::FunctionType::New( |
| 134 AnyTagged(), Type::Undefined(), 5, isolate->interface_descriptor_zone()); | 139 AnyTagged(), Type::Undefined(), 4, isolate->interface_descriptor_zone()); |
| 135 function->InitParameter(0, SmiType()); | 140 function->InitParameter(0, SmiType()); |
| 136 function->InitParameter(1, SmiType()); | 141 function->InitParameter(1, SmiType()); |
| 137 function->InitParameter(2, AnyTagged()); | 142 function->InitParameter(2, AnyTagged()); |
| 138 function->InitParameter(3, AnyTagged()); | 143 function->InitParameter(3, AnyTagged()); |
| 139 return function; | 144 return function; |
| 140 } | 145 } |
| 141 | 146 |
| 142 | 147 |
| 143 void StoreGlobalViaContextDescriptor::InitializePlatformSpecific( | 148 void StoreGlobalViaContextDescriptor::InitializePlatformSpecific( |
| 144 CallInterfaceDescriptorData* data) { | 149 CallInterfaceDescriptorData* data) { |
| (...skipping 266 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 411 AnyTagged(), Type::Undefined(), 5, isolate->interface_descriptor_zone()); | 416 AnyTagged(), Type::Undefined(), 5, isolate->interface_descriptor_zone()); |
| 412 function->InitParameter(0, Type::Receiver()); | 417 function->InitParameter(0, Type::Receiver()); |
| 413 function->InitParameter(1, SmiType()); | 418 function->InitParameter(1, SmiType()); |
| 414 function->InitParameter(2, AnyTagged()); | 419 function->InitParameter(2, AnyTagged()); |
| 415 function->InitParameter(3, AnyTagged()); | 420 function->InitParameter(3, AnyTagged()); |
| 416 function->InitParameter(4, AnyTagged()); | 421 function->InitParameter(4, AnyTagged()); |
| 417 return function; | 422 return function; |
| 418 } | 423 } |
| 419 } // namespace internal | 424 } // namespace internal |
| 420 } // namespace v8 | 425 } // namespace v8 |
| OLD | NEW |