Index: src/type-info.cc |
=================================================================== |
--- src/type-info.cc (revision 6011) |
+++ src/type-info.cc (working copy) |
@@ -142,6 +142,9 @@ |
CompareIC::State state = static_cast<CompareIC::State>(code->compare_state()); |
switch (state) { |
case CompareIC::UNINITIALIZED: |
+ // Uninitialized means never executed. |
+ // TODO(fschneider): Introduce a separate value for never-executed ICs. |
+ return unknown; |
case CompareIC::SMIS: |
return TypeInfo::Smi(); |
case CompareIC::HEAP_NUMBERS: |
@@ -184,6 +187,9 @@ |
switch (type) { |
case TRBinaryOpIC::UNINITIALIZED: |
+ // Uninitialized means never executed. |
+ // TODO(fschneider): Introduce a separate value for never-executed ICs |
+ return unknown; |
case TRBinaryOpIC::SMI: |
switch (result_type) { |
case TRBinaryOpIC::UNINITIALIZED: |
@@ -224,6 +230,9 @@ |
CompareIC::State state = static_cast<CompareIC::State>(code->compare_state()); |
switch (state) { |
case CompareIC::UNINITIALIZED: |
+ // Uninitialized means never executed. |
+ // TODO(fschneider): Introduce a separate value for never-executed ICs. |
+ return unknown; |
case CompareIC::SMIS: |
return TypeInfo::Smi(); |
case CompareIC::HEAP_NUMBERS: |