John Naylor <johncnaylorls@gmail.com> writes:
> Pushed, thanks everyone!
This has broken the build completely on my RHEL8 x86_64 box,
with gcc 8.5.0:
$ ./configure ...
$ make -s
pg_crc32c_sse42.c: In function 'pg_comp_crc32c_avx512':
pg_crc32c_sse42.c:126:25: warning: implicit declaration of function '_mm512_zextsi128_si512'; did you mean
'_mm512_castsi128_si512'?[-Wimplicit-function-declaration]
x0 = _mm512_xor_si512(_mm512_zextsi128_si512(_mm_cvtsi32_si128(crc0)), x0);
^~~~~~~~~~~~~~~~~~~~~~
_mm512_castsi128_si512
pg_crc32c_sse42.c:126:25: error: incompatible type for argument 1 of '_mm512_xor_si512'
x0 = _mm512_xor_si512(_mm512_zextsi128_si512(_mm_cvtsi32_si128(crc0)), x0);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/lib/gcc/x86_64-redhat-linux/8/include/immintrin.h:45,
from pg_crc32c_sse42.c:19:
/usr/lib/gcc/x86_64-redhat-linux/8/include/avx512fintrin.h:7267:27: note: expected '__m512i' {aka '__vector(8) long
longint'} but argument is of type 'int'
_mm512_xor_si512 (__m512i __A, __m512i __B)
~~~~~~~~^~~
make[2]: *** [<builtin>: pg_crc32c_sse42.o] Error 1
I see similar symptoms on buildfarm animal conchuela, which
is DragonFly BSD of some vintage or other. Not sure why
more animals aren't complaining. Anyway, it seems that the
configure probe to see if this facility is available had
better be adjusted to match the new code.
regards, tom lane