diff options
author | Kito Cheng <kito.cheng@sifive.com> | 2020-04-10 17:20:19 +0800 |
---|---|---|
committer | Kito Cheng <kito.cheng@sifive.com> | 2020-05-19 14:31:58 +0800 |
commit | f908b69cfd71b85a602424e9fea882108e02cb8a (patch) | |
tree | 606cae2c4bff55c2eb092bdccfd1ab1d3e38601a /gcc/c/c-parser.c | |
parent | ca1a9763a1f635d2687ebd5009dd61d4fd0ab5fb (diff) | |
download | gcc-f908b69cfd71b85a602424e9fea882108e02cb8a.zip gcc-f908b69cfd71b85a602424e9fea882108e02cb8a.tar.gz gcc-f908b69cfd71b85a602424e9fea882108e02cb8a.tar.bz2 |
RISC-V: Handle implied extension for -march parser.
- Implied rule are introduced into latest RISC-V ISA spec.
- Only implemented D implied F-extension. Zicsr and Zifence are not
implement yet, so the rule not included in this patch.
- Pass preprocessed arch string to arch.
- Verified with binutils 2.30 and 2.34.
gcc/ChangeLog
* common/config/riscv/riscv-common.c (riscv_implied_info_t): New.
(riscv_implied_info): New.
(riscv_subset_list): Add handle_implied_ext.
(riscv_subset_list::to_string): New parameter version_p to
control output format.
(riscv_subset_list::handle_implied_ext): New.
(riscv_subset_list::parse_std_ext): Call handle_implied_ext.
(riscv_arch_str): New parameter version_p to control output format.
(riscv_expand_arch): New.
* config/riscv/riscv-protos.h (riscv_arch_str): New parameter,
version_p.
* config/riscv/riscv.h (riscv_expand_arch): New,
(EXTRA_SPEC_FUNCTIONS): Define.
(ASM_SPEC): Transform -march= via riscv_expand_arch.
gcc/testsuite/ChangeLog
* gcc.target/riscv/arch-6.c: New.
* gcc.target/riscv/attribute-11.c: New.
* gcc.target/riscv/attribute-12.c: New.
Diffstat (limited to 'gcc/c/c-parser.c')
0 files changed, 0 insertions, 0 deletions