https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110035
--- Comment #3 from Andrew Pinski <pinskia at gcc dot gnu.org> --- We don't even optimize: ``` struct MyClass { unsigned long long arr[128]; }; [[gnu::noipa]] void sink(void *m); void gg(MyClass &a, MyClass *b) { MyClass c = a; *b = c; sink(b); } ``` As I mentioned there are dups of the above testcase.