Use __attribute__((target(sse4.2))) for SSE42 CRC32C

Devulapalli, Raghuveer <raghuveer.devulapalli@intel.com>

From: "Devulapalli, Raghuveer" <raghuveer.devulapalli@intel.com>
To: "pgsql-hackers@lists.postgresql.org" <pgsql-hackers@lists.postgresql.org>
Date: 2024-11-07T20:48:54Z
Lists: pgsql-hackers

Attachments

Based on the discussion in PostgreSQL: Re: Proposal for Updating CRC32C with AVX-512 Algorithm.<https://www.postgresql.org/message-id/ZyziAXhsgfqakSI4%40nathan>, this patch leverages pg_attribute_target to build the SSE42 CRC32C code using function attributes.

Raghuveer

Commits

  1. Use __attribute__((target(...))) for SSE4.2 CRC-32C support.

  2. Move check for USE_AVX512_POPCNT_WITH_RUNTIME_CHECK.

  3. Remove MSVC scripts