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

Side by Side Diff: src/builtins/builtins-array.cc

Issue 2532483002: [stubs] Port FastFunctionBindStub to TF (Closed)
Patch Set: Review feedback Created 4 years 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/builtins/builtins.h ('k') | src/builtins/builtins-function.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 2016 the V8 project authors. All rights reserved. 1 // Copyright 2016 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/builtins/builtins.h" 5 #include "src/builtins/builtins.h"
6 #include "src/builtins/builtins-utils.h" 6 #include "src/builtins/builtins-utils.h"
7 7
8 #include "src/code-factory.h" 8 #include "src/code-factory.h"
9 #include "src/contexts.h" 9 #include "src/contexts.h"
10 #include "src/elements.h" 10 #include "src/elements.h"
(...skipping 172 matching lines...) Expand 10 before | Expand all | Expand 10 after
183 CodeStubAssembler assembler(state); 183 CodeStubAssembler assembler(state);
184 Variable arg_index(&assembler, MachineType::PointerRepresentation()); 184 Variable arg_index(&assembler, MachineType::PointerRepresentation());
185 Label default_label(&assembler, &arg_index); 185 Label default_label(&assembler, &arg_index);
186 Label smi_transition(&assembler); 186 Label smi_transition(&assembler);
187 Label object_push_pre(&assembler); 187 Label object_push_pre(&assembler);
188 Label object_push(&assembler, &arg_index); 188 Label object_push(&assembler, &arg_index);
189 Label double_push(&assembler, &arg_index); 189 Label double_push(&assembler, &arg_index);
190 Label double_transition(&assembler); 190 Label double_transition(&assembler);
191 Label runtime(&assembler, Label::kDeferred); 191 Label runtime(&assembler, Label::kDeferred);
192 192
193 Node* argc = assembler.Parameter(1); 193 Node* argc = assembler.Parameter(BuiltinDescriptor::kArgumentsCount);
194 Node* context = assembler.Parameter(2); 194 Node* context = assembler.Parameter(BuiltinDescriptor::kContext);
195 Node* new_target = assembler.Parameter(0); 195 Node* new_target = assembler.Parameter(BuiltinDescriptor::kNewTarget);
196 196
197 CodeStubArguments args(&assembler, argc); 197 CodeStubArguments args(&assembler, argc);
198 Node* receiver = args.GetReceiver(); 198 Node* receiver = args.GetReceiver();
199 Node* kind = nullptr; 199 Node* kind = nullptr;
200 200
201 Label fast(&assembler); 201 Label fast(&assembler);
202 { 202 {
203 assembler.BranchIfFastJSArray( 203 assembler.BranchIfFastJSArray(
204 receiver, context, CodeStubAssembler::FastJSArrayAccessMode::ANY_ACCESS, 204 receiver, context, CodeStubAssembler::FastJSArrayAccessMode::ANY_ACCESS,
205 &fast, &runtime); 205 &fast, &runtime);
(...skipping 2551 matching lines...) Expand 10 before | Expand all | Expand 10 after
2757 Runtime::kThrowIncompatibleMethodReceiver, context, 2757 Runtime::kThrowIncompatibleMethodReceiver, context,
2758 assembler.HeapConstant(assembler.factory()->NewStringFromAsciiChecked( 2758 assembler.HeapConstant(assembler.factory()->NewStringFromAsciiChecked(
2759 "Array Iterator.prototype.next", TENURED)), 2759 "Array Iterator.prototype.next", TENURED)),
2760 iterator); 2760 iterator);
2761 assembler.Return(result); 2761 assembler.Return(result);
2762 } 2762 }
2763 } 2763 }
2764 2764
2765 } // namespace internal 2765 } // namespace internal
2766 } // namespace v8 2766 } // namespace v8
OLDNEW
« no previous file with comments | « src/builtins/builtins.h ('k') | src/builtins/builtins-function.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698