OLD | NEW |
---|---|
1 // Copyright 2014 the V8 project authors. All rights reserved. | 1 // Copyright 2014 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 #ifndef V8_CALL_INTERFACE_DESCRIPTOR_H_ | 5 #ifndef V8_CALL_INTERFACE_DESCRIPTOR_H_ |
6 #define V8_CALL_INTERFACE_DESCRIPTOR_H_ | 6 #define V8_CALL_INTERFACE_DESCRIPTOR_H_ |
7 | 7 |
8 #include <memory> | 8 #include <memory> |
9 | 9 |
10 #include "src/assembler.h" | 10 #include "src/assembler.h" |
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
50 V(ConstructStub) \ | 50 V(ConstructStub) \ |
51 V(ConstructTrampoline) \ | 51 V(ConstructTrampoline) \ |
52 V(RegExpExec) \ | 52 V(RegExpExec) \ |
53 V(RegExpPrototypeExecSlow) \ | 53 V(RegExpPrototypeExecSlow) \ |
54 V(RegExpReplace) \ | 54 V(RegExpReplace) \ |
55 V(RegExpSplit) \ | 55 V(RegExpSplit) \ |
56 V(CopyFastSmiOrObjectElements) \ | 56 V(CopyFastSmiOrObjectElements) \ |
57 V(TransitionElementsKind) \ | 57 V(TransitionElementsKind) \ |
58 V(AllocateHeapNumber) \ | 58 V(AllocateHeapNumber) \ |
59 V(Builtin) \ | 59 V(Builtin) \ |
60 V(ArrayFilter) \ | |
60 V(ArrayConstructor) \ | 61 V(ArrayConstructor) \ |
61 V(IteratingArrayBuiltin) \ | 62 V(IteratingArrayBuiltin) \ |
62 V(IteratingArrayBuiltinLoopContinuation) \ | 63 V(IteratingArrayBuiltinLoopContinuation) \ |
63 V(ArrayNoArgumentConstructor) \ | 64 V(ArrayNoArgumentConstructor) \ |
64 V(ArraySingleArgumentConstructor) \ | 65 V(ArraySingleArgumentConstructor) \ |
65 V(ArrayNArgumentsConstructor) \ | 66 V(ArrayNArgumentsConstructor) \ |
66 V(Compare) \ | 67 V(Compare) \ |
67 V(BinaryOp) \ | 68 V(BinaryOp) \ |
68 V(BinaryOpWithAllocationSite) \ | 69 V(BinaryOpWithAllocationSite) \ |
69 V(BinaryOpWithVector) \ | 70 V(BinaryOpWithVector) \ |
(...skipping 647 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
717 }; | 718 }; |
718 | 719 |
719 class IteratingArrayBuiltinLoopContinuationDescriptor | 720 class IteratingArrayBuiltinLoopContinuationDescriptor |
720 : public BuiltinDescriptor { | 721 : public BuiltinDescriptor { |
721 public: | 722 public: |
722 DEFINE_BUILTIN_PARAMETERS(kCallback, kThisArg, kArray, kObject, kInitialK, | 723 DEFINE_BUILTIN_PARAMETERS(kCallback, kThisArg, kArray, kObject, kInitialK, |
723 kLength) | 724 kLength) |
724 DECLARE_BUILTIN_DESCRIPTOR(IteratingArrayBuiltinLoopContinuationDescriptor) | 725 DECLARE_BUILTIN_DESCRIPTOR(IteratingArrayBuiltinLoopContinuationDescriptor) |
725 }; | 726 }; |
726 | 727 |
728 // TODO(mvstanton): It's the same as ForEach and some other array descriptors. | |
729 // Sharing is probably better. | |
730 class ArrayFilterDescriptor : public BuiltinDescriptor { | |
danno
2017/03/20 16:58:38
I don't think you need this at all anymore....
mvstanton
2017/03/20 22:08:31
Done.
| |
731 public: | |
732 DEFINE_BUILTIN_PARAMETERS(kCallback, kThisArg) | |
733 DECLARE_BUILTIN_DESCRIPTOR(ArrayFilterDescriptor) | |
734 }; | |
735 | |
727 class ArrayConstructorDescriptor : public CallInterfaceDescriptor { | 736 class ArrayConstructorDescriptor : public CallInterfaceDescriptor { |
728 public: | 737 public: |
729 DEFINE_PARAMETERS(kTarget, kNewTarget, kActualArgumentsCount, kAllocationSite) | 738 DEFINE_PARAMETERS(kTarget, kNewTarget, kActualArgumentsCount, kAllocationSite) |
730 DECLARE_DESCRIPTOR_WITH_CUSTOM_FUNCTION_TYPE(ArrayConstructorDescriptor, | 739 DECLARE_DESCRIPTOR_WITH_CUSTOM_FUNCTION_TYPE(ArrayConstructorDescriptor, |
731 CallInterfaceDescriptor) | 740 CallInterfaceDescriptor) |
732 }; | 741 }; |
733 | 742 |
734 class ArrayNoArgumentConstructorDescriptor : public CallInterfaceDescriptor { | 743 class ArrayNoArgumentConstructorDescriptor : public CallInterfaceDescriptor { |
735 public: | 744 public: |
736 DEFINE_PARAMETERS(kFunction, kAllocationSite, kActualArgumentsCount, | 745 DEFINE_PARAMETERS(kFunction, kAllocationSite, kActualArgumentsCount, |
(...skipping 260 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
997 } // namespace v8 | 1006 } // namespace v8 |
998 | 1007 |
999 | 1008 |
1000 #if V8_TARGET_ARCH_ARM64 | 1009 #if V8_TARGET_ARCH_ARM64 |
1001 #include "src/arm64/interface-descriptors-arm64.h" | 1010 #include "src/arm64/interface-descriptors-arm64.h" |
1002 #elif V8_TARGET_ARCH_ARM | 1011 #elif V8_TARGET_ARCH_ARM |
1003 #include "src/arm/interface-descriptors-arm.h" | 1012 #include "src/arm/interface-descriptors-arm.h" |
1004 #endif | 1013 #endif |
1005 | 1014 |
1006 #endif // V8_CALL_INTERFACE_DESCRIPTOR_H_ | 1015 #endif // V8_CALL_INTERFACE_DESCRIPTOR_H_ |
OLD | NEW |