Index: src/interpreter/bytecode-generator.cc |
diff --git a/src/interpreter/bytecode-generator.cc b/src/interpreter/bytecode-generator.cc |
index 71e9eefd17fa76831a0669c5e98c5ff29bffa650..7184959d98f01c20219d1e2dbd2d41e91e370739 100644 |
--- a/src/interpreter/bytecode-generator.cc |
+++ b/src/interpreter/bytecode-generator.cc |
@@ -2801,13 +2801,12 @@ void BytecodeGenerator::VisitCountOperation(CountOperation* expr) { |
} |
} |
- // Convert old value into a number. |
- builder()->CastAccumulatorToNumber(); |
- |
// Save result for postfix expressions. |
if (is_postfix) { |
old_value = register_allocator()->outer()->NewRegister(); |
- builder()->StoreAccumulatorInRegister(old_value); |
+ |
+ // Convert old value into a number before saving it. |
+ builder()->CastAccumulatorToNumber().StoreAccumulatorInRegister(old_value); |
} |
// Perform +1/-1 operation. |