[v4,0/3] RISC-V: Add intrinsics for Bitmanip and Scalar Crypto extensions

Message ID 20240115083135.2120665-1-shihua@iscas.ac.cn
Headers
Series RISC-V: Add intrinsics for Bitmanip and Scalar Crypto extensions |

Message

Liao Shihua Jan. 15, 2024, 8:31 a.m. UTC
  Update v3 -> v4:
  1.Typo fix.
  2.Only test *intrinsic-32 on rv32 and *intrinsic-64 on rv64.
  3.Update Copyright year to 2024.

Update v2 -> v3:
  1. Change pattern mode form X to GPR in orcb, clmul, and brev8.
  2. Add emulated testsuite.
  3. Removed duplicate testsuite between built-in and intrinsic. 
  4. Typo fix.

Update v1 -> v2:
  1. Rename *_intrinsic-* to *_intrinsic-XLEN.
  2. Typo fix.
  3. Intrinsics with immediate arguments will use marcos at O0 .

It's a little patch add just provides a mapping from the RV intrinsics to the builtin 
names within GCC.

Liao Shihua (3):
  RISC-V: Remove the Scalar Bitmanip and Crypto Built-In function
    testsuites
  RISC-V: Add C intrinsic for Scalar Crypto Extension
  RISC-V: Add C intrinsic for Scalar Bitmanip Extension

 gcc/config.gcc                                |   2 +-
 gcc/config/riscv/bitmanip.md                  |  10 +-
 gcc/config/riscv/crypto.md                    |   4 +-
 gcc/config/riscv/riscv-builtins.cc            |  22 ++
 gcc/config/riscv/riscv-cmo.def                |  12 +-
 gcc/config/riscv/riscv-ftypes.def             |   2 +
 gcc/config/riscv/riscv-scalar-crypto.def      |  22 +-
 gcc/config/riscv/riscv_bitmanip.h             | 297 +++++++++++++++++
 gcc/config/riscv/riscv_crypto.h               | 309 ++++++++++++++++++
 .../riscv/scalar_bitmanip_intrinsic-32.c      |  97 ++++++
 .../scalar_bitmanip_intrinsic-64-emulated.c   |  33 ++
 .../riscv/scalar_bitmanip_intrinsic-64.c      | 115 +++++++
 .../riscv/scalar_crypto_intrinsic-32.c        | 115 +++++++
 .../riscv/scalar_crypto_intrinsic-64.c        | 123 +++++++
 .../gcc.target/riscv/zbb_32_bswap-1.c         |  11 -
 gcc/testsuite/gcc.target/riscv/zbb_bswap-1.c  |  11 -
 gcc/testsuite/gcc.target/riscv/zbb_bswap-2.c  |  12 -
 .../riscv/{zbb_32_bswap-2.c => zbb_bswap16.c} |   3 +-
 gcc/testsuite/gcc.target/riscv/zbbw.c         |  26 --
 gcc/testsuite/gcc.target/riscv/zbc32.c        |  23 --
 gcc/testsuite/gcc.target/riscv/zbc64.c        |  23 --
 gcc/testsuite/gcc.target/riscv/zbkb32.c       |  18 -
 gcc/testsuite/gcc.target/riscv/zbkb64.c       |   5 -
 gcc/testsuite/gcc.target/riscv/zbkc32.c       |  17 -
 gcc/testsuite/gcc.target/riscv/zbkc64.c       |  17 -
 gcc/testsuite/gcc.target/riscv/zbkx32.c       |  18 -
 gcc/testsuite/gcc.target/riscv/zbkx64.c       |  18 -
 gcc/testsuite/gcc.target/riscv/zknd32-2.c     |  28 --
 gcc/testsuite/gcc.target/riscv/zknd64-2.c     |  42 ---
 gcc/testsuite/gcc.target/riscv/zkne32-2.c     |  28 --
 gcc/testsuite/gcc.target/riscv/zkne64-2.c     |  34 --
 .../gcc.target/riscv/zknh-sha256-32.c         |  10 -
 .../gcc.target/riscv/zknh-sha256-64.c         |  28 --
 .../gcc.target/riscv/zknh-sha512-32.c         |  42 ---
 .../gcc.target/riscv/zknh-sha512-64.c         |  31 --
 gcc/testsuite/gcc.target/riscv/zksed32-2.c    |  29 --
 gcc/testsuite/gcc.target/riscv/zksed64-2.c    |  29 --
 gcc/testsuite/gcc.target/riscv/zksh32.c       |  19 --
 gcc/testsuite/gcc.target/riscv/zksh64.c       |  19 --
 39 files changed, 1149 insertions(+), 555 deletions(-)
 create mode 100644 gcc/config/riscv/riscv_bitmanip.h
 create mode 100644 gcc/config/riscv/riscv_crypto.h
 create mode 100644 gcc/testsuite/gcc.target/riscv/scalar_bitmanip_intrinsic-32.c
 create mode 100644 gcc/testsuite/gcc.target/riscv/scalar_bitmanip_intrinsic-64-emulated.c
 create mode 100644 gcc/testsuite/gcc.target/riscv/scalar_bitmanip_intrinsic-64.c
 create mode 100644 gcc/testsuite/gcc.target/riscv/scalar_crypto_intrinsic-32.c
 create mode 100644 gcc/testsuite/gcc.target/riscv/scalar_crypto_intrinsic-64.c
 delete mode 100644 gcc/testsuite/gcc.target/riscv/zbb_32_bswap-1.c
 delete mode 100644 gcc/testsuite/gcc.target/riscv/zbb_bswap-1.c
 delete mode 100644 gcc/testsuite/gcc.target/riscv/zbb_bswap-2.c
 rename gcc/testsuite/gcc.target/riscv/{zbb_32_bswap-2.c => zbb_bswap16.c} (59%)
 delete mode 100644 gcc/testsuite/gcc.target/riscv/zbbw.c
 delete mode 100644 gcc/testsuite/gcc.target/riscv/zbc32.c
 delete mode 100644 gcc/testsuite/gcc.target/riscv/zbc64.c
 delete mode 100644 gcc/testsuite/gcc.target/riscv/zbkc32.c
 delete mode 100644 gcc/testsuite/gcc.target/riscv/zbkc64.c
 delete mode 100644 gcc/testsuite/gcc.target/riscv/zbkx32.c
 delete mode 100644 gcc/testsuite/gcc.target/riscv/zbkx64.c
 delete mode 100644 gcc/testsuite/gcc.target/riscv/zknd32-2.c
 delete mode 100644 gcc/testsuite/gcc.target/riscv/zknd64-2.c
 delete mode 100644 gcc/testsuite/gcc.target/riscv/zkne32-2.c
 delete mode 100644 gcc/testsuite/gcc.target/riscv/zkne64-2.c
 delete mode 100644 gcc/testsuite/gcc.target/riscv/zknh-sha256-32.c
 delete mode 100644 gcc/testsuite/gcc.target/riscv/zknh-sha256-64.c
 delete mode 100644 gcc/testsuite/gcc.target/riscv/zknh-sha512-32.c
 delete mode 100644 gcc/testsuite/gcc.target/riscv/zknh-sha512-64.c
 delete mode 100644 gcc/testsuite/gcc.target/riscv/zksed32-2.c
 delete mode 100644 gcc/testsuite/gcc.target/riscv/zksed64-2.c
 delete mode 100644 gcc/testsuite/gcc.target/riscv/zksh32.c
 delete mode 100644 gcc/testsuite/gcc.target/riscv/zksh64.c
  

Comments

Christoph Müllner Jan. 15, 2024, 3:16 p.m. UTC | #1
On Mon, Jan 15, 2024 at 9:35 AM Liao Shihua <shihua@iscas.ac.cn> wrote:
>
> Update v3 -> v4:
>   1.Typo fix.
>   2.Only test *intrinsic-32 on rv32 and *intrinsic-64 on rv64.
>   3.Update Copyright year to 2024.

Thanks, for fixing the rv32/rv64 issues!
I've tested this series: no regressions and all new tests pass.
I've also reviewed this series again, and I think it is ready.
I can push once a maintainer approves (e.g. Kito or Jeff).

Thanks for working on this!

>
> Update v2 -> v3:
>   1. Change pattern mode form X to GPR in orcb, clmul, and brev8.
>   2. Add emulated testsuite.
>   3. Removed duplicate testsuite between built-in and intrinsic.
>   4. Typo fix.
>
> Update v1 -> v2:
>   1. Rename *_intrinsic-* to *_intrinsic-XLEN.
>   2. Typo fix.
>   3. Intrinsics with immediate arguments will use marcos at O0 .
>
> It's a little patch add just provides a mapping from the RV intrinsics to the builtin
> names within GCC.
>
> Liao Shihua (3):
>   RISC-V: Remove the Scalar Bitmanip and Crypto Built-In function
>     testsuites
>   RISC-V: Add C intrinsic for Scalar Crypto Extension
>   RISC-V: Add C intrinsic for Scalar Bitmanip Extension
>
>  gcc/config.gcc                                |   2 +-
>  gcc/config/riscv/bitmanip.md                  |  10 +-
>  gcc/config/riscv/crypto.md                    |   4 +-
>  gcc/config/riscv/riscv-builtins.cc            |  22 ++
>  gcc/config/riscv/riscv-cmo.def                |  12 +-
>  gcc/config/riscv/riscv-ftypes.def             |   2 +
>  gcc/config/riscv/riscv-scalar-crypto.def      |  22 +-
>  gcc/config/riscv/riscv_bitmanip.h             | 297 +++++++++++++++++
>  gcc/config/riscv/riscv_crypto.h               | 309 ++++++++++++++++++
>  .../riscv/scalar_bitmanip_intrinsic-32.c      |  97 ++++++
>  .../scalar_bitmanip_intrinsic-64-emulated.c   |  33 ++
>  .../riscv/scalar_bitmanip_intrinsic-64.c      | 115 +++++++
>  .../riscv/scalar_crypto_intrinsic-32.c        | 115 +++++++
>  .../riscv/scalar_crypto_intrinsic-64.c        | 123 +++++++
>  .../gcc.target/riscv/zbb_32_bswap-1.c         |  11 -
>  gcc/testsuite/gcc.target/riscv/zbb_bswap-1.c  |  11 -
>  gcc/testsuite/gcc.target/riscv/zbb_bswap-2.c  |  12 -
>  .../riscv/{zbb_32_bswap-2.c => zbb_bswap16.c} |   3 +-
>  gcc/testsuite/gcc.target/riscv/zbbw.c         |  26 --
>  gcc/testsuite/gcc.target/riscv/zbc32.c        |  23 --
>  gcc/testsuite/gcc.target/riscv/zbc64.c        |  23 --
>  gcc/testsuite/gcc.target/riscv/zbkb32.c       |  18 -
>  gcc/testsuite/gcc.target/riscv/zbkb64.c       |   5 -
>  gcc/testsuite/gcc.target/riscv/zbkc32.c       |  17 -
>  gcc/testsuite/gcc.target/riscv/zbkc64.c       |  17 -
>  gcc/testsuite/gcc.target/riscv/zbkx32.c       |  18 -
>  gcc/testsuite/gcc.target/riscv/zbkx64.c       |  18 -
>  gcc/testsuite/gcc.target/riscv/zknd32-2.c     |  28 --
>  gcc/testsuite/gcc.target/riscv/zknd64-2.c     |  42 ---
>  gcc/testsuite/gcc.target/riscv/zkne32-2.c     |  28 --
>  gcc/testsuite/gcc.target/riscv/zkne64-2.c     |  34 --
>  .../gcc.target/riscv/zknh-sha256-32.c         |  10 -
>  .../gcc.target/riscv/zknh-sha256-64.c         |  28 --
>  .../gcc.target/riscv/zknh-sha512-32.c         |  42 ---
>  .../gcc.target/riscv/zknh-sha512-64.c         |  31 --
>  gcc/testsuite/gcc.target/riscv/zksed32-2.c    |  29 --
>  gcc/testsuite/gcc.target/riscv/zksed64-2.c    |  29 --
>  gcc/testsuite/gcc.target/riscv/zksh32.c       |  19 --
>  gcc/testsuite/gcc.target/riscv/zksh64.c       |  19 --
>  39 files changed, 1149 insertions(+), 555 deletions(-)
>  create mode 100644 gcc/config/riscv/riscv_bitmanip.h
>  create mode 100644 gcc/config/riscv/riscv_crypto.h
>  create mode 100644 gcc/testsuite/gcc.target/riscv/scalar_bitmanip_intrinsic-32.c
>  create mode 100644 gcc/testsuite/gcc.target/riscv/scalar_bitmanip_intrinsic-64-emulated.c
>  create mode 100644 gcc/testsuite/gcc.target/riscv/scalar_bitmanip_intrinsic-64.c
>  create mode 100644 gcc/testsuite/gcc.target/riscv/scalar_crypto_intrinsic-32.c
>  create mode 100644 gcc/testsuite/gcc.target/riscv/scalar_crypto_intrinsic-64.c
>  delete mode 100644 gcc/testsuite/gcc.target/riscv/zbb_32_bswap-1.c
>  delete mode 100644 gcc/testsuite/gcc.target/riscv/zbb_bswap-1.c
>  delete mode 100644 gcc/testsuite/gcc.target/riscv/zbb_bswap-2.c
>  rename gcc/testsuite/gcc.target/riscv/{zbb_32_bswap-2.c => zbb_bswap16.c} (59%)
>  delete mode 100644 gcc/testsuite/gcc.target/riscv/zbbw.c
>  delete mode 100644 gcc/testsuite/gcc.target/riscv/zbc32.c
>  delete mode 100644 gcc/testsuite/gcc.target/riscv/zbc64.c
>  delete mode 100644 gcc/testsuite/gcc.target/riscv/zbkc32.c
>  delete mode 100644 gcc/testsuite/gcc.target/riscv/zbkc64.c
>  delete mode 100644 gcc/testsuite/gcc.target/riscv/zbkx32.c
>  delete mode 100644 gcc/testsuite/gcc.target/riscv/zbkx64.c
>  delete mode 100644 gcc/testsuite/gcc.target/riscv/zknd32-2.c
>  delete mode 100644 gcc/testsuite/gcc.target/riscv/zknd64-2.c
>  delete mode 100644 gcc/testsuite/gcc.target/riscv/zkne32-2.c
>  delete mode 100644 gcc/testsuite/gcc.target/riscv/zkne64-2.c
>  delete mode 100644 gcc/testsuite/gcc.target/riscv/zknh-sha256-32.c
>  delete mode 100644 gcc/testsuite/gcc.target/riscv/zknh-sha256-64.c
>  delete mode 100644 gcc/testsuite/gcc.target/riscv/zknh-sha512-32.c
>  delete mode 100644 gcc/testsuite/gcc.target/riscv/zknh-sha512-64.c
>  delete mode 100644 gcc/testsuite/gcc.target/riscv/zksed32-2.c
>  delete mode 100644 gcc/testsuite/gcc.target/riscv/zksed64-2.c
>  delete mode 100644 gcc/testsuite/gcc.target/riscv/zksh32.c
>  delete mode 100644 gcc/testsuite/gcc.target/riscv/zksh64.c
>
> --
> 2.34.1
>
  
Kito Cheng Jan. 15, 2024, 3:34 p.m. UTC | #2
Ok :)


Christoph Müllner <christoph.muellner@vrull.eu> 於 2024年1月15日 週一 23:17 寫道:

> On Mon, Jan 15, 2024 at 9:35 AM Liao Shihua <shihua@iscas.ac.cn> wrote:
> >
> > Update v3 -> v4:
> >   1.Typo fix.
> >   2.Only test *intrinsic-32 on rv32 and *intrinsic-64 on rv64.
> >   3.Update Copyright year to 2024.
>
> Thanks, for fixing the rv32/rv64 issues!
> I've tested this series: no regressions and all new tests pass.
> I've also reviewed this series again, and I think it is ready.
> I can push once a maintainer approves (e.g. Kito or Jeff).
>
> Thanks for working on this!
>
> >
> > Update v2 -> v3:
> >   1. Change pattern mode form X to GPR in orcb, clmul, and brev8.
> >   2. Add emulated testsuite.
> >   3. Removed duplicate testsuite between built-in and intrinsic.
> >   4. Typo fix.
> >
> > Update v1 -> v2:
> >   1. Rename *_intrinsic-* to *_intrinsic-XLEN.
> >   2. Typo fix.
> >   3. Intrinsics with immediate arguments will use marcos at O0 .
> >
> > It's a little patch add just provides a mapping from the RV intrinsics
> to the builtin
> > names within GCC.
> >
> > Liao Shihua (3):
> >   RISC-V: Remove the Scalar Bitmanip and Crypto Built-In function
> >     testsuites
> >   RISC-V: Add C intrinsic for Scalar Crypto Extension
> >   RISC-V: Add C intrinsic for Scalar Bitmanip Extension
> >
> >  gcc/config.gcc                                |   2 +-
> >  gcc/config/riscv/bitmanip.md                  |  10 +-
> >  gcc/config/riscv/crypto.md                    |   4 +-
> >  gcc/config/riscv/riscv-builtins.cc            |  22 ++
> >  gcc/config/riscv/riscv-cmo.def                |  12 +-
> >  gcc/config/riscv/riscv-ftypes.def             |   2 +
> >  gcc/config/riscv/riscv-scalar-crypto.def      |  22 +-
> >  gcc/config/riscv/riscv_bitmanip.h             | 297 +++++++++++++++++
> >  gcc/config/riscv/riscv_crypto.h               | 309 ++++++++++++++++++
> >  .../riscv/scalar_bitmanip_intrinsic-32.c      |  97 ++++++
> >  .../scalar_bitmanip_intrinsic-64-emulated.c   |  33 ++
> >  .../riscv/scalar_bitmanip_intrinsic-64.c      | 115 +++++++
> >  .../riscv/scalar_crypto_intrinsic-32.c        | 115 +++++++
> >  .../riscv/scalar_crypto_intrinsic-64.c        | 123 +++++++
> >  .../gcc.target/riscv/zbb_32_bswap-1.c         |  11 -
> >  gcc/testsuite/gcc.target/riscv/zbb_bswap-1.c  |  11 -
> >  gcc/testsuite/gcc.target/riscv/zbb_bswap-2.c  |  12 -
> >  .../riscv/{zbb_32_bswap-2.c => zbb_bswap16.c} |   3 +-
> >  gcc/testsuite/gcc.target/riscv/zbbw.c         |  26 --
> >  gcc/testsuite/gcc.target/riscv/zbc32.c        |  23 --
> >  gcc/testsuite/gcc.target/riscv/zbc64.c        |  23 --
> >  gcc/testsuite/gcc.target/riscv/zbkb32.c       |  18 -
> >  gcc/testsuite/gcc.target/riscv/zbkb64.c       |   5 -
> >  gcc/testsuite/gcc.target/riscv/zbkc32.c       |  17 -
> >  gcc/testsuite/gcc.target/riscv/zbkc64.c       |  17 -
> >  gcc/testsuite/gcc.target/riscv/zbkx32.c       |  18 -
> >  gcc/testsuite/gcc.target/riscv/zbkx64.c       |  18 -
> >  gcc/testsuite/gcc.target/riscv/zknd32-2.c     |  28 --
> >  gcc/testsuite/gcc.target/riscv/zknd64-2.c     |  42 ---
> >  gcc/testsuite/gcc.target/riscv/zkne32-2.c     |  28 --
> >  gcc/testsuite/gcc.target/riscv/zkne64-2.c     |  34 --
> >  .../gcc.target/riscv/zknh-sha256-32.c         |  10 -
> >  .../gcc.target/riscv/zknh-sha256-64.c         |  28 --
> >  .../gcc.target/riscv/zknh-sha512-32.c         |  42 ---
> >  .../gcc.target/riscv/zknh-sha512-64.c         |  31 --
> >  gcc/testsuite/gcc.target/riscv/zksed32-2.c    |  29 --
> >  gcc/testsuite/gcc.target/riscv/zksed64-2.c    |  29 --
> >  gcc/testsuite/gcc.target/riscv/zksh32.c       |  19 --
> >  gcc/testsuite/gcc.target/riscv/zksh64.c       |  19 --
> >  39 files changed, 1149 insertions(+), 555 deletions(-)
> >  create mode 100644 gcc/config/riscv/riscv_bitmanip.h
> >  create mode 100644 gcc/config/riscv/riscv_crypto.h
> >  create mode 100644
> gcc/testsuite/gcc.target/riscv/scalar_bitmanip_intrinsic-32.c
> >  create mode 100644
> gcc/testsuite/gcc.target/riscv/scalar_bitmanip_intrinsic-64-emulated.c
> >  create mode 100644
> gcc/testsuite/gcc.target/riscv/scalar_bitmanip_intrinsic-64.c
> >  create mode 100644
> gcc/testsuite/gcc.target/riscv/scalar_crypto_intrinsic-32.c
> >  create mode 100644
> gcc/testsuite/gcc.target/riscv/scalar_crypto_intrinsic-64.c
> >  delete mode 100644 gcc/testsuite/gcc.target/riscv/zbb_32_bswap-1.c
> >  delete mode 100644 gcc/testsuite/gcc.target/riscv/zbb_bswap-1.c
> >  delete mode 100644 gcc/testsuite/gcc.target/riscv/zbb_bswap-2.c
> >  rename gcc/testsuite/gcc.target/riscv/{zbb_32_bswap-2.c =>
> zbb_bswap16.c} (59%)
> >  delete mode 100644 gcc/testsuite/gcc.target/riscv/zbbw.c
> >  delete mode 100644 gcc/testsuite/gcc.target/riscv/zbc32.c
> >  delete mode 100644 gcc/testsuite/gcc.target/riscv/zbc64.c
> >  delete mode 100644 gcc/testsuite/gcc.target/riscv/zbkc32.c
> >  delete mode 100644 gcc/testsuite/gcc.target/riscv/zbkc64.c
> >  delete mode 100644 gcc/testsuite/gcc.target/riscv/zbkx32.c
> >  delete mode 100644 gcc/testsuite/gcc.target/riscv/zbkx64.c
> >  delete mode 100644 gcc/testsuite/gcc.target/riscv/zknd32-2.c
> >  delete mode 100644 gcc/testsuite/gcc.target/riscv/zknd64-2.c
> >  delete mode 100644 gcc/testsuite/gcc.target/riscv/zkne32-2.c
> >  delete mode 100644 gcc/testsuite/gcc.target/riscv/zkne64-2.c
> >  delete mode 100644 gcc/testsuite/gcc.target/riscv/zknh-sha256-32.c
> >  delete mode 100644 gcc/testsuite/gcc.target/riscv/zknh-sha256-64.c
> >  delete mode 100644 gcc/testsuite/gcc.target/riscv/zknh-sha512-32.c
> >  delete mode 100644 gcc/testsuite/gcc.target/riscv/zknh-sha512-64.c
> >  delete mode 100644 gcc/testsuite/gcc.target/riscv/zksed32-2.c
> >  delete mode 100644 gcc/testsuite/gcc.target/riscv/zksed64-2.c
> >  delete mode 100644 gcc/testsuite/gcc.target/riscv/zksh32.c
> >  delete mode 100644 gcc/testsuite/gcc.target/riscv/zksh64.c
> >
> > --
> > 2.34.1
> >
>
  
Christoph Müllner Jan. 15, 2024, 3:49 p.m. UTC | #3
On Mon, Jan 15, 2024 at 4:35 PM Kito Cheng <kito.cheng@gmail.com> wrote:
>
> Ok :)

I've re-created changelog entries in commit messages (commit hook
rejected the commits)
and pushed.

Thanks,
Christoph


>
>
> Christoph Müllner <christoph.muellner@vrull.eu> 於 2024年1月15日 週一 23:17 寫道:
>>
>> On Mon, Jan 15, 2024 at 9:35 AM Liao Shihua <shihua@iscas.ac.cn> wrote:
>> >
>> > Update v3 -> v4:
>> >   1.Typo fix.
>> >   2.Only test *intrinsic-32 on rv32 and *intrinsic-64 on rv64.
>> >   3.Update Copyright year to 2024.
>>
>> Thanks, for fixing the rv32/rv64 issues!
>> I've tested this series: no regressions and all new tests pass.
>> I've also reviewed this series again, and I think it is ready.
>> I can push once a maintainer approves (e.g. Kito or Jeff).
>>
>> Thanks for working on this!
>>
>> >
>> > Update v2 -> v3:
>> >   1. Change pattern mode form X to GPR in orcb, clmul, and brev8.
>> >   2. Add emulated testsuite.
>> >   3. Removed duplicate testsuite between built-in and intrinsic.
>> >   4. Typo fix.
>> >
>> > Update v1 -> v2:
>> >   1. Rename *_intrinsic-* to *_intrinsic-XLEN.
>> >   2. Typo fix.
>> >   3. Intrinsics with immediate arguments will use marcos at O0 .
>> >
>> > It's a little patch add just provides a mapping from the RV intrinsics to the builtin
>> > names within GCC.
>> >
>> > Liao Shihua (3):
>> >   RISC-V: Remove the Scalar Bitmanip and Crypto Built-In function
>> >     testsuites
>> >   RISC-V: Add C intrinsic for Scalar Crypto Extension
>> >   RISC-V: Add C intrinsic for Scalar Bitmanip Extension
>> >
>> >  gcc/config.gcc                                |   2 +-
>> >  gcc/config/riscv/bitmanip.md                  |  10 +-
>> >  gcc/config/riscv/crypto.md                    |   4 +-
>> >  gcc/config/riscv/riscv-builtins.cc            |  22 ++
>> >  gcc/config/riscv/riscv-cmo.def                |  12 +-
>> >  gcc/config/riscv/riscv-ftypes.def             |   2 +
>> >  gcc/config/riscv/riscv-scalar-crypto.def      |  22 +-
>> >  gcc/config/riscv/riscv_bitmanip.h             | 297 +++++++++++++++++
>> >  gcc/config/riscv/riscv_crypto.h               | 309 ++++++++++++++++++
>> >  .../riscv/scalar_bitmanip_intrinsic-32.c      |  97 ++++++
>> >  .../scalar_bitmanip_intrinsic-64-emulated.c   |  33 ++
>> >  .../riscv/scalar_bitmanip_intrinsic-64.c      | 115 +++++++
>> >  .../riscv/scalar_crypto_intrinsic-32.c        | 115 +++++++
>> >  .../riscv/scalar_crypto_intrinsic-64.c        | 123 +++++++
>> >  .../gcc.target/riscv/zbb_32_bswap-1.c         |  11 -
>> >  gcc/testsuite/gcc.target/riscv/zbb_bswap-1.c  |  11 -
>> >  gcc/testsuite/gcc.target/riscv/zbb_bswap-2.c  |  12 -
>> >  .../riscv/{zbb_32_bswap-2.c => zbb_bswap16.c} |   3 +-
>> >  gcc/testsuite/gcc.target/riscv/zbbw.c         |  26 --
>> >  gcc/testsuite/gcc.target/riscv/zbc32.c        |  23 --
>> >  gcc/testsuite/gcc.target/riscv/zbc64.c        |  23 --
>> >  gcc/testsuite/gcc.target/riscv/zbkb32.c       |  18 -
>> >  gcc/testsuite/gcc.target/riscv/zbkb64.c       |   5 -
>> >  gcc/testsuite/gcc.target/riscv/zbkc32.c       |  17 -
>> >  gcc/testsuite/gcc.target/riscv/zbkc64.c       |  17 -
>> >  gcc/testsuite/gcc.target/riscv/zbkx32.c       |  18 -
>> >  gcc/testsuite/gcc.target/riscv/zbkx64.c       |  18 -
>> >  gcc/testsuite/gcc.target/riscv/zknd32-2.c     |  28 --
>> >  gcc/testsuite/gcc.target/riscv/zknd64-2.c     |  42 ---
>> >  gcc/testsuite/gcc.target/riscv/zkne32-2.c     |  28 --
>> >  gcc/testsuite/gcc.target/riscv/zkne64-2.c     |  34 --
>> >  .../gcc.target/riscv/zknh-sha256-32.c         |  10 -
>> >  .../gcc.target/riscv/zknh-sha256-64.c         |  28 --
>> >  .../gcc.target/riscv/zknh-sha512-32.c         |  42 ---
>> >  .../gcc.target/riscv/zknh-sha512-64.c         |  31 --
>> >  gcc/testsuite/gcc.target/riscv/zksed32-2.c    |  29 --
>> >  gcc/testsuite/gcc.target/riscv/zksed64-2.c    |  29 --
>> >  gcc/testsuite/gcc.target/riscv/zksh32.c       |  19 --
>> >  gcc/testsuite/gcc.target/riscv/zksh64.c       |  19 --
>> >  39 files changed, 1149 insertions(+), 555 deletions(-)
>> >  create mode 100644 gcc/config/riscv/riscv_bitmanip.h
>> >  create mode 100644 gcc/config/riscv/riscv_crypto.h
>> >  create mode 100644 gcc/testsuite/gcc.target/riscv/scalar_bitmanip_intrinsic-32.c
>> >  create mode 100644 gcc/testsuite/gcc.target/riscv/scalar_bitmanip_intrinsic-64-emulated.c
>> >  create mode 100644 gcc/testsuite/gcc.target/riscv/scalar_bitmanip_intrinsic-64.c
>> >  create mode 100644 gcc/testsuite/gcc.target/riscv/scalar_crypto_intrinsic-32.c
>> >  create mode 100644 gcc/testsuite/gcc.target/riscv/scalar_crypto_intrinsic-64.c
>> >  delete mode 100644 gcc/testsuite/gcc.target/riscv/zbb_32_bswap-1.c
>> >  delete mode 100644 gcc/testsuite/gcc.target/riscv/zbb_bswap-1.c
>> >  delete mode 100644 gcc/testsuite/gcc.target/riscv/zbb_bswap-2.c
>> >  rename gcc/testsuite/gcc.target/riscv/{zbb_32_bswap-2.c => zbb_bswap16.c} (59%)
>> >  delete mode 100644 gcc/testsuite/gcc.target/riscv/zbbw.c
>> >  delete mode 100644 gcc/testsuite/gcc.target/riscv/zbc32.c
>> >  delete mode 100644 gcc/testsuite/gcc.target/riscv/zbc64.c
>> >  delete mode 100644 gcc/testsuite/gcc.target/riscv/zbkc32.c
>> >  delete mode 100644 gcc/testsuite/gcc.target/riscv/zbkc64.c
>> >  delete mode 100644 gcc/testsuite/gcc.target/riscv/zbkx32.c
>> >  delete mode 100644 gcc/testsuite/gcc.target/riscv/zbkx64.c
>> >  delete mode 100644 gcc/testsuite/gcc.target/riscv/zknd32-2.c
>> >  delete mode 100644 gcc/testsuite/gcc.target/riscv/zknd64-2.c
>> >  delete mode 100644 gcc/testsuite/gcc.target/riscv/zkne32-2.c
>> >  delete mode 100644 gcc/testsuite/gcc.target/riscv/zkne64-2.c
>> >  delete mode 100644 gcc/testsuite/gcc.target/riscv/zknh-sha256-32.c
>> >  delete mode 100644 gcc/testsuite/gcc.target/riscv/zknh-sha256-64.c
>> >  delete mode 100644 gcc/testsuite/gcc.target/riscv/zknh-sha512-32.c
>> >  delete mode 100644 gcc/testsuite/gcc.target/riscv/zknh-sha512-64.c
>> >  delete mode 100644 gcc/testsuite/gcc.target/riscv/zksed32-2.c
>> >  delete mode 100644 gcc/testsuite/gcc.target/riscv/zksed64-2.c
>> >  delete mode 100644 gcc/testsuite/gcc.target/riscv/zksh32.c
>> >  delete mode 100644 gcc/testsuite/gcc.target/riscv/zksh64.c
>> >
>> > --
>> > 2.34.1
>> >