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 | 10 |
(...skipping 74 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
85 } | 85 } |
86 | 86 |
87 void LoadDescriptor::InitializePlatformSpecific( | 87 void LoadDescriptor::InitializePlatformSpecific( |
88 CallInterfaceDescriptorData* data) { | 88 CallInterfaceDescriptorData* data) { |
89 Register registers[] = {ReceiverRegister(), NameRegister(), SlotRegister()}; | 89 Register registers[] = {ReceiverRegister(), NameRegister(), SlotRegister()}; |
90 data->InitializePlatformSpecific(arraysize(registers), registers); | 90 data->InitializePlatformSpecific(arraysize(registers), registers); |
91 } | 91 } |
92 | 92 |
93 void LoadGlobalDescriptor::InitializePlatformIndependent( | 93 void LoadGlobalDescriptor::InitializePlatformIndependent( |
94 CallInterfaceDescriptorData* data) { | 94 CallInterfaceDescriptorData* data) { |
95 // kSlot | 95 // kName, kSlot |
96 MachineType machine_types[] = {MachineType::TaggedSigned()}; | 96 MachineType machine_types[] = {MachineType::AnyTagged(), |
| 97 MachineType::TaggedSigned()}; |
97 data->InitializePlatformIndependent(arraysize(machine_types), 0, | 98 data->InitializePlatformIndependent(arraysize(machine_types), 0, |
98 machine_types); | 99 machine_types); |
99 } | 100 } |
100 | 101 |
101 void LoadGlobalDescriptor::InitializePlatformSpecific( | 102 void LoadGlobalDescriptor::InitializePlatformSpecific( |
102 CallInterfaceDescriptorData* data) { | 103 CallInterfaceDescriptorData* data) { |
103 Register registers[] = {LoadWithVectorDescriptor::SlotRegister()}; | 104 Register registers[] = {NameRegister(), SlotRegister()}; |
104 data->InitializePlatformSpecific(arraysize(registers), registers); | 105 data->InitializePlatformSpecific(arraysize(registers), registers); |
105 } | 106 } |
106 | 107 |
107 void LoadGlobalWithVectorDescriptor::InitializePlatformIndependent( | 108 void LoadGlobalWithVectorDescriptor::InitializePlatformIndependent( |
108 CallInterfaceDescriptorData* data) { | 109 CallInterfaceDescriptorData* data) { |
109 // kSlot, kVector | 110 // kName, kSlot, kVector |
110 MachineType machine_types[] = {MachineType::TaggedSigned(), | 111 MachineType machine_types[] = {MachineType::AnyTagged(), |
| 112 MachineType::TaggedSigned(), |
111 MachineType::AnyTagged()}; | 113 MachineType::AnyTagged()}; |
112 data->InitializePlatformIndependent(arraysize(machine_types), 0, | 114 data->InitializePlatformIndependent(arraysize(machine_types), 0, |
113 machine_types); | 115 machine_types); |
114 } | 116 } |
115 | 117 |
116 void LoadGlobalWithVectorDescriptor::InitializePlatformSpecific( | 118 void LoadGlobalWithVectorDescriptor::InitializePlatformSpecific( |
117 CallInterfaceDescriptorData* data) { | 119 CallInterfaceDescriptorData* data) { |
118 Register registers[] = {LoadWithVectorDescriptor::SlotRegister(), | 120 Register registers[] = {NameRegister(), SlotRegister(), VectorRegister()}; |
119 LoadWithVectorDescriptor::VectorRegister()}; | |
120 data->InitializePlatformSpecific(arraysize(registers), registers); | 121 data->InitializePlatformSpecific(arraysize(registers), registers); |
121 } | 122 } |
122 | 123 |
123 void StoreDescriptor::InitializePlatformIndependent( | 124 void StoreDescriptor::InitializePlatformIndependent( |
124 CallInterfaceDescriptorData* data) { | 125 CallInterfaceDescriptorData* data) { |
125 // kReceiver, kName, kValue, kSlot | 126 // kReceiver, kName, kValue, kSlot |
126 MachineType machine_types[] = { | 127 MachineType machine_types[] = { |
127 MachineType::AnyTagged(), MachineType::AnyTagged(), | 128 MachineType::AnyTagged(), MachineType::AnyTagged(), |
128 MachineType::AnyTagged(), MachineType::TaggedSigned()}; | 129 MachineType::AnyTagged(), MachineType::TaggedSigned()}; |
129 data->InitializePlatformIndependent(arraysize(machine_types), 0, | 130 data->InitializePlatformIndependent(arraysize(machine_types), 0, |
(...skipping 373 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
503 CallInterfaceDescriptorData* data) { | 504 CallInterfaceDescriptorData* data) { |
504 // kNumberOfArguments, kFirstArgument, kFunctionEntry | 505 // kNumberOfArguments, kFirstArgument, kFunctionEntry |
505 MachineType machine_types[] = {MachineType::Int32(), MachineType::Pointer(), | 506 MachineType machine_types[] = {MachineType::Int32(), MachineType::Pointer(), |
506 MachineType::Pointer()}; | 507 MachineType::Pointer()}; |
507 data->InitializePlatformIndependent(arraysize(machine_types), 0, | 508 data->InitializePlatformIndependent(arraysize(machine_types), 0, |
508 machine_types); | 509 machine_types); |
509 } | 510 } |
510 | 511 |
511 } // namespace internal | 512 } // namespace internal |
512 } // namespace v8 | 513 } // namespace v8 |
OLD | NEW |