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

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

Issue 2580533002: [stubs] Remove CSA::INTEGER_PARAMETERS in favor of CSA::INTPTR_PARAMETERS. (Closed)
Patch Set: Addressing comments 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-conversion.cc ('k') | src/builtins/builtins-internal.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-utils.h" 5 #include "src/builtins/builtins-utils.h"
6 #include "src/builtins/builtins.h" 6 #include "src/builtins/builtins.h"
7 #include "src/code-factory.h" 7 #include "src/code-factory.h"
8 #include "src/code-stub-assembler.h" 8 #include "src/code-stub-assembler.h"
9 #include "src/compiler.h" 9 #include "src/compiler.h"
10 #include "src/string-builder.h" 10 #include "src/string-builder.h"
(...skipping 353 matching lines...) Expand 10 before | Expand all | Expand 10 after
364 // Allocate the arguments array. 364 // Allocate the arguments array.
365 assembler.Comment("Allocate the arguments array"); 365 assembler.Comment("Allocate the arguments array");
366 Variable argument_array(&assembler, MachineRepresentation::kTagged); 366 Variable argument_array(&assembler, MachineRepresentation::kTagged);
367 Label empty_arguments(&assembler); 367 Label empty_arguments(&assembler);
368 Label arguments_done(&assembler, &argument_array); 368 Label arguments_done(&assembler, &argument_array);
369 assembler.GotoIf( 369 assembler.GotoIf(
370 assembler.Uint32LessThanOrEqual(argc, assembler.Int32Constant(1)), 370 assembler.Uint32LessThanOrEqual(argc, assembler.Int32Constant(1)),
371 &empty_arguments); 371 &empty_arguments);
372 Node* elements_length = assembler.ChangeUint32ToWord( 372 Node* elements_length = assembler.ChangeUint32ToWord(
373 assembler.Int32Sub(argc, assembler.Int32Constant(1))); 373 assembler.Int32Sub(argc, assembler.Int32Constant(1)));
374 Node* elements = assembler.AllocateFixedArray( 374 Node* elements = assembler.AllocateFixedArray(FAST_ELEMENTS, elements_length);
375 FAST_ELEMENTS, elements_length, CodeStubAssembler::INTPTR_PARAMETERS);
376 Variable index(&assembler, MachineType::PointerRepresentation()); 375 Variable index(&assembler, MachineType::PointerRepresentation());
377 index.Bind(assembler.IntPtrConstant(0)); 376 index.Bind(assembler.IntPtrConstant(0));
378 CodeStubAssembler::VariableList foreach_vars({&index}, assembler.zone()); 377 CodeStubAssembler::VariableList foreach_vars({&index}, assembler.zone());
379 args.ForEach(foreach_vars, 378 args.ForEach(foreach_vars,
380 [&assembler, elements, &index](compiler::Node* arg) { 379 [&assembler, elements, &index](compiler::Node* arg) {
381 assembler.StoreFixedArrayElement( 380 assembler.StoreFixedArrayElement(elements, index.value(), arg);
382 elements, index.value(), arg, UPDATE_WRITE_BARRIER, 0,
383 CodeStubAssembler::INTPTR_PARAMETERS);
384 assembler.Increment(index); 381 assembler.Increment(index);
385 }, 382 },
386 assembler.IntPtrConstant(1)); 383 assembler.IntPtrConstant(1));
387 argument_array.Bind(elements); 384 argument_array.Bind(elements);
388 assembler.Goto(&arguments_done); 385 assembler.Goto(&arguments_done);
389 386
390 assembler.Bind(&empty_arguments); 387 assembler.Bind(&empty_arguments);
391 argument_array.Bind(assembler.EmptyFixedArrayConstant()); 388 argument_array.Bind(assembler.EmptyFixedArrayConstant());
392 assembler.Goto(&arguments_done); 389 assembler.Goto(&arguments_done);
393 390
(...skipping 77 matching lines...) Expand 10 before | Expand all | Expand 10 after
471 468
472 Node* f = assembler.Parameter(0); 469 Node* f = assembler.Parameter(0);
473 Node* v = assembler.Parameter(1); 470 Node* v = assembler.Parameter(1);
474 Node* context = assembler.Parameter(4); 471 Node* context = assembler.Parameter(4);
475 Node* result = assembler.OrdinaryHasInstance(context, f, v); 472 Node* result = assembler.OrdinaryHasInstance(context, f, v);
476 assembler.Return(result); 473 assembler.Return(result);
477 } 474 }
478 475
479 } // namespace internal 476 } // namespace internal
480 } // namespace v8 477 } // namespace v8
OLDNEW
« no previous file with comments | « src/builtins/builtins-conversion.cc ('k') | src/builtins/builtins-internal.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698