/* { dg-do compile { target { ! ia32 } } } */ /* { dg-options "-O2 -mcrc32 -dp" } */ /* { dg-final { scan-assembler-not "zero_extendsidi" } } */ #include #include uint32_t f(uint32_t c, uint64_t *p, size_t n) { for (size_t i = 0; i < n; i++) c = _mm_crc32_u64(c, p[i]); return c; }