Index: src/hydrogen-instructions.h |
diff --git a/src/hydrogen-instructions.h b/src/hydrogen-instructions.h |
index 4a8a406eb3befbc126c4f0f6aa15119892ef316f..73c075ed4122ebc32ccc5526c3722cbf5d4c4851 100644 |
--- a/src/hydrogen-instructions.h |
+++ b/src/hydrogen-instructions.h |
@@ -271,6 +271,10 @@ class Range: public ZoneObject { |
bool IsInSmiRange() const { |
return lower_ >= Smi::kMinValue && upper_ <= Smi::kMaxValue; |
} |
+ void ClampToSmi() { |
+ lower_ = Max(lower_, Smi::kMinValue); |
+ upper_ = Min(upper_, Smi::kMaxValue); |
+ } |
void KeepOrder(); |
#ifdef DEBUG |
void Verify() const; |
@@ -2644,6 +2648,8 @@ class HUnaryMathOperation: public HTemplateInstruction<2> { |
} |
} |
+ virtual Range* InferRange(Zone* zone); |
+ |
virtual HValue* Canonicalize(); |
BuiltinFunctionId op() const { return op_; } |