aboutsummaryrefslogtreecommitdiff
path: root/gcc/common
diff options
context:
space:
mode:
authorzhongjuzhe <juzhe.zhong@rivai.ai>2022-09-15 16:28:53 +0800
committerKito Cheng <kito.cheng@sifive.com>2022-09-23 23:33:24 +0800
commitb4feb49cf308b344fba6a72137df58de382fcb9d (patch)
treecbabdb92309bbf9f1538bcb7a811c16b8ee66357 /gcc/common
parentab98b4c0725eb7c0f03d319ef3e22ae761b2698a (diff)
downloadgcc-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.cc2
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)