[Bug rtl-optimization/89588] [8/9 Regression] ICE in unroll_loop_constant_iterations, at loop-unroll.c:498
jakub at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Tue Mar 5 10:49:00 GMT 2019
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89588
Jakub Jelinek <jakub at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |jakub at gcc dot gnu.org
--- Comment #2 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
There is:
401 /* However we cannot unroll completely at the RTL level a loop
with
402 constant number of iterations; it should have been peeled
instead. */
403 if ((unsigned) loop->unroll - 1 > desc->niter - 2)
404 {
405 if (dump_file)
406 fprintf (dump_file, ";; Loop should have been peeled\n");
407 }
As desc->niter is uint64_t 1, desc->niter - 2 is 0xffffffffffffffffULL.
Shouldn't we punt also for desc->niter == 1 , so desc->niter == 1 || (unsigned)
... ?
More information about the Gcc-bugs
mailing list