Bug 950438 - IonMonkey: The intersection of two ranges that both contain NaN is not empty. r=nbp

This commit is contained in:
Dan Gohman 2013-12-16 22:47:06 -08:00
parent c1cb815112
commit e61f161c63

View File

@ -413,7 +413,9 @@ Range::intersect(TempAllocator &alloc, const Range *lhs, const Range *rhs, bool
// Instead, we should use it to eliminate the dead block.
// (Bug 765127)
if (newUpper < newLower) {
*emptyRange = true;
// If both ranges can be NaN, the result can still be NaN.
if (!lhs->canBeNaN() || !rhs->canBeNaN())
*emptyRange = true;
return nullptr;
}