diff options
author | Christoph Müllner <christoph.muellner@vrull.eu> | 2024-04-29 00:46:06 +0200 |
---|---|---|
committer | Christoph Müllner <christoph.muellner@vrull.eu> | 2024-04-29 09:07:48 +0200 |
commit | 285300eb928b171236e895f28c960ad02dcb0d67 (patch) | |
tree | a1e8e7716781ada9f999bb15e26e0cc75feef2a7 /gcc/common | |
parent | 11c13111ac64a035d6c4ea6c118eff4ece7a9d9b (diff) | |
download | gcc-285300eb928b171236e895f28c960ad02dcb0d67.zip gcc-285300eb928b171236e895f28c960ad02dcb0d67.tar.gz gcc-285300eb928b171236e895f28c960ad02dcb0d67.tar.bz2 |
RISC-V: Fix parsing of Zic* extensions
The extension parsing table entries for a range of Zic* extensions
does not match the mask definition in riscv.opt.
This results in broken TARGET_ZIC* macros, because the values of
riscv_zi_subext and riscv_zicmo_subext are set wrong.
This patch fixes this by moving Zic64b into riscv_zicmo_subext
and all other affected Zic* extensions to riscv_zi_subext.
gcc/ChangeLog:
* common/config/riscv/riscv-common.cc: Move ziccamoa, ziccif,
zicclsm, and ziccrse into riscv_zi_subext.
* config/riscv/riscv.opt: Define MASK_ZIC64B for
riscv_ziccmo_subext.
Signed-off-by: Christoph Müllner <christoph.muellner@vrull.eu>
Diffstat (limited to 'gcc/common')
-rw-r--r-- | gcc/common/config/riscv/riscv-common.cc | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/gcc/common/config/riscv/riscv-common.cc b/gcc/common/config/riscv/riscv-common.cc index 43b7549..8cc0e72 100644 --- a/gcc/common/config/riscv/riscv-common.cc +++ b/gcc/common/config/riscv/riscv-common.cc @@ -1638,15 +1638,15 @@ static const riscv_ext_flag_table_t riscv_ext_flag_table[] = {"zihintntl", &gcc_options::x_riscv_zi_subext, MASK_ZIHINTNTL}, {"zihintpause", &gcc_options::x_riscv_zi_subext, MASK_ZIHINTPAUSE}, + {"ziccamoa", &gcc_options::x_riscv_zi_subext, MASK_ZICCAMOA}, + {"ziccif", &gcc_options::x_riscv_zi_subext, MASK_ZICCIF}, + {"zicclsm", &gcc_options::x_riscv_zi_subext, MASK_ZICCLSM}, + {"ziccrse", &gcc_options::x_riscv_zi_subext, MASK_ZICCRSE}, {"zicboz", &gcc_options::x_riscv_zicmo_subext, MASK_ZICBOZ}, {"zicbom", &gcc_options::x_riscv_zicmo_subext, MASK_ZICBOM}, {"zicbop", &gcc_options::x_riscv_zicmo_subext, MASK_ZICBOP}, {"zic64b", &gcc_options::x_riscv_zicmo_subext, MASK_ZIC64B}, - {"ziccamoa", &gcc_options::x_riscv_zicmo_subext, MASK_ZICCAMOA}, - {"ziccif", &gcc_options::x_riscv_zicmo_subext, MASK_ZICCIF}, - {"zicclsm", &gcc_options::x_riscv_zicmo_subext, MASK_ZICCLSM}, - {"ziccrse", &gcc_options::x_riscv_zicmo_subext, MASK_ZICCRSE}, {"zve32x", &gcc_options::x_target_flags, MASK_VECTOR}, {"zve32f", &gcc_options::x_target_flags, MASK_VECTOR}, |