mirror of
https://github.com/postgres/postgres.git
synced 2026-05-06 08:56:39 -04:00
Add missing guard for __builtin_constant_p
Oversight in commit e2809e3a1. While at it, use pg_integer_constant_p
in master.
Discussion: https://postgr.es/m/CANWCAZbOha-x5MCreQn3TRA56VdKWNMAKMy3fAV1kJSw9Vp4pw@mail.gmail.com
Backpatch-through: 18
This commit is contained in:
@@ -70,6 +70,7 @@ static inline
|
||||
pg_crc32c
|
||||
pg_comp_crc32c_dispatch(pg_crc32c crc, const void *data, size_t len)
|
||||
{
|
||||
#ifdef HAVE__BUILTIN_CONSTANT_P
|
||||
if (__builtin_constant_p(len) && len < 32)
|
||||
{
|
||||
const unsigned char *p = (const unsigned char *) data;
|
||||
@@ -91,6 +92,9 @@ pg_comp_crc32c_dispatch(pg_crc32c crc, const void *data, size_t len)
|
||||
else
|
||||
/* Otherwise, use a runtime check for AVX-512 instructions. */
|
||||
return pg_comp_crc32c(crc, data, len);
|
||||
#else
|
||||
return pg_comp_crc32c(crc, data, len);
|
||||
#endif /* HAVE__BUILTIN_CONSTANT_P */
|
||||
}
|
||||
|
||||
#elif defined(USE_SSE42_CRC32C_WITH_RUNTIME_CHECK)
|
||||
|
||||
Reference in New Issue
Block a user