public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug target/113094] New: [14 Regression][aarch64] ICE in extract_constrain_insn, at recog.cc:2713 since r14-6290-g9f0f7d802482a8
@ 2023-12-20 14:46 mjires at suse dot cz
2023-12-20 16:31 ` [Bug target/113094] " pinskia at gcc dot gnu.org
` (6 more replies)
0 siblings, 7 replies; 8+ messages in thread
From: mjires at suse dot cz @ 2023-12-20 14:46 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113094
Bug ID: 113094
Summary: [14 Regression][aarch64] ICE in
extract_constrain_insn, at recog.cc:2713 since
r14-6290-g9f0f7d802482a8
Product: gcc
Version: 14.0
Status: UNCONFIRMED
Keywords: ice-on-valid-code
Severity: normal
Priority: P3
Component: target
Assignee: unassigned at gcc dot gnu.org
Reporter: mjires at suse dot cz
Target Milestone: ---
Target: aarch64
Compiling reduced testcase c-c++-common/torture/vector-subscript-2.c results in
ICE since r14-6290-g9f0f7d802482a8.
$ cat vector-subscript-2.c
struct TV4 {
__attribute__((vector_size(sizeof(int) * 4))) int v;
};
void modify() {
struct TV4 __trans_tmp_1, temp;
temp.v[0] = temp.v[3] = 0;
__trans_tmp_1 = temp;
}
$ aarch64-linux-gnu-gcc vector-subscript-2.c -fno-tree-dse -Ofast
-fno-tree-coalesce-vars -fno-dce -fno-tree-dce
vector-subscript-2.c: In function ‘modify’:
vector-subscript-2.c:8:1: error: insn does not satisfy its constraints:
8 | }
| ^
(insn 18 2 13 2 (set (reg:V4SI 63 v31)
(reg:V4SI 94 virtual-incoming-args)) "vector-subscript-2.c":6:25 1270
{*aarch64_simd_movv4si}
(nil))
during RTL pass: reload
vector-subscript-2.c:8:1: internal compiler error: in extract_constrain_insn,
at recog.cc:2713
0x16e5964 _fatal_insn(char const*, rtx_def const*, char const*, int, char
const*)
/home/mjires/git/GCC/master/gcc/rtl-error.cc:108
0x16e59c4 _fatal_insn_not_found(rtx_def const*, char const*, int, char const*)
/home/mjires/git/GCC/master/gcc/rtl-error.cc:118
0x1696240 extract_constrain_insn(rtx_insn*)
/home/mjires/git/GCC/master/gcc/recog.cc:2713
0x14d253b check_rtl
/home/mjires/git/GCC/master/gcc/lra.cc:2189
0x14d3019 lra(_IO_FILE*, int)
/home/mjires/git/GCC/master/gcc/lra.cc:2610
0x147b0f5 do_reload
/home/mjires/git/GCC/master/gcc/ira.cc:5973
0x147b592 execute
/home/mjires/git/GCC/master/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 <https://gcc.gnu.org/bugs/> for instructions.
$ aarch64-linux-gnu-gcc -v
Using built-in specs.
COLLECT_GCC=aarch64-linux-gnu-gcc
COLLECT_LTO_WRAPPER=/home/mjires/built/master/libexec/gcc/aarch64-linux-gnu/14.0.0/lto-wrapper
Target: aarch64-linux-gnu
Configured with: /home/mjires/git/GCC/master/configure
--prefix=/home/mjires/built/master --target=aarch64-linux-gnu
--disable-bootstrap --enable-languages=c,c++,fortran --disable-multilib
--disable-libsanitizer --enable-checking : (reconfigured)
/home/mjires/git/GCC/master/configure --prefix=/home/mjires/built/master
--target=aarch64-linux-gnu --disable-bootstrap --enable-languages=c,c++,fortran
--disable-multilib --disable-libsanitizer --enable-checking
Thread model: posix
Supported LTO compression algorithms: zlib zstd
gcc version 14.0.0 20231220 (experimental) (GCC)
^ permalink raw reply [flat|nested] 8+ messages in thread
* [Bug target/113094] [14 Regression][aarch64] ICE in extract_constrain_insn, at recog.cc:2713 since r14-6290-g9f0f7d802482a8
2023-12-20 14:46 [Bug target/113094] New: [14 Regression][aarch64] ICE in extract_constrain_insn, at recog.cc:2713 since r14-6290-g9f0f7d802482a8 mjires at suse dot cz
@ 2023-12-20 16:31 ` pinskia at gcc dot gnu.org
2023-12-20 19:32 ` pinskia at gcc dot gnu.org
` (5 subsequent siblings)
6 siblings, 0 replies; 8+ messages in thread
From: pinskia at gcc dot gnu.org @ 2023-12-20 16:31 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113094
Andrew Pinski <pinskia at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Target Milestone|--- |14.0
^ permalink raw reply [flat|nested] 8+ messages in thread
* [Bug target/113094] [14 Regression][aarch64] ICE in extract_constrain_insn, at recog.cc:2713 since r14-6290-g9f0f7d802482a8
2023-12-20 14:46 [Bug target/113094] New: [14 Regression][aarch64] ICE in extract_constrain_insn, at recog.cc:2713 since r14-6290-g9f0f7d802482a8 mjires at suse dot cz
2023-12-20 16:31 ` [Bug target/113094] " pinskia at gcc dot gnu.org
@ 2023-12-20 19:32 ` pinskia at gcc dot gnu.org
2023-12-20 19:34 ` pinskia at gcc dot gnu.org
` (4 subsequent siblings)
6 siblings, 0 replies; 8+ messages in thread
From: pinskia at gcc dot gnu.org @ 2023-12-20 19:32 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113094
Andrew Pinski <pinskia at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Last reconfirmed| |2023-12-20
Ever confirmed|0 |1
Status|UNCONFIRMED |NEW
--- Comment #1 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
Confirmed.
^ permalink raw reply [flat|nested] 8+ messages in thread
* [Bug target/113094] [14 Regression][aarch64] ICE in extract_constrain_insn, at recog.cc:2713 since r14-6290-g9f0f7d802482a8
2023-12-20 14:46 [Bug target/113094] New: [14 Regression][aarch64] ICE in extract_constrain_insn, at recog.cc:2713 since r14-6290-g9f0f7d802482a8 mjires at suse dot cz
2023-12-20 16:31 ` [Bug target/113094] " pinskia at gcc dot gnu.org
2023-12-20 19:32 ` pinskia at gcc dot gnu.org
@ 2023-12-20 19:34 ` pinskia at gcc dot gnu.org
2023-12-20 19:44 ` pinskia at gcc dot gnu.org
` (3 subsequent siblings)
6 siblings, 0 replies; 8+ messages in thread
From: pinskia at gcc dot gnu.org @ 2023-12-20 19:34 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113094
--- Comment #2 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
```
(insn 18 2 13 2 (set (reg:V4SI 63 v31)
(reg:V4SI 94 virtual-incoming-args)) "/app/example.cpp":8:25 -1
(nil))
```
Gets added by early-ra ...
^ permalink raw reply [flat|nested] 8+ messages in thread
* [Bug target/113094] [14 Regression][aarch64] ICE in extract_constrain_insn, at recog.cc:2713 since r14-6290-g9f0f7d802482a8
2023-12-20 14:46 [Bug target/113094] New: [14 Regression][aarch64] ICE in extract_constrain_insn, at recog.cc:2713 since r14-6290-g9f0f7d802482a8 mjires at suse dot cz
` (2 preceding siblings ...)
2023-12-20 19:34 ` pinskia at gcc dot gnu.org
@ 2023-12-20 19:44 ` pinskia at gcc dot gnu.org
2023-12-20 21:33 ` rsandifo at gcc dot gnu.org
` (2 subsequent siblings)
6 siblings, 0 replies; 8+ messages in thread
From: pinskia at gcc dot gnu.org @ 2023-12-20 19:44 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113094
--- Comment #3 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
I suspect FIRST_PSEUDO_REGISTER should really have been LAST_VIRTUAL_REGISTER
in some places ...
VIRTUAL_REGISTERs are still psedudo registers but not used post
instantiate_virtual_regs pass.
^ permalink raw reply [flat|nested] 8+ messages in thread
* [Bug target/113094] [14 Regression][aarch64] ICE in extract_constrain_insn, at recog.cc:2713 since r14-6290-g9f0f7d802482a8
2023-12-20 14:46 [Bug target/113094] New: [14 Regression][aarch64] ICE in extract_constrain_insn, at recog.cc:2713 since r14-6290-g9f0f7d802482a8 mjires at suse dot cz
` (3 preceding siblings ...)
2023-12-20 19:44 ` pinskia at gcc dot gnu.org
@ 2023-12-20 21:33 ` rsandifo at gcc dot gnu.org
2023-12-21 10:20 ` cvs-commit at gcc dot gnu.org
2023-12-21 10:24 ` rsandifo at gcc dot gnu.org
6 siblings, 0 replies; 8+ messages in thread
From: rsandifo at gcc dot gnu.org @ 2023-12-20 21:33 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113094
Richard Sandiford <rsandifo at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Assignee|unassigned at gcc dot gnu.org |rsandifo at gcc dot gnu.org
Status|NEW |ASSIGNED
--- Comment #4 from Richard Sandiford <rsandifo at gcc dot gnu.org> ---
Testing a patch. We're doing spurious work on insns that are slated for
deletion, but we can't simply delete them first because that would disrupt the
main iteration. Easiest fix seems to be to replace them with NOTE_INSN_DELETED
first, then iterate, then delete.
^ permalink raw reply [flat|nested] 8+ messages in thread
* [Bug target/113094] [14 Regression][aarch64] ICE in extract_constrain_insn, at recog.cc:2713 since r14-6290-g9f0f7d802482a8
2023-12-20 14:46 [Bug target/113094] New: [14 Regression][aarch64] ICE in extract_constrain_insn, at recog.cc:2713 since r14-6290-g9f0f7d802482a8 mjires at suse dot cz
` (4 preceding siblings ...)
2023-12-20 21:33 ` rsandifo at gcc dot gnu.org
@ 2023-12-21 10:20 ` cvs-commit at gcc dot gnu.org
2023-12-21 10:24 ` rsandifo at gcc dot gnu.org
6 siblings, 0 replies; 8+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2023-12-21 10:20 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113094
--- Comment #5 from GCC Commits <cvs-commit at gcc dot gnu.org> ---
The trunk branch has been updated by Richard Sandiford <rsandifo@gcc.gnu.org>:
https://gcc.gnu.org/g:803d222e533efbc385411d4b5a2d0ec0551b9f16
commit r14-6781-g803d222e533efbc385411d4b5a2d0ec0551b9f16
Author: Richard Sandiford <richard.sandiford@arm.com>
Date: Thu Dec 21 10:20:19 2023 +0000
aarch64: Fix early RA handling of deleted insns [PR113094]
The testcase constructs a sequence of insns that are fully dead
and yet (due to forced options) are not removed as such. This
triggered a case where we would emit a meaningless reload for a
to-be-deleted insn.
We can't delete the insns first because that might disrupt the
iteration ranges. So this patch turns them into notes before
the walk and then continues to delete them properly afterwards.
gcc/
PR target/113094
* config/aarch64/aarch64-early-ra.cc (apply_allocation): Stub
out instructions that are going to be deleted before iterating
over the rest.
gcc/testsuite/
PR target/113094
* gcc.target/aarch64/pr113094.c: New test.
^ permalink raw reply [flat|nested] 8+ messages in thread
* [Bug target/113094] [14 Regression][aarch64] ICE in extract_constrain_insn, at recog.cc:2713 since r14-6290-g9f0f7d802482a8
2023-12-20 14:46 [Bug target/113094] New: [14 Regression][aarch64] ICE in extract_constrain_insn, at recog.cc:2713 since r14-6290-g9f0f7d802482a8 mjires at suse dot cz
` (5 preceding siblings ...)
2023-12-21 10:20 ` cvs-commit at gcc dot gnu.org
@ 2023-12-21 10:24 ` rsandifo at gcc dot gnu.org
6 siblings, 0 replies; 8+ messages in thread
From: rsandifo at gcc dot gnu.org @ 2023-12-21 10:24 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113094
Richard Sandiford <rsandifo at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|ASSIGNED |RESOLVED
Resolution|--- |FIXED
--- Comment #6 from Richard Sandiford <rsandifo at gcc dot gnu.org> ---
Fixed.
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2023-12-21 10:24 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-12-20 14:46 [Bug target/113094] New: [14 Regression][aarch64] ICE in extract_constrain_insn, at recog.cc:2713 since r14-6290-g9f0f7d802482a8 mjires at suse dot cz
2023-12-20 16:31 ` [Bug target/113094] " pinskia at gcc dot gnu.org
2023-12-20 19:32 ` pinskia at gcc dot gnu.org
2023-12-20 19:34 ` pinskia at gcc dot gnu.org
2023-12-20 19:44 ` pinskia at gcc dot gnu.org
2023-12-20 21:33 ` rsandifo at gcc dot gnu.org
2023-12-21 10:20 ` cvs-commit at gcc dot gnu.org
2023-12-21 10:24 ` rsandifo at gcc dot gnu.org
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).