From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 48) id BA4EA3858D35; Tue, 14 May 2024 19:49:25 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org BA4EA3858D35 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1715716165; bh=nWF1y2/JcfWd0zAqSqtBWwpOLZ1NGN8wUvcm/sV1yMw=; h=From:To:Subject:Date:From; b=Yn5EgIqDW8aJIi/UH0nUGSvVdmBDa++UKMCGjfcTsQOjCy+fxwpXD7qCi+mVsi9cc d3EgcfrK24B70CMYpR7ipW/csDl2uP7BiR48ZWbu7g3q7UzkeUt3XCy0rXfwmUqsz/ FdGrox5BxPbWhBn1sS7UsZKtT5zx/suhgZpZVHKM= From: "jeremy.bennett at embecosm dot com" To: gcc-bugs@gcc.gnu.org Subject: [Bug target/115093] New: RISC-V Vector ICE in extract_insn: unrecognizable insn Date: Tue, 14 May 2024 19:49:25 +0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: new X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: target X-Bugzilla-Version: 15.0 X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: jeremy.bennett at embecosm dot com X-Bugzilla-Status: UNCONFIRMED X-Bugzilla-Resolution: X-Bugzilla-Priority: P3 X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: bug_id short_desc product version bug_status bug_severity priority component assigned_to reporter target_milestone Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 List-Id: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=3D115093 Bug ID: 115093 Summary: RISC-V Vector ICE in extract_insn: unrecognizable insn Product: gcc Version: 15.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: target Assignee: unassigned at gcc dot gnu.org Reporter: jeremy.bennett at embecosm dot com Target Milestone: --- Bug found in SPEC CPU 2017 625.x264_s. Reproducer (test.c): int a; void c (char d[], char h[][0], char i[][4][4]) { for (int b; b < 2; b++) for (int e =3D 0; e < 4; e++) for (int f =3D 0; f < 4; f++) { int g =3D e - 1; if (d[e] || d[g]) i[b][e][f] =3D 2; else if (h[0][g] || a) i[b][e][f] =3D 0; } } Compile with: riscv64-unknown-linux-gnu-gcc -march=3Drv64gcv -mabi=3Dlp64d -c -Ofast test= .c Output: test.c: In function 'c': test.c:15:1: error: unrecognizable insn: 15 | } | ^ (insn 1200 0 0 (parallel [ (set (reg:RVVMF4QI 749 [orig:240 vect__217.22 ] [240]) (unspec:RVVMF4QI [ (reg:DI 0 zero) ] UNSPEC_VUNDEF)) (clobber (scratch:DI)) ]) -1 (nil)) during RTL pass: reload test.c:15:1: internal compiler error: in extract_insn, at recog.cc:2812 0xa95819 _fatal_insn(char const*, rtx_def const*, char const*, int, char const*) /home/jeremy/gittrees/rise-qemu/gcc/gcc/rtl-error.cc:108 0xa9583b _fatal_insn_not_found(rtx_def const*, char const*, int, char const= *) /home/jeremy/gittrees/rise-qemu/gcc/gcc/rtl-error.cc:116 0xa94117 extract_insn(rtx_insn*) /home/jeremy/gittrees/rise-qemu/gcc/gcc/recog.cc:2812 0x10db392 ira_remove_insn_scratches(rtx_insn*, bool, _IO_FILE*, rtx_def* (*)(rtx_def*)) /home/jeremy/gittrees/rise-qemu/gcc/gcc/ira.cc:5381 0x111df4f remove_insn_scratches /home/jeremy/gittrees/rise-qemu/gcc/gcc/lra.cc:2154 0x111df4f lra_emit_move(rtx_def*, rtx_def*) /home/jeremy/gittrees/rise-qemu/gcc/gcc/lra.cc:513 0x112c143 match_reload /home/jeremy/gittrees/rise-qemu/gcc/gcc/lra-constraints.cc:1184 0x11383a4 curr_insn_transform /home/jeremy/gittrees/rise-qemu/gcc/gcc/lra-constraints.cc:4778 0x1139c8b lra_constraints(bool) /home/jeremy/gittrees/rise-qemu/gcc/gcc/lra-constraints.cc:5481 0x1120a52 lra(_IO_FILE*, int) /home/jeremy/gittrees/rise-qemu/gcc/gcc/lra.cc:2442 0x10d673f do_reload /home/jeremy/gittrees/rise-qemu/gcc/gcc/ira.cc:5973 0x10d673f execute /home/jeremy/gittrees/rise-qemu/gcc/gcc/ira.cc:6161 Please submit a full bug report, with preprocessed source (by using -freport-bug). Please include the complete backtrace with any bug report. See for instructions. System information =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D Using built-in specs. COLLECT_GCC=3Driscv64-unknown-linux-gnu-gcc COLLECT_LTO_WRAPPER=3D/home/jeremy/gittrees/rise-qemu/install/libexec/gcc/r= iscv64-unknown-linux-gnu/15.0.0/lto-wrapper Target: riscv64-unknown-linux-gnu Configured with: /home/jeremy/gittrees/rise-qemu/gcc/configure --target=3Driscv64-unknown-linux-gnu --prefix=3D/home/jeremy/gittrees/rise-qemu/install --with-sysroot=3D/home/jeremy/gittrees/rise-qemu/install/sysroot --with-pkgversion=3Dgbb5f619a938-dirty --with-system-zlib --enable-shared --enable-tls --enable-languages=3Dc,c++,fortran --disable-libmudflap --disable-libssp --disable-libquadmath --disable-libsanitizer --disable-nls --disable-bootstrap --src=3D/home/jeremy/gittrees/rise-qemu/gcc --enable-mu= ltilib --with-abi=3Dlp64d --with-arch=3Drv64gc --with-tune=3D --with-isa-spec=3D20= 191213 'CFLAGS_FOR_TARGET=3D-O2 -mcmodel=3Dmedany' 'CXXFLAGS_FOR_TARGET=3D-O2= =20=20=20 -mcmodel=3Dmedany' Thread model: posix Supported LTO compression algorithms: zlib gcc version 15.0.0 20240509 (experimental) (gbb5f619a938-dirty)=