| Index: src/compiler/js-operator.h
|
| diff --git a/src/compiler/js-operator.h b/src/compiler/js-operator.h
|
| index 3c55461f90eb5b2c20cbd7f62cd95956c2018474..a23192b0073b755f6db7248630065d205198ffa0 100644
|
| --- a/src/compiler/js-operator.h
|
| +++ b/src/compiler/js-operator.h
|
| @@ -80,6 +80,31 @@ std::ostream& operator<<(std::ostream&, CallConstructParameters const&);
|
|
|
| CallConstructParameters const& CallConstructParametersOf(Operator const*);
|
|
|
| +// Defines the arity for a JavaScript constructor call with a spread as the last
|
| +// parameters. This is used as a parameter by JSCallConstructWithSpread
|
| +// operators.
|
| +class CallConstructWithSpreadParameters final {
|
| + public:
|
| + explicit CallConstructWithSpreadParameters(uint32_t arity) : arity_(arity) {}
|
| +
|
| + uint32_t arity() const { return arity_; }
|
| +
|
| + private:
|
| + uint32_t const arity_;
|
| +};
|
| +
|
| +bool operator==(CallConstructWithSpreadParameters const&,
|
| + CallConstructWithSpreadParameters const&);
|
| +bool operator!=(CallConstructWithSpreadParameters const&,
|
| + CallConstructWithSpreadParameters const&);
|
| +
|
| +size_t hash_value(CallConstructWithSpreadParameters const&);
|
| +
|
| +std::ostream& operator<<(std::ostream&,
|
| + CallConstructWithSpreadParameters const&);
|
| +
|
| +CallConstructWithSpreadParameters const& CallConstructWithSpreadParametersOf(
|
| + Operator const*);
|
|
|
| // Defines the arity and the call flags for a JavaScript function call. This is
|
| // used as a parameter by JSCallFunction operators.
|
| @@ -478,6 +503,7 @@ class V8_EXPORT_PRIVATE JSOperatorBuilder final
|
| const Operator* CallRuntime(const Runtime::Function* function, size_t arity);
|
| const Operator* CallConstruct(uint32_t arity, float frequency,
|
| VectorSlotPair const& feedback);
|
| + const Operator* CallConstructWithSpread(uint32_t arity);
|
|
|
| const Operator* ConvertReceiver(ConvertReceiverMode convert_mode);
|
|
|
|
|