public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
From: "cvs-commit at gcc dot gnu.org" <gcc-bugzilla@gcc.gnu.org>
To: gcc-bugs@gcc.gnu.org
Subject: [Bug target/99781] [11 Regression] ICE in partial_subreg_p, at rtl.h:3144
Date: Tue, 06 Apr 2021 13:22:33 +0000	[thread overview]
Message-ID: <bug-99781-4-UL7xJVu7nG@http.gcc.gnu.org/bugzilla/> (raw)
In-Reply-To: <bug-99781-4@http.gcc.gnu.org/bugzilla/>

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.

  parent reply	other threads:[~2021-04-06 13:22 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-03-26  2:43 [Bug target/99781] New: " 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
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 [this message]
2021-04-06 16:30 ` jakub at gcc dot gnu.org

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=bug-99781-4-UL7xJVu7nG@http.gcc.gnu.org/bugzilla/ \
    --to=gcc-bugzilla@gcc.gnu.org \
    --cc=gcc-bugs@gcc.gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).