Index: src/interpreter/interpreter.cc |
diff --git a/src/interpreter/interpreter.cc b/src/interpreter/interpreter.cc |
index 125c5d817c98a36a1c5be56f980ec9aed23791e4..10d063b601ee248427455634bc5bfa322f7aaee4 100644 |
--- a/src/interpreter/interpreter.cc |
+++ b/src/interpreter/interpreter.cc |
@@ -1081,9 +1081,10 @@ void Interpreter::DoCompareOpWithFeedback(Token::Value compare_op, |
__ Word32Equal(rhs_instance_type, __ Int32Constant(ODDBALL_TYPE)); |
__ GotoUnless(rhs_is_oddball, &rhs_is_not_oddball); |
- var_type_feedback.Bind( |
- __ Int32Constant(CompareOperationFeedback::kNumberOrOddball)); |
- __ Goto(&do_compare); |
+ var_type_feedback.Bind(__ Word32Or( |
+ var_type_feedback.value(), |
+ __ Int32Constant(CompareOperationFeedback::kNumberOrOddball))); |
+ __ Goto(&update_feedback); |
__ Bind(&rhs_is_not_oddball); |
{ |