https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115912
--- Comment #11 from Andrew Pinski <pinskia at gcc dot gnu.org> --- (In reply to Sam James from comment #10) > libharfbuzz_subset_la-hb-subset.cc.300r.ext_dce.xz: > https://dev.gentoo.org/~sam/bugs/gcc/gcc-harfbuzz-dce/libharfbuzz_subset_la- > hb-subset.cc.300r.ext_dce.xz. Too big to attach, sorry. Majority of the `Successfully transformed to` all come from things like: ``` void f(unsigned *a, unsigned short *b) { *b = __builtin_bswap16(*a); } void f1(unsigned b, unsigned short * a) { *a = __builtin_bswap16(b); } ``` Note there is an extra move in f1 in GCC 15 compared to 14 on x86_64 too. I didn't look through all 287 `Successfully transformed to` to verify all of them though. Note it might also be useful to add dbgcnt.def support to ext-dce.cc. If I get a chance I might add it too.