OLD | NEW |
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 435 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
446 Type::Function(AnyTagged(zone), Type::Undefined(), 5, zone)->AsFunction(); | 446 Type::Function(AnyTagged(zone), Type::Undefined(), 5, zone)->AsFunction(); |
447 function->InitParameter(0, Type::Receiver()); // JSFunction | 447 function->InitParameter(0, Type::Receiver()); // JSFunction |
448 function->InitParameter(1, AnyTagged(zone)); | 448 function->InitParameter(1, AnyTagged(zone)); |
449 function->InitParameter(2, UntaggedIntegral32(zone)); | 449 function->InitParameter(2, UntaggedIntegral32(zone)); |
450 function->InitParameter(3, AnyTagged(zone)); | 450 function->InitParameter(3, AnyTagged(zone)); |
451 function->InitParameter(4, AnyTagged(zone)); | 451 function->InitParameter(4, AnyTagged(zone)); |
452 return function; | 452 return function; |
453 } | 453 } |
454 | 454 |
455 FunctionType* | 455 FunctionType* |
456 ArrayConstructorDescriptor::BuildCallInterfaceDescriptorFunctionType( | 456 ArrayNArgumentsConstructorDescriptor::BuildCallInterfaceDescriptorFunctionType( |
457 Isolate* isolate, int paramater_count) { | 457 Isolate* isolate, int paramater_count) { |
458 Zone* zone = isolate->interface_descriptor_zone(); | 458 Zone* zone = isolate->interface_descriptor_zone(); |
459 FunctionType* function = | 459 FunctionType* function = |
460 Type::Function(AnyTagged(zone), Type::Undefined(), 3, zone)->AsFunction(); | 460 Type::Function(AnyTagged(zone), Type::Undefined(), 3, zone)->AsFunction(); |
461 function->InitParameter(0, Type::Receiver()); // JSFunction | 461 function->InitParameter(0, Type::Receiver()); // JSFunction |
462 function->InitParameter(1, AnyTagged(zone)); | 462 function->InitParameter(1, AnyTagged(zone)); // Allocation site or undefined |
463 function->InitParameter(2, UntaggedIntegral32(zone)); | 463 function->InitParameter(2, UntaggedIntegral32(zone)); // Arg count |
464 return function; | 464 return function; |
465 } | 465 } |
466 | 466 |
467 FunctionType* | |
468 InternalArrayConstructorDescriptor::BuildCallInterfaceDescriptorFunctionType( | |
469 Isolate* isolate, int paramater_count) { | |
470 Zone* zone = isolate->interface_descriptor_zone(); | |
471 FunctionType* function = | |
472 Type::Function(AnyTagged(zone), Type::Undefined(), 2, zone)->AsFunction(); | |
473 function->InitParameter(0, Type::Receiver()); // JSFunction | |
474 function->InitParameter(1, UntaggedIntegral32(zone)); | |
475 return function; | |
476 } | |
477 | |
478 FunctionType* | 467 FunctionType* |
479 ArgumentAdaptorDescriptor::BuildCallInterfaceDescriptorFunctionType( | 468 ArgumentAdaptorDescriptor::BuildCallInterfaceDescriptorFunctionType( |
480 Isolate* isolate, int paramater_count) { | 469 Isolate* isolate, int paramater_count) { |
481 Zone* zone = isolate->interface_descriptor_zone(); | 470 Zone* zone = isolate->interface_descriptor_zone(); |
482 FunctionType* function = | 471 FunctionType* function = |
483 Type::Function(AnyTagged(zone), Type::Undefined(), 4, zone)->AsFunction(); | 472 Type::Function(AnyTagged(zone), Type::Undefined(), 4, zone)->AsFunction(); |
484 function->InitParameter(0, Type::Receiver()); // JSFunction | 473 function->InitParameter(0, Type::Receiver()); // JSFunction |
485 function->InitParameter(1, AnyTagged(zone)); // the new target | 474 function->InitParameter(1, AnyTagged(zone)); // the new target |
486 function->InitParameter(2, UntaggedIntegral32(zone)); // actual #arguments | 475 function->InitParameter(2, UntaggedIntegral32(zone)); // actual #arguments |
487 function->InitParameter(3, UntaggedIntegral32(zone)); // expected #arguments | 476 function->InitParameter(3, UntaggedIntegral32(zone)); // expected #arguments |
(...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
538 Type::Function(AnyTagged(zone), Type::Undefined(), 4, zone)->AsFunction(); | 527 Type::Function(AnyTagged(zone), Type::Undefined(), 4, zone)->AsFunction(); |
539 function->InitParameter(kAccumulatorParameter, AnyTagged(zone)); | 528 function->InitParameter(kAccumulatorParameter, AnyTagged(zone)); |
540 function->InitParameter(kBytecodeOffsetParameter, UntaggedIntegral32(zone)); | 529 function->InitParameter(kBytecodeOffsetParameter, UntaggedIntegral32(zone)); |
541 function->InitParameter(kBytecodeArrayParameter, AnyTagged(zone)); | 530 function->InitParameter(kBytecodeArrayParameter, AnyTagged(zone)); |
542 function->InitParameter(kDispatchTableParameter, AnyTagged(zone)); | 531 function->InitParameter(kDispatchTableParameter, AnyTagged(zone)); |
543 return function; | 532 return function; |
544 } | 533 } |
545 | 534 |
546 } // namespace internal | 535 } // namespace internal |
547 } // namespace v8 | 536 } // namespace v8 |
OLD | NEW |