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

Aldy Hernandez <aldyh at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |amacleod at redhat dot com

--- Comment #1 from Aldy Hernandez <aldyh at gcc dot gnu.org> ---
Looks like something either VRP or the threader could get.

By vrp2 we have:

=========== BB 2 ============
Imports: c.0_1  
Exports: c.0_1  f.6_9  _10  
         f.6_9 : c.0_1(I)  
         _10 : c.0_1(I)  f.6_9  
    <bb 2> [local count: 1073741824]:
    c.0_1 = c;
    b.2_2 = b;
    _11 = b.2_2 != 0;
    iftmp.3_3 = (unsigned int) _11;
    f.6_9 = (unsigned short) c.0_1;
    _10 = b.2_2 < iftmp.3_3 ? f.6_9 : 0;
    if (_10 != 0)
      goto <bb 3>; [33.00%]
    else
      goto <bb 4>; [67.00%]

iftmp.3_3 : unsigned int [0, 1]
2->3  (T) _10 :         unsigned short [1, +INF]
2->4  (F) _10 :         unsigned short [0, 0]

=========== BB 3 ============
    <bb 3> [local count: 354334800]:
    foo ();

Reply via email to