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

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

Issue 2177273002: Make FastNewFunctionContextStub take slots parameter (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: rebased Created 4 years, 4 months 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/mips/interface-descriptors-mips.cc » ('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 namespace { 10 namespace {
(...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after
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 FunctionType*
83 FastNewFunctionContextDescriptor::BuildCallInterfaceDescriptorFunctionType(
84 Isolate* isolate, int parameter_count) {
85 Zone* zone = isolate->interface_descriptor_zone();
86 FunctionType* function =
87 Type::Function(AnyTagged(zone), Type::Undefined(), 2, zone)->AsFunction();
88 function->InitParameter(0, AnyTagged(zone));
89 function->InitParameter(1, UntaggedIntegral32(zone));
90 return function;
91 }
92
93 void FastNewFunctionContextDescriptor::InitializePlatformSpecific(
94 CallInterfaceDescriptorData* data) {
95 Register registers[] = {FunctionRegister(), SlotsRegister()};
96 data->InitializePlatformSpecific(arraysize(registers), registers);
97 }
98
82 FunctionType* LoadDescriptor::BuildCallInterfaceDescriptorFunctionType( 99 FunctionType* LoadDescriptor::BuildCallInterfaceDescriptorFunctionType(
83 Isolate* isolate, int parameter_count) { 100 Isolate* isolate, int parameter_count) {
84 Zone* zone = isolate->interface_descriptor_zone(); 101 Zone* zone = isolate->interface_descriptor_zone();
85 FunctionType* function = 102 FunctionType* function =
86 Type::Function(AnyTagged(zone), Type::Undefined(), kParameterCount, zone) 103 Type::Function(AnyTagged(zone), Type::Undefined(), kParameterCount, zone)
87 ->AsFunction(); 104 ->AsFunction();
88 function->InitParameter(kReceiver, AnyTagged(zone)); 105 function->InitParameter(kReceiver, AnyTagged(zone));
89 function->InitParameter(kName, AnyTagged(zone)); 106 function->InitParameter(kName, AnyTagged(zone));
90 function->InitParameter(kSlot, SmiType(zone)); 107 function->InitParameter(kSlot, SmiType(zone));
91 return function; 108 return function;
(...skipping 507 matching lines...) Expand 10 before | Expand all | Expand 10 after
599 ->AsFunction(); 616 ->AsFunction();
600 function->InitParameter(kAccumulator, AnyTagged(zone)); 617 function->InitParameter(kAccumulator, AnyTagged(zone));
601 function->InitParameter(kBytecodeOffset, UntaggedIntegral32(zone)); 618 function->InitParameter(kBytecodeOffset, UntaggedIntegral32(zone));
602 function->InitParameter(kBytecodeArray, AnyTagged(zone)); 619 function->InitParameter(kBytecodeArray, AnyTagged(zone));
603 function->InitParameter(kDispatchTable, AnyTagged(zone)); 620 function->InitParameter(kDispatchTable, AnyTagged(zone));
604 return function; 621 return function;
605 } 622 }
606 623
607 } // namespace internal 624 } // namespace internal
608 } // namespace v8 625 } // namespace v8
OLDNEW
« no previous file with comments | « src/interface-descriptors.h ('k') | src/mips/interface-descriptors-mips.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698