[v2,0/2] RISC-V: add gcc support for Scalar Cryptography v1.0.0-rc6

Message ID 20211122081910.1545117-1-siyu@isrc.iscas.ac.cn


siyu@isrc.iscas.ac.cn Nov. 22, 2021, 8:19 a.m. UTC
  From: SiYu Wu <siyu@isrc.iscas.ac.cn>

This patch add gcc backend support for RISC-V Scalar Cryptography 
Extension (k-ext), including machine description, builtins defines and 
testcases for each k-ext's subset.

A note about Zbkx: The Zbkx should be implemented in bitmanip's Zbp, but 
since zbp is not included in the bitmanip spec v1.0, and crypto's v1.0 
release will earlier than bitmanip's next release, so for now we 
implementing it here.

Version logs:

v2: As Kito mentions, now this patch only includes the arch string related 
stuff, the builtins and md changes is not included, waiting for the builtin
and intrinsic added to the spec. Also removed the unnecessary patches and add

SiYu Wu (2):
  RISC-V: Add option defines for Scalar Cryptography
  RISC-V: Add implied defines of Zk, Zkn and Zks

 gcc/common/config/riscv/riscv-common.c | 38 +++++++++++++++++++++++++-
 gcc/config/riscv/arch-canonicalize     | 16 ++++++++++-
 gcc/config/riscv/riscv-opts.h          | 22 +++++++++++++++
 gcc/config/riscv/riscv.opt             |  3 ++
 4 files changed, 77 insertions(+), 2 deletions(-)