https://gcc.gnu.org/g:b3327649bffd32af962662dce054b94be2d7330d

commit r16-664-gb3327649bffd32af962662dce054b94be2d7330d
Author: Andrew MacLeod <amacl...@redhat.com>
Date:   Wed May 14 11:13:15 2025 -0400

    Allow bitmask intersection to process unknown masks.
    
    bitmask_intersection should not return immediately if the current mask is
    unknown.  Unknown may mean its the default for a range, and this may
    interact in intersting ways with the other bitmask.
    
            PR tree-optimization/116546
            * value-range.cc (irange::intersect_bitmask): Allow unknown
            bitmasks to be processed.

Diff:
---
 gcc/value-range.cc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/gcc/value-range.cc b/gcc/value-range.cc
index 64d10f41168b..ed3760fa6ff6 100644
--- a/gcc/value-range.cc
+++ b/gcc/value-range.cc
@@ -2434,7 +2434,7 @@ irange::intersect_bitmask (const irange &r)
 {
   gcc_checking_assert (!undefined_p () && !r.undefined_p ());
 
-  if (r.m_bitmask.unknown_p () || m_bitmask == r.m_bitmask)
+  if (m_bitmask == r.m_bitmask)
     return false;
 
   irange_bitmask bm = get_bitmask ();

Reply via email to