On 11/27/23 01:34, Liao Shihua wrote:
This patch add C intrinsics for scalar crypto extension.
Because of riscv-c-api 
(https://github.com/riscv-non-isa/riscv-c-api-doc/pull/44/files) includes 
zbkb/zbkc/zbkx's
intrinsics in bit manipulation extension, this patch only support zkn*/zks*'s 
intrinsics.

gcc/ChangeLog:

         * config.gcc: Add riscv_crypto.h
         * config/riscv/riscv_crypto.h: New file.

gcc/testsuite/ChangeLog:

         * gcc.target/riscv/zknd32.c: Use intrinsics instead of builtins.
         * gcc.target/riscv/zknd64.c: Likewise.
         * gcc.target/riscv/zkne32.c: Likewise.
         * gcc.target/riscv/zkne64.c: Likewise.
         * gcc.target/riscv/zknh-sha256-32.c: Likewise.
         * gcc.target/riscv/zknh-sha256-64.c: Likewise.
         * gcc.target/riscv/zknh-sha512-32.c: Likewise.
         * gcc.target/riscv/zknh-sha512-64.c: Likewise.
         * gcc.target/riscv/zksed32.c: Likewise.
         * gcc.target/riscv/zksed64.c: Likewise.
         * gcc.target/riscv/zksh32.c: Likewise.
         * gcc.target/riscv/zksh64.c: Likewise.
Last cycle we let a ton of vector intrinsics through after stage1 closed. I'm not keen to repeat that, but this looks pretty small and appears to just provide a mapping from the RV intrinsics to the builtin names within GCC.


I won't object to this one if Kito or Palmer want to see it go forward. I might object if more of these things get submitted later in stage3/stage4 :-)


It would be useful if future patches included "RISC-V" in the subject line. Our Tuesday patchwork meeting focuses on patches with that tag in the subject line. By using it you ensure it gets on the weekly agenda.

Thanks,
Jeff

Reply via email to