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 426 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
437 Zone* zone = isolate->interface_descriptor_zone(); | 437 Zone* zone = isolate->interface_descriptor_zone(); |
438 FunctionType* function = | 438 FunctionType* function = |
439 Type::Function(AnyTagged(zone), Type::Undefined(), 4, zone)->AsFunction(); | 439 Type::Function(AnyTagged(zone), Type::Undefined(), 4, zone)->AsFunction(); |
440 function->InitParameter(0, Type::Receiver()); // JSFunction | 440 function->InitParameter(0, Type::Receiver()); // JSFunction |
441 function->InitParameter(1, AnyTagged(zone)); | 441 function->InitParameter(1, AnyTagged(zone)); |
442 function->InitParameter(2, UntaggedIntegral32(zone)); | 442 function->InitParameter(2, UntaggedIntegral32(zone)); |
443 function->InitParameter(3, AnyTagged(zone)); | 443 function->InitParameter(3, AnyTagged(zone)); |
444 return function; | 444 return function; |
445 } | 445 } |
446 | 446 |
| 447 FunctionType* ArraySingleArgumentConstructorDescriptor:: |
| 448 BuildCallInterfaceDescriptorFunctionType(Isolate* isolate, |
| 449 int paramater_count) { |
| 450 Zone* zone = isolate->interface_descriptor_zone(); |
| 451 FunctionType* function = |
| 452 Type::Function(AnyTagged(zone), Type::Undefined(), 5, zone)->AsFunction(); |
| 453 function->InitParameter(0, Type::Receiver()); // JSFunction |
| 454 function->InitParameter(1, AnyTagged(zone)); |
| 455 function->InitParameter(2, UntaggedIntegral32(zone)); |
| 456 function->InitParameter(3, AnyTagged(zone)); |
| 457 function->InitParameter(4, AnyTagged(zone)); |
| 458 return function; |
| 459 } |
| 460 |
447 FunctionType* | 461 FunctionType* |
448 ArrayConstructorDescriptor::BuildCallInterfaceDescriptorFunctionType( | 462 ArrayConstructorDescriptor::BuildCallInterfaceDescriptorFunctionType( |
449 Isolate* isolate, int paramater_count) { | 463 Isolate* isolate, int paramater_count) { |
450 Zone* zone = isolate->interface_descriptor_zone(); | 464 Zone* zone = isolate->interface_descriptor_zone(); |
451 FunctionType* function = | 465 FunctionType* function = |
452 Type::Function(AnyTagged(zone), Type::Undefined(), 3, zone)->AsFunction(); | 466 Type::Function(AnyTagged(zone), Type::Undefined(), 3, zone)->AsFunction(); |
453 function->InitParameter(0, Type::Receiver()); // JSFunction | 467 function->InitParameter(0, Type::Receiver()); // JSFunction |
454 function->InitParameter(1, AnyTagged(zone)); | 468 function->InitParameter(1, AnyTagged(zone)); |
455 function->InitParameter(2, UntaggedIntegral32(zone)); | 469 function->InitParameter(2, UntaggedIntegral32(zone)); |
456 return function; | 470 return function; |
(...skipping 73 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
530 Type::Function(AnyTagged(zone), Type::Undefined(), 4, zone)->AsFunction(); | 544 Type::Function(AnyTagged(zone), Type::Undefined(), 4, zone)->AsFunction(); |
531 function->InitParameter(kAccumulatorParameter, AnyTagged(zone)); | 545 function->InitParameter(kAccumulatorParameter, AnyTagged(zone)); |
532 function->InitParameter(kBytecodeOffsetParameter, UntaggedIntegral32(zone)); | 546 function->InitParameter(kBytecodeOffsetParameter, UntaggedIntegral32(zone)); |
533 function->InitParameter(kBytecodeArrayParameter, AnyTagged(zone)); | 547 function->InitParameter(kBytecodeArrayParameter, AnyTagged(zone)); |
534 function->InitParameter(kDispatchTableParameter, AnyTagged(zone)); | 548 function->InitParameter(kDispatchTableParameter, AnyTagged(zone)); |
535 return function; | 549 return function; |
536 } | 550 } |
537 | 551 |
538 } // namespace internal | 552 } // namespace internal |
539 } // namespace v8 | 553 } // namespace v8 |
OLD | NEW |