| 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 "src/assembler.h" | 8 #include "src/assembler.h" |
| 9 #include "src/macro-assembler.h" | 9 #include "src/macro-assembler.h" |
| 10 | 10 |
| (...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 72 V(ApiAccessor) \ | 72 V(ApiAccessor) \ |
| 73 V(ApiGetter) \ | 73 V(ApiGetter) \ |
| 74 V(LoadGlobalViaContext) \ | 74 V(LoadGlobalViaContext) \ |
| 75 V(StoreGlobalViaContext) \ | 75 V(StoreGlobalViaContext) \ |
| 76 V(MathPowTagged) \ | 76 V(MathPowTagged) \ |
| 77 V(MathPowInteger) \ | 77 V(MathPowInteger) \ |
| 78 V(ContextOnly) \ | 78 V(ContextOnly) \ |
| 79 V(GrowArrayElements) \ | 79 V(GrowArrayElements) \ |
| 80 V(InterpreterDispatch) \ | 80 V(InterpreterDispatch) \ |
| 81 V(InterpreterPushArgsAndCall) \ | 81 V(InterpreterPushArgsAndCall) \ |
| 82 V(InterpreterPushArgsAndCallIC) \ |
| 82 V(InterpreterPushArgsAndConstruct) \ | 83 V(InterpreterPushArgsAndConstruct) \ |
| 83 V(InterpreterCEntry) | 84 V(InterpreterCEntry) |
| 84 | 85 |
| 85 class CallInterfaceDescriptorData { | 86 class CallInterfaceDescriptorData { |
| 86 public: | 87 public: |
| 87 CallInterfaceDescriptorData() | 88 CallInterfaceDescriptorData() |
| 88 : register_param_count_(-1), function_type_(nullptr) {} | 89 : register_param_count_(-1), function_type_(nullptr) {} |
| 89 | 90 |
| 90 // A copy of the passed in registers and param_representations is made | 91 // A copy of the passed in registers and param_representations is made |
| 91 // and owned by the CallInterfaceDescriptorData. | 92 // and owned by the CallInterfaceDescriptorData. |
| (...skipping 665 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 757 CallInterfaceDescriptor) | 758 CallInterfaceDescriptor) |
| 758 | 759 |
| 759 static const int kAccumulatorParameter = 0; | 760 static const int kAccumulatorParameter = 0; |
| 760 static const int kRegisterFileParameter = 1; | 761 static const int kRegisterFileParameter = 1; |
| 761 static const int kBytecodeOffsetParameter = 2; | 762 static const int kBytecodeOffsetParameter = 2; |
| 762 static const int kBytecodeArrayParameter = 3; | 763 static const int kBytecodeArrayParameter = 3; |
| 763 static const int kDispatchTableParameter = 4; | 764 static const int kDispatchTableParameter = 4; |
| 764 static const int kContextParameter = 5; | 765 static const int kContextParameter = 5; |
| 765 }; | 766 }; |
| 766 | 767 |
| 768 class InterpreterPushArgsAndCallICDescriptor : public CallInterfaceDescriptor { |
| 769 public: |
| 770 DECLARE_DESCRIPTOR(InterpreterPushArgsAndCallICDescriptor, |
| 771 CallInterfaceDescriptor) |
| 772 }; |
| 773 |
| 767 class InterpreterPushArgsAndCallDescriptor : public CallInterfaceDescriptor { | 774 class InterpreterPushArgsAndCallDescriptor : public CallInterfaceDescriptor { |
| 768 public: | 775 public: |
| 769 DECLARE_DESCRIPTOR(InterpreterPushArgsAndCallDescriptor, | 776 DECLARE_DESCRIPTOR(InterpreterPushArgsAndCallDescriptor, |
| 770 CallInterfaceDescriptor) | 777 CallInterfaceDescriptor) |
| 771 }; | 778 }; |
| 772 | 779 |
| 773 | |
| 774 class InterpreterPushArgsAndConstructDescriptor | 780 class InterpreterPushArgsAndConstructDescriptor |
| 775 : public CallInterfaceDescriptor { | 781 : public CallInterfaceDescriptor { |
| 776 public: | 782 public: |
| 777 DECLARE_DESCRIPTOR(InterpreterPushArgsAndConstructDescriptor, | 783 DECLARE_DESCRIPTOR(InterpreterPushArgsAndConstructDescriptor, |
| 778 CallInterfaceDescriptor) | 784 CallInterfaceDescriptor) |
| 779 }; | 785 }; |
| 780 | 786 |
| 781 | 787 |
| 782 class InterpreterCEntryDescriptor : public CallInterfaceDescriptor { | 788 class InterpreterCEntryDescriptor : public CallInterfaceDescriptor { |
| 783 public: | 789 public: |
| (...skipping 13 matching lines...) Expand all Loading... |
| 797 } // namespace v8 | 803 } // namespace v8 |
| 798 | 804 |
| 799 | 805 |
| 800 #if V8_TARGET_ARCH_ARM64 | 806 #if V8_TARGET_ARCH_ARM64 |
| 801 #include "src/arm64/interface-descriptors-arm64.h" | 807 #include "src/arm64/interface-descriptors-arm64.h" |
| 802 #elif V8_TARGET_ARCH_ARM | 808 #elif V8_TARGET_ARCH_ARM |
| 803 #include "src/arm/interface-descriptors-arm.h" | 809 #include "src/arm/interface-descriptors-arm.h" |
| 804 #endif | 810 #endif |
| 805 | 811 |
| 806 #endif // V8_CALL_INTERFACE_DESCRIPTOR_H_ | 812 #endif // V8_CALL_INTERFACE_DESCRIPTOR_H_ |
| OLD | NEW |