aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFeng Wang <wangfeng@eswincomputing.com>2023-12-13 09:12:47 +0000
committerFeng Wang <wangfeng@eswincomputing.com>2023-12-13 13:15:04 +0000
commit6a737ec24a98b3aa13605988c54c827f1bdae308 (patch)
treee6d490b148cd3587dbaef6808e6681103949db50
parentad537ccd525fd3af759febd6c0936f82de808a70 (diff)
downloadgcc-6a737ec24a98b3aa13605988c54c827f1bdae308.zip
gcc-6a737ec24a98b3aa13605988c54c827f1bdae308.tar.gz
gcc-6a737ec24a98b3aa13605988c54c827f1bdae308.tar.bz2
RISC-V:Add crypto vector implied ISA info.
Due to the crypto vector entension is depend on the Vector extension, so add the implied ISA info with the corresponding crypto vector extension. gcc/ChangeLog: * common/config/riscv/riscv-common.cc: Modify implied ISA info. * config/riscv/arch-canonicalize: Add crypto vector implied info.
-rw-r--r--gcc/common/config/riscv/riscv-common.cc9
-rwxr-xr-xgcc/config/riscv/arch-canonicalize21
2 files changed, 24 insertions, 6 deletions
diff --git a/gcc/common/config/riscv/riscv-common.cc b/gcc/common/config/riscv/riscv-common.cc
index 4d5a2f8..7698759 100644
--- a/gcc/common/config/riscv/riscv-common.cc
+++ b/gcc/common/config/riscv/riscv-common.cc
@@ -145,6 +145,15 @@ static const riscv_implied_info_t riscv_implied_info[] =
{"zvksc", "zvbc"},
{"zvksg", "zvks"},
{"zvksg", "zvkg"},
+ {"zvbb", "zvkb"},
+ {"zvbc", "zve64x"},
+ {"zvkb", "zve32x"},
+ {"zvkg", "zve32x"},
+ {"zvkned", "zve32x"},
+ {"zvknha", "zve32x"},
+ {"zvknhb", "zve64x"},
+ {"zvksed", "zve32x"},
+ {"zvksh", "zve32x"},
{"zfh", "zfhmin"},
{"zfhmin", "f"},
diff --git a/gcc/config/riscv/arch-canonicalize b/gcc/config/riscv/arch-canonicalize
index ea2f67a..a8f47a1 100755
--- a/gcc/config/riscv/arch-canonicalize
+++ b/gcc/config/riscv/arch-canonicalize
@@ -69,12 +69,21 @@ IMPLIED_EXT = {
"zvl32768b" : ["zvl16384b"],
"zvl65536b" : ["zvl32768b"],
- "zvkn" : ["zvkned", "zvknhb", "zvbb", "zvkt"],
- "zvknc" : ["zvkn", "zvbc"],
- "zvkng" : ["zvkn", "zvkg"],
- "zvks" : ["zvksed", "zvksh", "zvbb", "zvkt"],
- "zvksc" : ["zvks", "zvbc"],
- "zvksg" : ["zvks", "zvkg"],
+ "zvkn" : ["zvkned", "zvknhb", "zvkb", "zvkt"],
+ "zvknc" : ["zvkn", "zvbc"],
+ "zvkng" : ["zvkn", "zvkg"],
+ "zvks" : ["zvksed", "zvksh", "zvkb", "zvkt"],
+ "zvksc" : ["zvks", "zvbc"],
+ "zvksg" : ["zvks", "zvkg"],
+ "zvbb" : ["zvkb"],
+ "zvbc" : ["zve64x"],
+ "zvkb" : ["zve32x"],
+ "zvkg" : ["zve32x"],
+ "zvkned" : ["zve32x"],
+ "zvknha" : ["zve32x"],
+ "zvknhb" : ["zve64x"],
+ "zvksed" : ["zve32x"],
+ "zvksh" : ["zve32x"],
}
def arch_canonicalize(arch, isa_spec):