Index: src/crankshaft/hydrogen-instructions.cc |
diff --git a/src/crankshaft/hydrogen-instructions.cc b/src/crankshaft/hydrogen-instructions.cc |
index 6036d3fb68c6e99f250c8a1c22da9fe9aeefa79b..adb9ea60c33a25351d93e784de2bae911c793ff0 100644 |
--- a/src/crankshaft/hydrogen-instructions.cc |
+++ b/src/crankshaft/hydrogen-instructions.cc |
@@ -3289,13 +3289,11 @@ bool HStoreKeyed::NeedsCanonicalization() { |
Representation from = HChange::cast(value())->from(); |
return from.IsTagged() || from.IsHeapObject(); |
} |
- case kLoadNamedField: |
- case kPhi: { |
- // Better safe than sorry... |
- return true; |
+ case kConstant: { |
+ return HConstant::cast(value())->DoubleValueAsBits() == kHoleNanInt64; |
} |
default: |
- return false; |
+ return !value()->IsBinaryOperation(); |
} |
} |