]> git.ipfire.org Git - thirdparty/gcc.git/commit
RISC-V: Preserve arch version info during normalizing arch string
authorKito Cheng <kito.cheng@sifive.com>
Mon, 29 Jun 2020 09:52:42 +0000 (17:52 +0800)
committerGiuliano Belinassi <giuliano.belinassi@usp.br>
Mon, 17 Aug 2020 16:15:40 +0000 (13:15 -0300)
commit95fe407ddc6bb12e7a6780165e304a118030b314
tree3122e83d9b4902a394be4243964fbbb7c9586669
parent2739edd53c2c1696a4d24c7e9f7a9c88848ccc9a
RISC-V: Preserve arch version info during normalizing arch string

- Arch version should preserved if user explicitly specified the version.
  e.g.
    After normalize, -march=rv32if3d should be -march=rv32i_f3p0d
    instead of-march=rv32ifd.

gcc/ChangeLog:

* common/config/riscv/riscv-common.c (riscv_subset_t): New field
added.
(riscv_subset_list::parsing_subset_version): Add parameter for
indicate explicitly version, and handle explicitly version.
(riscv_subset_list::handle_implied_ext): Ditto.
(riscv_subset_list::add): Ditto.
(riscv_subset_t::riscv_subset_t): Init new field.
(riscv_subset_list::to_string): Always output version info if version
explicitly specified.
(riscv_subset_list::parsing_subset_version): Handle explicitly
arch version.
(riscv_subset_list::parse_std_ext): Ditto.
(riscv_subset_list::parse_multiletter_ext): Ditto.

gcc/testsuite/ChangeLog:

* gcc.target/riscv/attribute-13.c: New.
gcc/common/config/riscv/riscv-common.c
gcc/testsuite/gcc.target/riscv/attribute-13.c [new file with mode: 0644]