| OLD | NEW |
| 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 Loading... |
| 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 Loading... |
| 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 |
| OLD | NEW |