From: SiYu Wu <s...@isrc.iscas.ac.cn> --- gcc/common/config/riscv/riscv-common.c | 6 ++++++ gcc/config/riscv/riscv-opts.h | 6 ++++++ 2 files changed, 12 insertions(+)
diff --git a/gcc/common/config/riscv/riscv-common.c b/gcc/common/config/riscv/riscv-common.c index b2b85180ffe..18c09591c42 100644 --- a/gcc/common/config/riscv/riscv-common.c +++ b/gcc/common/config/riscv/riscv-common.c @@ -106,6 +106,9 @@ static const struct riscv_ext_version riscv_ext_version_table[] = {"zbc", ISA_SPEC_CLASS_NONE, 1, 0}, {"zbs", ISA_SPEC_CLASS_NONE, 1, 0}, + {"zbkb", ISA_SPEC_CLASS_NONE, 1, 0}, + {"zbkc", ISA_SPEC_CLASS_NONE, 1, 0}, + {"zbkx", ISA_SPEC_CLASS_NONE, 1, 0}, {"zkne", ISA_SPEC_CLASS_NONE, 1, 0}, {"zknd", ISA_SPEC_CLASS_NONE, 1, 0}, {"zknh", ISA_SPEC_CLASS_NONE, 1, 0}, @@ -924,6 +927,9 @@ static const riscv_ext_flag_table_t riscv_ext_flag_table[] = {"zbc", &gcc_options::x_riscv_zb_subext, MASK_ZBC}, {"zbs", &gcc_options::x_riscv_zb_subext, MASK_ZBS}, + {"zbkb", &gcc_options::x_riscv_zk_subext, MASK_ZBKB}, + {"zbkc", &gcc_options::x_riscv_zk_subext, MASK_ZBKC}, + {"zbkx", &gcc_options::x_riscv_zk_subext, MASK_ZBKX}, {"zknd", &gcc_options::x_riscv_zk_subext, MASK_ZKND}, {"zkne", &gcc_options::x_riscv_zk_subext, MASK_ZKNE}, {"zknh", &gcc_options::x_riscv_zk_subext, MASK_ZKNH}, diff --git a/gcc/config/riscv/riscv-opts.h b/gcc/config/riscv/riscv-opts.h index df254d1015e..dde426a7348 100644 --- a/gcc/config/riscv/riscv-opts.h +++ b/gcc/config/riscv/riscv-opts.h @@ -83,6 +83,9 @@ enum stack_protector_guard { #define TARGET_ZBC ((riscv_zb_subext & MASK_ZBC) != 0) #define TARGET_ZBS ((riscv_zb_subext & MASK_ZBS) != 0) +#define MASK_ZBKB (1 << 2) +#define MASK_ZBKC (1 << 3) +#define MASK_ZBKX (1 << 4) #define MASK_ZKNE (1 << 5) #define MASK_ZKND (1 << 6) #define MASK_ZKNH (1 << 7) @@ -91,6 +94,9 @@ enum stack_protector_guard { #define MASK_ZKSH (1 << 10) #define MASK_ZKT (1 << 11) +#define TARGET_ZBKB ((riscv_zk_subext & MASK_ZBKB) != 0) +#define TARGET_ZBKC ((riscv_zk_subext & MASK_ZBKC) != 0) +#define TARGET_ZBKX ((riscv_zk_subext & MASK_ZBKX) != 0) #define TARGET_ZKNE ((riscv_zk_subext & MASK_ZKNE) != 0) #define TARGET_ZKND ((riscv_zk_subext & MASK_ZKND) != 0) #define TARGET_ZKNH ((riscv_zk_subext & MASK_ZKNH) != 0) -- 2.25.1