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

--- Comment #5 from Jeffrey A. Law <law at gcc dot gnu.org> ---
Somehow ranger is mucking things up.


=========== BB 2 ============
Imports: var_8  
Exports: var_8  
    <bb 2> [local count: 153437704]:
    var_8 = f;
    pretmp_23 = a;
    if (var_8 <= 5)
      goto <bb 3>; [85.71%]
    else
      goto <bb 4>; [14.29%]

2->3  (T) var_8 :       [irange] char [0, 5]
2->4  (F) var_8 :       [irange] char [6, +INF]

That looks fine to me.

=========== BB 3 ============
var_8   [irange] char [0, 5]
Partial equiv (_28 pe8 bnd.9_10)
Relational : (_26 != _31)
    <bb 3> [local count: 131511457]:
    bnd.9_10 = 6 - var_8;
[ ... ]
bnd.9_10 : [irange] char [1, 1]
_28 : [irange] unsigned long [1, 1]

That range on bnd.9_10 looks totally bogus.

Reply via email to