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.

Reply via email to