https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89567
--- Comment #7 from Eyal Rozenberg <eyalroz1 at gmx dot com> --- (In reply to Andrew Pinski from comment #6) > I am think this can be closed as fixed ... Well, my example no longer generates two loads. However > IPA-SRA does handle this if the function is static. > > Also mod-ref handles this if the function takes a pointer instead of a > struct. are both not the case for my example. So, while I don't understand know why this works now, it does, and I suppose you can close this.