This patch implement RISC-V Scalar Cryptography extension.
It includes machine descrption , intrinsic and testcase .
Liao Shihua (5):
Add prototypes for RISC-V Crypto built-in functions
Implement ZBKB, ZBKC and ZBKX extensions
Implement ZKND and ZKNE extensions
Implement ZKNH extensions
Implement ZKSH and ZKSED extensions
gcc/config.gcc | 2 +-
gcc/config/riscv/bitmanip.md | 20 +-
gcc/config/riscv/constraints.md | 8 +
gcc/config/riscv/crypto.md | 437 ++++++++++++++++++
gcc/config/riscv/riscv-builtins.cc | 26 ++
gcc/config/riscv/riscv-crypto.def | 94 ++++
gcc/config/riscv/riscv-ftypes.def | 10 +
gcc/config/riscv/riscv.md | 4 +-
gcc/config/riscv/riscv_scalar_crypto.h | 218 +++++++++
gcc/testsuite/gcc.target/riscv/zbkb32.c | 36 ++
gcc/testsuite/gcc.target/riscv/zbkb64.c | 28 ++
gcc/testsuite/gcc.target/riscv/zbkc32.c | 18 +
gcc/testsuite/gcc.target/riscv/zbkc64.c | 17 +
gcc/testsuite/gcc.target/riscv/zbkx32.c | 19 +
gcc/testsuite/gcc.target/riscv/zbkx64.c | 18 +
gcc/testsuite/gcc.target/riscv/zknd32.c | 18 +
gcc/testsuite/gcc.target/riscv/zknd64.c | 36 ++
gcc/testsuite/gcc.target/riscv/zkne32.c | 18 +
gcc/testsuite/gcc.target/riscv/zkne64.c | 30 ++
gcc/testsuite/gcc.target/riscv/zknh-sha256.c | 29 ++
.../gcc.target/riscv/zknh-sha512-32.c | 43 ++
.../gcc.target/riscv/zknh-sha512-64.c | 31 ++
gcc/testsuite/gcc.target/riscv/zksed.c | 20 +
gcc/testsuite/gcc.target/riscv/zksh.c | 19 +
24 files changed, 1187 insertions(+), 12 deletions(-)
create mode 100644 gcc/config/riscv/crypto.md
create mode 100644 gcc/config/riscv/riscv-crypto.def
create mode 100644 gcc/config/riscv/riscv_scalar_crypto.h
create mode 100644 gcc/testsuite/gcc.target/riscv/zbkb32.c
create mode 100644 gcc/testsuite/gcc.target/riscv/zbkb64.c
create mode 100644 gcc/testsuite/gcc.target/riscv/zbkc32.c
create mode 100644 gcc/testsuite/gcc.target/riscv/zbkc64.c
create mode 100644 gcc/testsuite/gcc.target/riscv/zbkx32.c
create mode 100644 gcc/testsuite/gcc.target/riscv/zbkx64.c
create mode 100644 gcc/testsuite/gcc.target/riscv/zknd32.c
create mode 100644 gcc/testsuite/gcc.target/riscv/zknd64.c
create mode 100644 gcc/testsuite/gcc.target/riscv/zkne32.c
create mode 100644 gcc/testsuite/gcc.target/riscv/zkne64.c
create mode 100644 gcc/testsuite/gcc.target/riscv/zknh-sha256.c
create mode 100644 gcc/testsuite/gcc.target/riscv/zknh-sha512-32.c
create mode 100644 gcc/testsuite/gcc.target/riscv/zknh-sha512-64.c
create mode 100644 gcc/testsuite/gcc.target/riscv/zksed.c
create mode 100644 gcc/testsuite/gcc.target/riscv/zksh.c
--
2.38.1.windows.1