Index: src/hydrogen-instructions.cc |
diff --git a/src/hydrogen-instructions.cc b/src/hydrogen-instructions.cc |
index 45112fad0648cb2c0c836ebabdf89a3a3949d1eb..2b64f89ab28f7228f4ec2cbad69e6435b4132de1 100644 |
--- a/src/hydrogen-instructions.cc |
+++ b/src/hydrogen-instructions.cc |
@@ -1865,6 +1865,10 @@ Range* HMod::InferRange(Zone* zone) { |
result->set_can_be_minus_zero(!CheckFlag(kAllUsesTruncatingToInt32) && |
left_can_be_negative); |
+ if (!a->CanBeNegative()) { |
+ ClearFlag(HValue::kLeftCanBeNegative); |
+ } |
+ |
if (!a->Includes(kMinInt) || !b->Includes(-1)) { |
ClearFlag(HValue::kCanOverflow); |
} |