* [Bug target/99781] [11 Regression] ICE in partial_subreg_p, at rtl.h:3144
2021-03-26 2:43 [Bug target/99781] New: [11 Regression] ICE in partial_subreg_p, at rtl.h:3144 asolokha at gmx dot com
@ 2021-03-26 9:02 ` rguenth at gcc dot gnu.org
2021-03-26 18:27 ` jakub at gcc dot gnu.org
` (6 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: rguenth at gcc dot gnu.org @ 2021-03-26 9:02 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99781
Richard Biener <rguenth at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Target Milestone|--- |11.0
Priority|P3 |P1
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Bug target/99781] [11 Regression] ICE in partial_subreg_p, at rtl.h:3144
2021-03-26 2:43 [Bug target/99781] New: [11 Regression] ICE in partial_subreg_p, at rtl.h:3144 asolokha at gmx dot com
2021-03-26 9:02 ` [Bug target/99781] " rguenth at gcc dot gnu.org
@ 2021-03-26 18:27 ` jakub at gcc dot gnu.org
2021-03-29 5:10 ` asolokha at gmx dot com
` (5 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: jakub at gcc dot gnu.org @ 2021-03-26 18:27 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99781
Jakub Jelinek <jakub at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |jakub at gcc dot gnu.org
--- Comment #1 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
ICEs since r8-6032-g43cacb12fc859b671464b63668794158974b2a34 when SVE support
has been added, so doesn't look like a regression to me, as before that it
would not accept that option:
invalid feature modifier in ‘-march=armv8-a+sve’
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Bug target/99781] [11 Regression] ICE in partial_subreg_p, at rtl.h:3144
2021-03-26 2:43 [Bug target/99781] New: [11 Regression] ICE in partial_subreg_p, at rtl.h:3144 asolokha at gmx dot com
2021-03-26 9:02 ` [Bug target/99781] " rguenth at gcc dot gnu.org
2021-03-26 18:27 ` jakub at gcc dot gnu.org
@ 2021-03-29 5:10 ` asolokha at gmx dot com
2021-03-30 10:57 ` jakub at gcc dot gnu.org
` (4 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: asolokha at gmx dot com @ 2021-03-29 5:10 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99781
--- Comment #2 from Arseny Solokha <asolokha at gmx dot com> ---
(In reply to Jakub Jelinek from comment #1)
> ICEs since r8-6032-g43cacb12fc859b671464b63668794158974b2a34 when SVE
> support has been added, so doesn't look like a regression to me, as before
> that it would not accept that option:
> invalid feature modifier in ‘-march=armv8-a+sve’
I can remove the regression marker, but I cannot change the PR priority.
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Bug target/99781] [11 Regression] ICE in partial_subreg_p, at rtl.h:3144
2021-03-26 2:43 [Bug target/99781] New: [11 Regression] ICE in partial_subreg_p, at rtl.h:3144 asolokha at gmx dot com
` (2 preceding siblings ...)
2021-03-29 5:10 ` asolokha at gmx dot com
@ 2021-03-30 10:57 ` jakub at gcc dot gnu.org
2021-03-30 14:31 ` rsandifo at gcc dot gnu.org
` (3 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: jakub at gcc dot gnu.org @ 2021-03-30 10:57 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99781
Jakub Jelinek <jakub at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |rsandifo at gcc dot gnu.org,
| |vmakarov at gcc dot gnu.org
--- Comment #3 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Seems in *.ira dump the v1 (33) register is only used in OImode, so
reg->biggest_mode being E_OImode makes sense.
But for some reason LRA has added
(expr_list:REG_DEAD (reg:VNx8BF 33 v1)
and the code is unhappy to see partial_subreg_p called for unordered modes.
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Bug target/99781] [11 Regression] ICE in partial_subreg_p, at rtl.h:3144
2021-03-26 2:43 [Bug target/99781] New: [11 Regression] ICE in partial_subreg_p, at rtl.h:3144 asolokha at gmx dot com
` (3 preceding siblings ...)
2021-03-30 10:57 ` jakub at gcc dot gnu.org
@ 2021-03-30 14:31 ` rsandifo at gcc dot gnu.org
2021-03-30 19:31 ` vmakarov at gcc dot gnu.org
` (2 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: rsandifo at gcc dot gnu.org @ 2021-03-30 14:31 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99781
rsandifo at gcc dot gnu.org <rsandifo at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Ever confirmed|0 |1
Last reconfirmed| |2021-03-30
Status|UNCONFIRMED |NEW
--- Comment #4 from rsandifo at gcc dot gnu.org <rsandifo at gcc dot gnu.org> ---
Confirmed. The REG_NOTE itself is easy to fix (I have a patch),
but then we run into similar problems because of the (correct-looking)
code added for PR77761. Not sure what the best way out of this is.
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Bug target/99781] [11 Regression] ICE in partial_subreg_p, at rtl.h:3144
2021-03-26 2:43 [Bug target/99781] New: [11 Regression] ICE in partial_subreg_p, at rtl.h:3144 asolokha at gmx dot com
` (4 preceding siblings ...)
2021-03-30 14:31 ` rsandifo at gcc dot gnu.org
@ 2021-03-30 19:31 ` vmakarov at gcc dot gnu.org
2021-04-06 13:22 ` cvs-commit at gcc dot gnu.org
2021-04-06 16:30 ` jakub at gcc dot gnu.org
7 siblings, 0 replies; 9+ messages in thread
From: vmakarov at gcc dot gnu.org @ 2021-03-30 19:31 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99781
--- Comment #5 from Vladimir Makarov <vmakarov at gcc dot gnu.org> ---
I've reproduced it too and started to work on it. I hope the fix will be ready
this week.
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Bug target/99781] [11 Regression] ICE in partial_subreg_p, at rtl.h:3144
2021-03-26 2:43 [Bug target/99781] New: [11 Regression] ICE in partial_subreg_p, at rtl.h:3144 asolokha at gmx dot com
` (5 preceding siblings ...)
2021-03-30 19:31 ` vmakarov at gcc dot gnu.org
@ 2021-04-06 13:22 ` cvs-commit at gcc dot gnu.org
2021-04-06 16:30 ` jakub at gcc dot gnu.org
7 siblings, 0 replies; 9+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2021-04-06 13:22 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99781
--- Comment #6 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Vladimir Makarov <vmakarov@gcc.gnu.org>:
https://gcc.gnu.org/g:4bbd51afaa4a3c116fb538d912b35e126be80b41
commit r11-8008-g4bbd51afaa4a3c116fb538d912b35e126be80b41
Author: Vladimir N. Makarov <vmakarov@redhat.com>
Date: Wed Mar 31 13:26:30 2021 -0400
[PR99781] Update correctly reg notes in LRA for multi-registers and set up
biggest mode safely
The PR is about incorrect use of partial_subreg_p for unordered modes.
I found 2 places of dangerous comparing unordered modes in LRA. The
patch removes dangerous use of paradoxical_subreg_p and
partial_subreg_p in split_reg and process_bb_lives. The both places
used them to solve PR77761 long time ago. But the problem was also
fixed by later patches too (if there is no hard reg explicitly, it
have VOIDmode and we use natural mode to split hard reg live,
otherwise we use the biggest explicitly used mode for hard reg
splitting). The PR also says about inaccurate update of reg notes in
LRA. It happens for reg notes which refer for multi-registers. The
patch also fixes this issue.
gcc/ChangeLog:
PR target/99781
* lra-constraints.c (split_reg): Don't check paradoxical_subreg_p.
* lra-lives.c (clear_sparseset_regnos, regnos_in_sparseset_p): New
functions.
(process_bb_lives): Don't update biggest mode of hard reg for
implicit in multi-register group. Use the new functions for
updating dead_set and unused_set by register notes.
gcc/testsuite/ChangeLog:
PR target/99781
* g++.target/aarch64/sve/pr99781.C: New.
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Bug target/99781] [11 Regression] ICE in partial_subreg_p, at rtl.h:3144
2021-03-26 2:43 [Bug target/99781] New: [11 Regression] ICE in partial_subreg_p, at rtl.h:3144 asolokha at gmx dot com
` (6 preceding siblings ...)
2021-04-06 13:22 ` cvs-commit at gcc dot gnu.org
@ 2021-04-06 16:30 ` jakub at gcc dot gnu.org
7 siblings, 0 replies; 9+ messages in thread
From: jakub at gcc dot gnu.org @ 2021-04-06 16:30 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99781
Jakub Jelinek <jakub at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Resolution|--- |FIXED
Status|NEW |RESOLVED
--- Comment #7 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
So should be fixed now.
^ permalink raw reply [flat|nested] 9+ messages in thread