https://gcc.gnu.org/bugzilla/show_bug.cgi?id=125730
--- Comment #10 from Richard Biener <rguenth at gcc dot gnu.org> ---
(In reply to Sam James from comment #8)
> r16-5197-gc209c1598da631 but I don't think that's so insightful
It allows the 'name - argnames' IVs to be analyzed by SCEV
and thus processed by IVOPTs, so it's relevant to that extent for this
particular testcase. But any user-written code that would have used
(uintptr_t) casted differences would be affected before. Like we handled
values[(unsigned long)name - (unsigned long)argnames] = fetched_value;
before (but happened to not miscompile that I think).