diff options
author | zhongjuzhe <juzhe.zhong@rivai.ai> | 2022-09-15 16:28:53 +0800 |
---|---|---|
committer | Kito Cheng <kito.cheng@sifive.com> | 2022-09-23 23:33:24 +0800 |
commit | b4feb49cf308b344fba6a72137df58de382fcb9d (patch) | |
tree | cbabdb92309bbf9f1538bcb7a811c16b8ee66357 /gcc/common | |
parent | ab98b4c0725eb7c0f03d319ef3e22ae761b2698a (diff) | |
download | gcc-b4feb49cf308b344fba6a72137df58de382fcb9d.zip gcc-b4feb49cf308b344fba6a72137df58de382fcb9d.tar.gz gcc-b4feb49cf308b344fba6a72137df58de382fcb9d.tar.bz2 |
RISC-V: Support poly move manipulation and selftests.
gcc/ChangeLog:
* common/config/riscv/riscv-common.cc: Change "static void" to "void".
* config.gcc: Add riscv-selftests.o
* config/riscv/predicates.md: Allow const_poly_int.
* config/riscv/riscv-protos.h (riscv_reinit): New function.
(riscv_parse_arch_string): change as exten function.
(riscv_run_selftests): New function.
* config/riscv/riscv.cc (riscv_cannot_force_const_mem): Don't allow poly
into const pool.
(riscv_report_v_required): New function.
(riscv_expand_op): New function.
(riscv_expand_mult_with_const_int): New function.
(riscv_legitimize_poly_move): Ditto.
(riscv_legitimize_move): New function.
(riscv_hard_regno_mode_ok): Add VL/VTYPE register allocation and fix
vector RA.
(riscv_convert_vector_bits): Fix riscv_vector_chunks configuration for
-marh no 'v'.
(riscv_reinit): New function.
(TARGET_RUN_TARGET_SELFTESTS): New target hook support.
* config/riscv/t-riscv: Add riscv-selftests.o.
* config/riscv/riscv-selftests.cc: New file.
gcc/testsuite/ChangeLog:
* selftests/riscv/empty-func.rtl: New test.
Diffstat (limited to 'gcc/common')
-rw-r--r-- | gcc/common/config/riscv/riscv-common.cc | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/gcc/common/config/riscv/riscv-common.cc b/gcc/common/config/riscv/riscv-common.cc index 7721916..c39ed2e 100644 --- a/gcc/common/config/riscv/riscv-common.cc +++ b/gcc/common/config/riscv/riscv-common.cc @@ -1224,7 +1224,7 @@ static const riscv_ext_flag_table_t riscv_ext_flag_table[] = /* Parse a RISC-V ISA string into an option mask. Must clear or set all arch dependent mask bits, in case more than one -march string is passed. */ -static void +void riscv_parse_arch_string (const char *isa, struct gcc_options *opts, location_t loc) |