Undefined ranges have undefined NAN bits. We can't depend on them,
as they may contain garbage. This patch returns false from
maybe_isnan() for undefined ranges (the empty set).
gcc/ChangeLog:
* value-range.h (frange::maybe_isnan): Return false for
undefined ranges.
---
gcc/value-range.h | 2 ++
1 file changed, 2 insertions(+)
diff --git a/gcc/value-range.h b/gcc/value-range.h
index 7d5584a9294..325ed08f290 100644
--- a/gcc/value-range.h
+++ b/gcc/value-range.h
@@ -1210,6 +1210,8 @@ frange::known_isinf () const
inline bool
frange::maybe_isnan () const
{
+ if (undefined_p ())
+ return false;
return m_pos_nan || m_neg_nan;
}
--
2.37.1