[PATCH] unroll: Run VN on unrolled-and-jammed loops

2021-07-20 Thread Richard Sandiford via Gcc-patches
Unroll and jam can sometimes leave redundancies. E.g. for: for (int j = 0; j < 100; ++j) for (int i = 0; i < 100; ++i) x[i] += y[i] * z[j][i]; the new loop will do the equivalent of: for (int j = 0; j < 100; j += 2) for (int i = 0; i < 100; ++i) { x[i] += y[i] *

Re: [PATCH] unroll: Run VN on unrolled-and-jammed loops

2021-07-20 Thread Richard Biener via Gcc-patches
On July 20, 2021 5:56:35 PM GMT+02:00, Richard Sandiford via Gcc-patches wrote: >Unroll and jam can sometimes leave redundancies. E.g. for: > > for (int j = 0; j < 100; ++j) >for (int i = 0; i < 100; ++i) > x[i] += y[i] * z[j][i]; > >the new loop will do the equivalent of: > > for (in