| Index: src/compiler/js-operator.h
|
| diff --git a/src/compiler/js-operator.h b/src/compiler/js-operator.h
|
| index 584e3c28e8cb95a34d755d68a828b49c1e8ca5e4..86f07ba93cfed42d828c6b8ed3ee535e180612e5 100644
|
| --- a/src/compiler/js-operator.h
|
| +++ b/src/compiler/js-operator.h
|
| @@ -268,6 +268,29 @@ std::ostream& operator<<(std::ostream& os,
|
| CreateFunctionContextParameters const& CreateFunctionContextParametersOf(
|
| Operator const*);
|
|
|
| +// Defines the feedback, i.e., vector and index, for storing a data property in
|
| +// an object literal. This is
|
| +// used as a parameter by the JSStoreDataPropertyInLiteral operator.
|
| +class DataPropertyParameters final {
|
| + public:
|
| + explicit DataPropertyParameters(VectorSlotPair const& feedback)
|
| + : feedback_(feedback) {}
|
| +
|
| + VectorSlotPair const& feedback() const { return feedback_; }
|
| +
|
| + private:
|
| + VectorSlotPair const feedback_;
|
| +};
|
| +
|
| +bool operator==(DataPropertyParameters const&, DataPropertyParameters const&);
|
| +bool operator!=(DataPropertyParameters const&, DataPropertyParameters const&);
|
| +
|
| +size_t hash_value(DataPropertyParameters const&);
|
| +
|
| +std::ostream& operator<<(std::ostream&, DataPropertyParameters const&);
|
| +
|
| +const DataPropertyParameters& DataPropertyParametersOf(const Operator* op);
|
| +
|
| // Defines the property of an object for a named access. This is
|
| // used as a parameter by the JSLoadNamed and JSStoreNamed operators.
|
| class NamedAccess final {
|
| @@ -542,7 +565,7 @@ class V8_EXPORT_PRIVATE JSOperatorBuilder final
|
| const Operator* StoreNamed(LanguageMode language_mode, Handle<Name> name,
|
| VectorSlotPair const& feedback);
|
|
|
| - const Operator* StoreDataPropertyInLiteral();
|
| + const Operator* StoreDataPropertyInLiteral(const VectorSlotPair& feedback);
|
|
|
| const Operator* DeleteProperty(LanguageMode language_mode);
|
|
|
|
|