On Thu, Jun 12, 2025 at 4:42 AM Nathan Bossart <nathandbossart@gmail.com> wrote:
>
> (I've CC'd the committer of the feature.)
>
> On Wed, Jun 11, 2025 at 11:10:31AM -0700, Soumyadeep Chakraborty wrote:
> > Note that this only reproduces with clang-19 -O0 and NOT -O3. I haven't
> > tried with other versions of clang.
> >
> > OTOH, gcc-14 is cool with both -O0 and -O3, with AVX-512 getting picked
> > for both cases, for CRC instructions.
>
> I'm wondering if there's anything else this could be besides a compiler
> bug. It's interesting that -O0 is the broken case. Have you tried looking
> for differences in the assembly code?
Hmm, clang at -O0 is the same in versions 18, 19, and 20. The change
from v17 is easy enough to workaround as in the attached, which
produces identical output as master at -O2. Does this fix it for you?
If that's not it, it may be more difficult, as the change at -O0 from
v16 to v17 is large, so it's hard to see what's going on.
--
John Naylor
Amazon Web Services