Commit 4b27480e authored by epertoso's avatar epertoso Committed by Commit bot

[interpreter] Specify and type the parameters of the Interpreter*Descriptors.

BUG=

Review-Url: https://codereview.chromium.org/2380523005
Cr-Commit-Position: refs/heads/master@{#39867}
parent dc1c71c0
...@@ -424,5 +424,44 @@ void InterpreterDispatchDescriptor::InitializePlatformIndependent( ...@@ -424,5 +424,44 @@ void InterpreterDispatchDescriptor::InitializePlatformIndependent(
machine_types); machine_types);
} }
void InterpreterPushArgsAndCallDescriptor::InitializePlatformIndependent(
CallInterfaceDescriptorData* data) {
// kNumberOfArguments, kFirstArgument, kFunction
MachineType machine_types[] = {MachineType::Int32(), MachineType::Pointer(),
MachineType::AnyTagged()};
data->InitializePlatformIndependent(arraysize(machine_types), 0,
machine_types);
}
void InterpreterPushArgsAndConstructDescriptor::InitializePlatformIndependent(
CallInterfaceDescriptorData* data) {
// kNumberOfArguments, kNewTarget, kConstructor, kFeedbackElement,
// kFirstArgument
MachineType machine_types[] = {
MachineType::Int32(), MachineType::AnyTagged(), MachineType::AnyTagged(),
MachineType::AnyTagged(), MachineType::Pointer()};
data->InitializePlatformIndependent(arraysize(machine_types), 0,
machine_types);
}
void InterpreterPushArgsAndConstructArrayDescriptor::
InitializePlatformIndependent(CallInterfaceDescriptorData* data) {
// kNumberOfArguments, kFunction, kFeedbackElement, kFirstArgument
MachineType machine_types[] = {MachineType::Int32(), MachineType::AnyTagged(),
MachineType::AnyTagged(),
MachineType::Pointer()};
data->InitializePlatformIndependent(arraysize(machine_types), 0,
machine_types);
}
void InterpreterCEntryDescriptor::InitializePlatformIndependent(
CallInterfaceDescriptorData* data) {
// kNumberOfArguments, kFirstArgument, kFunctionEntry
MachineType machine_types[] = {MachineType::Int32(), MachineType::Pointer(),
MachineType::Pointer()};
data->InitializePlatformIndependent(arraysize(machine_types), 0,
machine_types);
}
} // namespace internal } // namespace internal
} // namespace v8 } // namespace v8
...@@ -764,28 +764,35 @@ class InterpreterDispatchDescriptor : public CallInterfaceDescriptor { ...@@ -764,28 +764,35 @@ class InterpreterDispatchDescriptor : public CallInterfaceDescriptor {
class InterpreterPushArgsAndCallDescriptor : public CallInterfaceDescriptor { class InterpreterPushArgsAndCallDescriptor : public CallInterfaceDescriptor {
public: public:
DECLARE_DESCRIPTOR(InterpreterPushArgsAndCallDescriptor, DEFINE_PARAMETERS(kNumberOfArguments, kFirstArgument, kFunction)
CallInterfaceDescriptor) DECLARE_DESCRIPTOR_WITH_CUSTOM_FUNCTION_TYPE(
InterpreterPushArgsAndCallDescriptor, CallInterfaceDescriptor)
}; };
class InterpreterPushArgsAndConstructDescriptor class InterpreterPushArgsAndConstructDescriptor
: public CallInterfaceDescriptor { : public CallInterfaceDescriptor {
public: public:
DECLARE_DESCRIPTOR(InterpreterPushArgsAndConstructDescriptor, DEFINE_PARAMETERS(kNumberOfArguments, kNewTarget, kConstructor,
CallInterfaceDescriptor) kFeedbackElement, kFirstArgument)
DECLARE_DESCRIPTOR_WITH_CUSTOM_FUNCTION_TYPE(
InterpreterPushArgsAndConstructDescriptor, CallInterfaceDescriptor)
}; };
class InterpreterPushArgsAndConstructArrayDescriptor class InterpreterPushArgsAndConstructArrayDescriptor
: public CallInterfaceDescriptor { : public CallInterfaceDescriptor {
public: public:
DECLARE_DESCRIPTOR(InterpreterPushArgsAndConstructArrayDescriptor, DEFINE_PARAMETERS(kNumberOfArguments, kFunction, kFeedbackElement,
CallInterfaceDescriptor) kFirstArgument)
DECLARE_DESCRIPTOR_WITH_CUSTOM_FUNCTION_TYPE(
InterpreterPushArgsAndConstructArrayDescriptor, CallInterfaceDescriptor)
}; };
class InterpreterCEntryDescriptor : public CallInterfaceDescriptor { class InterpreterCEntryDescriptor : public CallInterfaceDescriptor {
public: public:
DECLARE_DESCRIPTOR(InterpreterCEntryDescriptor, CallInterfaceDescriptor) DEFINE_PARAMETERS(kNumberOfArguments, kFirstArgument, kFunctionEntry)
DECLARE_DESCRIPTOR_WITH_CUSTOM_FUNCTION_TYPE(InterpreterCEntryDescriptor,
CallInterfaceDescriptor)
}; };
class ResumeGeneratorDescriptor final : public CallInterfaceDescriptor { class ResumeGeneratorDescriptor final : public CallInterfaceDescriptor {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment