https://gcc.gnu.org/bugzilla/show_bug.cgi?id=108574
Andrew Pinski <pinskia at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Ever confirmed|0 |1 Summary|wrong code at -Os and above |[13 Regression] wrong code |on x86_64-linux-gnu |at -Os and above on | |x86_64-linux-gnu Target Milestone|--- |13.0 Keywords| |wrong-code Last reconfirmed| |2023-01-27 Status|UNCONFIRMED |NEW --- Comment #3 from Andrew Pinski <pinskia at gcc dot gnu.org> --- (In reply to Zhendong Su from comment #0) > It appears to be a recent regression from 12.2. In the testcase from comment #0, pre is messing it up because of an uninitialized variable on one path (which is not taken). Note somehow the statement: d >= b; changes the IR slightly ... testcase in comment #1 also depends on an uninitialized variable on a path not taken too (in that case j). testcase in comment #2 also looks similar and depends on an unintialized variable on a path not taken too.