Port NEON SHA1 intrinsics to pragma-based framework
AArch64 NEON SHA1 intrinsics are now managed by the pragma-based framework, accompanied by new assembly tests.
The NEON SHA1 intrinsics, also associated with the FEAT_SHA2 feature, have been migrated to GCC’s pragma-based framework. This change includes the addition of assembly tests for each intrinsic to verify their correct operation. Consequently, existing builtin functions and definitions have been removed and replaced by the new framework’s approach.
In Details
This commit refactors the implementation of AArch64 NEON SHA1 intrinsics (FEAT_SHA2) to utilize the pragma-based framework. This aligns the SHA1 intrinsics with the same management system used for other NEON operations, improving code consistency and maintainability. The introduction of assembly tests ensures that the ported intrinsics function correctly at the hardware instruction level. This change likely simplifies the internal representation and handling of these cryptographic primitives within GCC.
- NEON
- ARM's Advanced SIMD (Single Instruction, Multiple Data) extension, providing hardware acceleration for multimedia and signal processing.
- intrinsics
- Special functions that allow programmers to access hardware instructions directly from high-level code, often providing performance benefits over standard C functions.
- pragma-based framework
- A system within GCC where specific functionalities, particularly for hardware features and built-ins, are managed through a generalized 'pragma' or directive-based approach, allowing for a more unified and maintainable implementation.
- FEAT_SHA2
- A hardware feature on ARM processors that provides acceleration for the SHA-2 cryptographic hash function.