https://gcc.gnu.org/bugzilla/show_bug.cgi?id=119106
--- Comment #1 from federico <federico.perini at gmail dot com> --- The `-fdump-tree-original` seems to highlight that: The `save`d variable data is accessed with unrolled indices [...] = n[(integer(kind=8)) i[0] + -1][1]{lb: 1 sz: 1}; The `parameter` variable data is accessed also unrolled, but instead of the unrolled indices (0, 1, 2, ...) there is `j`: [...] = p[(integer(kind=8)) i[(integer(kind=8)) j + -1] + -1][1]{lb: 1 sz: 1}; but `j` is undefined! So it would seem like for some reason, `j` has not been replaced by the unrolled index during the unrolling.