Index: src/type-feedback-vector.cc |
diff --git a/src/type-feedback-vector.cc b/src/type-feedback-vector.cc |
index 698f2a6d17380d6e0771c5194e2259819b864542..9e60fcffa768559697acabea14bc8cfe29c602b4 100644 |
--- a/src/type-feedback-vector.cc |
+++ b/src/type-feedback-vector.cc |
@@ -15,8 +15,13 @@ namespace internal { |
static bool IsPropertyNameFeedback(Object* feedback) { |
- return feedback->IsString() || |
- (feedback->IsSymbol() && !Symbol::cast(feedback)->is_private()); |
+ if (feedback->IsString()) return true; |
+ if (!feedback->IsSymbol()) return false; |
+ Symbol* symbol = Symbol::cast(feedback); |
+ Heap* heap = symbol->GetHeap(); |
+ return symbol != heap->uninitialized_symbol() && |
+ symbol != heap->premonomorphic_symbol() && |
+ symbol != heap->megamorphic_symbol(); |
} |