CC more RISC-V port people for awareness. Pan
From: Li, Pan2 <pan2...@intel.com> Sent: Thursday, May 9, 2024 11:25 AM To: Vladimir Makarov <vmaka...@redhat.com>; gcc-patches@gcc.gnu.org Subject: RE: [pushed][PR114810][LRA]: Recognize alternatives with lack of available registers for insn and demote them. Hi Vladimir, Looks this patch results in some ICE in the rvv.exp of RISC-V backend, feel free to ping me if more information is needed for reproducing. ========= Summary of gcc testsuite ========= | # of unexpected case / # of unique unexpected case | gcc | g++ | gfortran | rv64gcv/ lp64d/ medlow | 1061 / 69 | 0 / 0 | - | make: *** [Makefile:1096: report-gcc-newlib] Error 1 Just pick one imm_loop_invariant-10.c as below. /home/pli/gcc/111/riscv-gnu-toolchain/gcc/gcc/testsuite/gcc.target/riscv/rvv/vsetvl/imm_loop_invariant-10.c:20:1: error: unrecognizable insn: (insn 265 0 0 (parallel [ (set (reg:RVVMF8QI 309 [239]) (unspec:RVVMF8QI [ (reg:SI 0 zero) ] UNSPEC_VUNDEF)) (clobber (scratch:SI)) ]) -1 (nil)) during RTL pass: reload …. gcc/testsuite/gcc.target/riscv/rvv/vsetvl/imm_loop_invariant-10.c:20:1: internal compiler error: in extract_insn, at recog.cc:2812 0xa9d309 _fatal_insn(char const*, rtx_def const*, char const*, int, char const*) ........../.././gcc/gcc/rtl-error.cc:108 0xa9d32b _fatal_insn_not_found(rtx_def const*, char const*, int, char const*) ........../.././gcc/gcc/rtl-error.cc:116 0xa9bc07 extract_insn(rtx_insn*) ........../.././gcc/gcc/recog.cc:2812 0x10e5ad2 ira_remove_insn_scratches(rtx_insn*, bool, _IO_FILE*, rtx_def* (*)(rtx_def*)) ........../.././gcc/gcc/ira.cc:5381 0x112868f remove_insn_scratches ........../.././gcc/gcc/lra.cc:2154 0x112868f lra_emit_move(rtx_def*, rtx_def*) ........../.././gcc/gcc/lra.cc:513 0x1136883 match_reload ........../.././gcc/gcc/lra-constraints.cc:1184 0x1142ae4 curr_insn_transform ........../.././gcc/gcc/lra-constraints.cc:4778 0x11443cb lra_constraints(bool) ........../.././gcc/gcc/lra-constraints.cc:5481 0x112b192 lra(_IO_FILE*, int) ........../.././gcc/gcc/lra.cc:2442 0x10e0e7f do_reload ........../.././gcc/gcc/ira.cc:5973 0x10e0e7f execute ........../.././gcc/gcc/ira.cc:6161 Pan From: Vladimir Makarov <vmaka...@redhat.com<mailto:vmaka...@redhat.com>> Sent: Thursday, May 9, 2024 12:40 AM To: gcc-patches@gcc.gnu.org<mailto:gcc-patches@gcc.gnu.org> Subject: [pushed][PR114810][LRA]: Recognize alternatives with lack of available registers for insn and demote them. The following patch is a fix for PR114810 from LRA side. https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114810 The patch was successfully bootstrapped and tested on x86_64, aarch64, ppc64le.