[Bug tree-optimization/104931] [9/10/11 Regression] wrong-code with number_of_iterations_lt_to_ne
rguenth at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Thu Mar 17 13:53:09 GMT 2022
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104931
--- Comment #9 from Richard Biener <rguenth at gcc dot gnu.org> ---
Created attachment 52646
--> https://gcc.gnu.org/bugzilla/attachment.cgi?id=52646&action=edit
ivcanon dump from the GIMPLE testcase (without bug)
The difference is that with LTO we have expanded expressions to
Analyzing # of iterations of loop 1
exit condition [(struct TValue *) (_2 + 4294967272) + 12, + ,
24](no_overflow) < _2 + 4294967272
while with the GIMPLE testcase we immediately get to
Statement (exit)if (from_26 < to_27)
is executed at most 0 (bounded by 0) + 1 times in loop 1.
...
Loop 1 iterates 0 times.
Note the GIMPLE FE doesn't yet support parsing CLOBBER stmts (but I'm quite
sure this doesn't matter here) and for the loops() support you need to
commit a pending patch.
More information about the Gcc-bugs
mailing list