Index: src/compiler/js-operator.h |
diff --git a/src/compiler/js-operator.h b/src/compiler/js-operator.h |
index e9545c9592484ad9c92a1a0a63a816fc7b1c9ffd..40c5f7d01596a4d10b2bf8ccefaed0b5927be326 100644 |
--- a/src/compiler/js-operator.h |
+++ b/src/compiler/js-operator.h |
@@ -223,10 +223,15 @@ class LoadNamedParameters final { |
public: |
LoadNamedParameters(const Unique<Name>& name, |
const ResolvedFeedbackSlot& feedback, |
+ LanguageMode language_mode, |
ContextualMode contextual_mode) |
- : name_(name), feedback_(feedback), contextual_mode_(contextual_mode) {} |
+ : name_(name), |
+ feedback_(feedback), |
+ language_mode_(language_mode), |
+ contextual_mode_(contextual_mode) {} |
const Unique<Name>& name() const { return name_; } |
+ LanguageMode language_mode() const { return language_mode_; } |
ContextualMode contextual_mode() const { return contextual_mode_; } |
const ResolvedFeedbackSlot& feedback() const { return feedback_; } |
@@ -234,6 +239,7 @@ class LoadNamedParameters final { |
private: |
const Unique<Name> name_; |
const ResolvedFeedbackSlot feedback_; |
+ const LanguageMode language_mode_; |
const ContextualMode contextual_mode_; |
}; |
@@ -251,13 +257,17 @@ const LoadNamedParameters& LoadNamedParametersOf(const Operator* op); |
// used as a parameter by JSLoadProperty operators. |
class LoadPropertyParameters final { |
public: |
- explicit LoadPropertyParameters(const ResolvedFeedbackSlot& feedback) |
- : feedback_(feedback) {} |
+ explicit LoadPropertyParameters(const ResolvedFeedbackSlot& feedback, |
+ LanguageMode language_mode) |
+ : feedback_(feedback), language_mode_(language_mode) {} |
const ResolvedFeedbackSlot& feedback() const { return feedback_; } |
+ LanguageMode language_mode() const { return language_mode_; } |
+ |
private: |
const ResolvedFeedbackSlot feedback_; |
+ const LanguageMode language_mode_; |
}; |
bool operator==(LoadPropertyParameters const&, LoadPropertyParameters const&); |
@@ -368,9 +378,11 @@ class JSOperatorBuilder final : public ZoneObject { |
const Operator* CallConstruct(int arguments); |
- const Operator* LoadProperty(const ResolvedFeedbackSlot& feedback); |
+ const Operator* LoadProperty(const ResolvedFeedbackSlot& feedback, |
+ LanguageMode language_mode); |
const Operator* LoadNamed(const Unique<Name>& name, |
const ResolvedFeedbackSlot& feedback, |
+ LanguageMode language_mode, |
ContextualMode contextual_mode = NOT_CONTEXTUAL); |
const Operator* StoreProperty(LanguageMode language_mode); |