https://gcc.gnu.org/bugzilla/show_bug.cgi?id=118953

Richard Biener <rguenth at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
     Ever confirmed|0                           |1
           Priority|P3                          |P2
   Last reconfirmed|                            |2025-02-20
             Status|UNCONFIRMED                 |NEW

--- Comment #3 from Richard Biener <rguenth at gcc dot gnu.org> ---
Confirmed.

  # RANGE [irange] int [-INF, +INF] MASK 0xffffc000 VALUE 0x34
  _7 = k_11 + -1048524;
  switch (_7) <default: <L3> [33.33%], case 8: <L5> [33.33%], case 24: <L4>
[33.33%], case 32: <L4> [33.33%]>

(k_11 is zero at runtime).  EVRP then makes

Global Exported: _7 = [irange] int [-INF, 2146435123] MASK 0xffffc000 VALUE
0x34
Global Exported: i_20 = [irange] long unsigned int [45, 45] MASK
0xffffffffffffc07d VALUE 0x0

  # RANGE [irange] int [-INF, 2146435123] MASK 0xffffc000 VALUE 0x34
  _7 = k_11 + -1048524;
  d = 45;

out of this.

Reply via email to