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

Andrew Pinski <pinskia at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|ASSIGNED                    |NEW
           Assignee|pinskia at gcc dot gnu.org         |unassigned at gcc dot 
gnu.org

--- Comment #10 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
Part of the reason for the failure is that we don't rewrite:
```
  t.0_1 = (unsigned int) l_4(D);
  _2 = t.0_1 + 19;
  _6 = _2 <= 38;
```

That is from:
```
bool f(long long l){
  if(l>1000) return false;
  if(l<-1000) return false;
  int t = l;
  return t < 20 && t > -20;
}
```

Which we should rewrite to use the original type. I am not going to implement
that.

Reply via email to