https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111276
Bug ID: 111276
Summary: rewrite_to_defined_overflow rewrites already defined
code
Product: gcc
Version: 14.0
Status: UNCONFIRMED
Keywords: compile-time-hog, internal-improvement
Severity: normal
Priority: P3
Component: tree-optimization
Assignee: pinskia at gcc dot gnu.org
Reporter: pinskia at gcc dot gnu.org
Target Milestone: ---
Take:
```
int bcmp_2(char *a, char *b, unsigned s) {
if (s < 16) {
if (s >= 8)
return 1;
}
return 0;
}
```
ifcombine produces:
```
rewriting stmt with undefined signed overflow _4 = s_2(D) + 4294967288;
unsigned intD.9 s_2(D) = sD.3394;
...
_5 = s_2(D) + 4294967288;
_4 = (unsigned intD.9) _5;
if (_4 <= 7)
```
Seems like we don't need to do a rewrite in this case ...