Attached is a simple reproducer. It passes with clang v16 -O0, but fails with 17 and 18 only when built with -O0.
Build command: clang main.c -O0
Hope this helps.
Raghuveer
> -----Original Message-----
> From: John Naylor <johncnaylorls@gmail.com>
> Sent: Sunday, June 15, 2025 7:39 PM
> To: Andy Fan <zhihuifan1213@163.com>
> Cc: Jesper Pedersen <jesperpedersen.db@gmail.com>; Nathan Bossart
> <nathandbossart@gmail.com>; Tomas Vondra <tomas@vondra.me>; Devulapalli,
> Raghuveer <raghuveer.devulapalli@intel.com>; pgsql-
> hackers@lists.postgresql.org; Shankaran, Akash <akash.shankaran@intel.com>
> Subject: Re: Improve CRC32C performance on SSE4.2
>
> On Sun, Jun 15, 2025 at 8:32 AM Andy Fan <zhihuifan1213@163.com> wrote:
> >
> > Jesper Pedersen <jesperpedersen.db@gmail.com> writes:
> >
> > Hi,
> >
> > Thank you Nathan, Tomas and Jesper for the answers. The patch at [0]
> > works for me and I could work with master smoothly now.
>
> Pushed, thanks for testing! I'll do some more testing to see what versions/levels
> are affected and file a bug report, but it'll be a few days before I get to it.
>
> --
> John Naylor
> Amazon Web Services
>