Re: [RFC/RFA][PATCH 00/12] CRC optimization

2024-05-27 Thread Mariam Arutunian
Yes, this pass can detect only bitwise (naive) implementations of CRC32C and replace them with hardware crc32* instructions (if supported), or alternatively generate CRC using CLMUL-based or table-based methods. Here is an example of such a CRC32C implementation, where the entire loop will be

Re: [RFC/RFA][PATCH 00/12] CRC optimization

2024-05-26 Thread NightStrike
On Fri, May 24, 2024, 04:42 Mariam Arutunian wrote: > Hello! > This patch set detects bitwise CRC implementation loops (with branches) in > the GIMPLE optimizers and replaces them with more optimal CRC > implementations in RTL. These patches introduce new internal functions, > built-in

Re: [RFC/RFA][PATCH 00/12] CRC optimization

2024-05-24 Thread Jeff Law
On 5/24/24 2:41 AM, Mariam Arutunian wrote: Hello! This patch set detects bitwise CRC implementation loops (with branches) in the GIMPLE optimizers and replaces them with more optimal CRC implementations in RTL. These patches introduce new internal functions, built-in functions, and

[RFC/RFA][PATCH 00/12] CRC optimization

2024-05-24 Thread Mariam Arutunian
Hello! This patch set detects bitwise CRC implementation loops (with branches) in the GIMPLE optimizers and replaces them with more optimal CRC implementations in RTL. These patches introduce new internal functions, built-in functions, and expanders for CRC generation, leveraging hardware