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).