Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(3)

Side by Side Diff: src/interface-descriptors.cc

Issue 2510653002: [ic] Pass name to LoadGlobalIC again. (Closed)
Patch Set: Release fix Created 4 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « src/interface-descriptors.h ('k') | src/interpreter/bytecode-array-builder.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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
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
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
OLDNEW
« no previous file with comments | « src/interface-descriptors.h ('k') | src/interpreter/bytecode-array-builder.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698