| Index: src/ast.cc
|
| diff --git a/src/ast.cc b/src/ast.cc
|
| index 712bfd1b9d4569ae901ed6f19eea8fa73f9b9330..a6984ddb28ad6c037372435312fbd63203b9eec6 100644
|
| --- a/src/ast.cc
|
| +++ b/src/ast.cc
|
| @@ -128,7 +128,8 @@ Assignment::Assignment(Isolate* isolate,
|
| pos_(pos),
|
| binary_operation_(NULL),
|
| assignment_id_(GetNextId(isolate)),
|
| - is_monomorphic_(false) { }
|
| + is_monomorphic_(false),
|
| + store_mode_(STANDARD_STORE) { }
|
|
|
|
|
| Token::Value Assignment::binary_op() const {
|
| @@ -455,9 +456,11 @@ void Assignment::RecordTypeFeedback(TypeFeedbackOracle* oracle,
|
| } else if (is_monomorphic_) {
|
| // Record receiver type for monomorphic keyed stores.
|
| receiver_types_.Add(oracle->StoreMonomorphicReceiverType(id), zone);
|
| + store_mode_ = oracle->GetStoreMode(id);
|
| } else if (oracle->StoreIsPolymorphic(id)) {
|
| receiver_types_.Reserve(kMaxKeyedPolymorphism, zone);
|
| oracle->CollectKeyedReceiverTypes(id, &receiver_types_);
|
| + store_mode_ = oracle->GetStoreMode(id);
|
| }
|
| }
|
|
|
| @@ -475,6 +478,7 @@ void CountOperation::RecordTypeFeedback(TypeFeedbackOracle* oracle,
|
| receiver_types_.Reserve(kMaxKeyedPolymorphism, zone);
|
| oracle->CollectKeyedReceiverTypes(id, &receiver_types_);
|
| }
|
| + store_mode_ = oracle->GetStoreMode(id);
|
| }
|
|
|
|
|
|
|