[gcc r12-5774] RISC-V: Add implied defines of Zk, Zkn and Zks
Kito Cheng
kito@gcc.gnu.org
Fri Dec 3 16:11:13 GMT 2021
https://gcc.gnu.org/g:0962bff477a3d5134cb1ac23852da694529725e0
commit r12-5774-g0962bff477a3d5134cb1ac23852da694529725e0
Author: SiYu Wu <siyu@isrc.iscas.ac.cn>
Date: Mon Nov 22 16:19:10 2021 +0800
RISC-V: Add implied defines of Zk, Zkn and Zks
gcc/ChangeLog:
2021-11-22 SiYu Wu <siyu@isrc.iscas.ac.cn>
* common/config/riscv/riscv-common.c (riscv_implied_info):
Add K-ext related entry.
(riscv_supported_std_ext): Add 'k'.
* config/riscv/arch-canonicalize (CANONICAL_ORDER): Add 'k'.
(IMPLIED_EXT): Add K-ext related entry.
Diff:
---
gcc/common/config/riscv/riscv-common.c | 16 +++++++++++++++-
gcc/config/riscv/arch-canonicalize | 16 +++++++++++++++-
2 files changed, 30 insertions(+), 2 deletions(-)
diff --git a/gcc/common/config/riscv/riscv-common.c b/gcc/common/config/riscv/riscv-common.c
index 14dc6057ecd..f352ff4ce7b 100644
--- a/gcc/common/config/riscv/riscv-common.c
+++ b/gcc/common/config/riscv/riscv-common.c
@@ -50,6 +50,20 @@ static const riscv_implied_info_t riscv_implied_info[] =
{"d", "f"},
{"f", "zicsr"},
{"d", "zicsr"},
+ {"zk", "zkn"},
+ {"zk", "zkr"},
+ {"zk", "zkt"},
+ {"zkn", "zbkb"},
+ {"zkn", "zbkc"},
+ {"zkn", "zbkx"},
+ {"zkn", "zkne"},
+ {"zkn", "zknd"},
+ {"zkn", "zknh"},
+ {"zks", "zbkb"},
+ {"zks", "zbkc"},
+ {"zks", "zbkx"},
+ {"zks", "zksed"},
+ {"zks", "zksh"},
{NULL, NULL}
};
@@ -502,7 +516,7 @@ riscv_subset_list::lookup (const char *subset, int major_version,
static const char *
riscv_supported_std_ext (void)
{
- return "mafdqlcbjtpvn";
+ return "mafdqlcbjktpvn";
}
/* Parsing subset version.
diff --git a/gcc/config/riscv/arch-canonicalize b/gcc/config/riscv/arch-canonicalize
index c7df3c8a313..90dbd194801 100755
--- a/gcc/config/riscv/arch-canonicalize
+++ b/gcc/config/riscv/arch-canonicalize
@@ -28,7 +28,7 @@ import itertools
from functools import reduce
-CANONICAL_ORDER = "imafdgqlcbjtpvn"
+CANONICAL_ORDER = "imafdgqlcbjktpvn"
LONG_EXT_PREFIXES = ['z', 's', 'h', 'x']
#
@@ -36,6 +36,20 @@ LONG_EXT_PREFIXES = ['z', 's', 'h', 'x']
#
IMPLIED_EXT = {
"d" : ["f"],
+ "zk" : ["zkn"],
+ "zk" : ["zkr"],
+ "zk" : ["zkt"],
+ "zkn" : ["zbkb"],
+ "zkn" : ["zbkc"],
+ "zkn" : ["zbkx"],
+ "zkn" : ["zkne"],
+ "zkn" : ["zknd"],
+ "zkn" : ["zknh"],
+ "zks" : ["zbkb"],
+ "zks" : ["zbkc"],
+ "zks" : ["zbkx"],
+ "zks" : ["zksed"],
+ "zks" : ["zksh"],
}
def arch_canonicalize(arch):
More information about the Gcc-cvs
mailing list