Ports the NEON cryptographic functions to the new pragma-based framework. Relatively simple patch, since all of the intrinsics are UNSPECs.
ChangeLog: * V1: Initial revision. * V2: Remove unused variables in aarch64-builtins.cc Karl Meakin (5): aarch64: Port NEON AES intrinsics to pragma-based framework aarch64: Port NEON SHA1 intrinsics to pragma-based framework aarch64: Port NEON SHA256 intrinsics to pragma-based framework aarch64: Port NEON SHA512 intrinsics to pragma-based framework aarch64: Port NEON SM3 and SM4 intrinsics to pragma-based framework gcc/config/aarch64/aarch64-builtins.cc | 35 --- .../aarch64/aarch64-neon-builtins-base.cc | 48 +++++ .../aarch64/aarch64-neon-builtins-base.def | 51 +++++ gcc/config/aarch64/aarch64-simd-builtins.def | 46 +--- gcc/config/aarch64/arm_neon.h | 203 ------------------ .../gcc.target/aarch64/neon/arm_neon_test.h | 2 +- gcc/testsuite/gcc.target/aarch64/neon/vaes.c | 32 +++ gcc/testsuite/gcc.target/aarch64/neon/vsha1.c | 51 +++++ .../gcc.target/aarch64/neon/vsha256.c | 32 +++ .../gcc.target/aarch64/neon/vsha512.c | 32 +++ gcc/testsuite/gcc.target/aarch64/neon/vsm3.c | 81 +++++++ gcc/testsuite/gcc.target/aarch64/neon/vsm4.c | 26 +++ 12 files changed, 355 insertions(+), 284 deletions(-) create mode 100644 gcc/testsuite/gcc.target/aarch64/neon/vaes.c create mode 100644 gcc/testsuite/gcc.target/aarch64/neon/vsha1.c create mode 100644 gcc/testsuite/gcc.target/aarch64/neon/vsha256.c create mode 100644 gcc/testsuite/gcc.target/aarch64/neon/vsha512.c create mode 100644 gcc/testsuite/gcc.target/aarch64/neon/vsm3.c create mode 100644 gcc/testsuite/gcc.target/aarch64/neon/vsm4.c -- 2.51.0
