public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
From: Jeff Law <law@redhat.com>
To: Andrew Stubbs <ams@codesourcery.com>, gcc-patches@gcc.gnu.org
Subject: Re: [PATCH 01/10] Fix IRA ICE.
Date: Wed, 21 Nov 2018 00:47:00 -0000	[thread overview]
Message-ID: <a6fa04a0-57cf-8dc5-44e9-ba266fb052a9@redhat.com> (raw)
In-Reply-To: <f59df31d485d71c8e4c68c74ef1ca1dc4a9dd8d4.1542381960.git.ams@codesourcery.com>

On 11/16/18 9:27 AM, Andrew Stubbs wrote:
> 
> This patch is unchanged from that which was posted before.  Discussion
> fizzled out there and I was too busy with other patches to restart it
> then.  This issue needs to be resolved before libgfortran can be
> compiled for GCN.
> 
> The IRA pass makes an assumption that any pseudos created after the pass begins
> were created explicitly by the pass itself and therefore will have
> corresponding entries in its other tables.
> 
> The GCN back-end, however, often creates additional pseudos, in expand
> patterns, to represent the necessary EXEC value, and these break IRA's
> assumption and cause ICEs:
> 
> ..../libgfortran/generated/matmul_r8.c: In function 'matmul_r8':
> ..../libgfortran/generated/matmul_r8.c:3002:1: internal compiler error: in setup_preferred_alternate_classes_for_new_pseudos, at ira.c:2772
> 
> This patch simply has IRA skip unknown pseudos, and the problem goes away.
> 
> Presumably, it's not ideal that these registers have not been processed by IRA,
> but it does not appear to do any real harm.
> 
> 2018-11-16  Andrew Stubbs  <ams@codesourcery.com>
> 
> 	gcc/
> 	* ira.c (setup_preferred_alternate_classes_for_new_pseudos): Skip
> 	pseudos not created by this pass.
> 	(move_unallocated_pseudos): Likewise.
This seems like a really gross hack and sets an expectation that
generating registers in the target after IRA has started is OK.  It is
not OK.  THe fact that this works is, IMHO, likely an accident.

I think this comes back to the fundamental representational issue with
the EXEC handling that still needs to be addressed.

Jeff

  reply	other threads:[~2018-11-21  0:47 UTC|newest]

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-11-16 16:27 [PATCH 00/10] AMD GCN Port v2 Andrew Stubbs
2018-11-16 16:27 ` [PATCH 01/10] Fix IRA ICE Andrew Stubbs
2018-11-21  0:47   ` Jeff Law [this message]
2018-11-21 11:35     ` Andrew Stubbs
2018-12-08 12:15       ` Richard Sandiford
2018-12-08 16:23         ` Jeff Law
2018-12-10 15:22           ` Andrew Stubbs
2018-11-16 16:28 ` [PATCH 07/10] Add dg-require-effective-target exceptions Andrew Stubbs
2018-11-26 22:08   ` Mike Stump
2018-11-27  9:29     ` Andrew Stubbs
2018-11-16 16:28 ` [PATCH 08/10] Testsuite: GCN is always PIE Andrew Stubbs
2018-11-16 16:28 ` [PATCH 05/10] GCN back-end code Andrew Stubbs
2018-11-16 16:28 ` [PATCH 09/10] Ignore LLVM's blank lines Andrew Stubbs
2018-11-16 16:28 ` [PATCH 03/10] GCN libgcc Andrew Stubbs
2018-11-21  0:49   ` Jeff Law
2018-11-16 16:28 ` [PATCH 02/10] GCN libgfortran Andrew Stubbs
2018-11-16 16:28 ` [PATCH 04/10] GCN machine description Andrew Stubbs
2018-11-16 16:29 ` [PATCH 10/10] Port testsuite to GCN Andrew Stubbs
2018-11-21  1:01   ` Jeff Law
2018-11-26 20:04     ` Mike Stump
2018-11-26 21:13       ` Mike Stump
2018-11-27  9:27         ` Andrew Stubbs
2018-12-06 16:10         ` Andrew Stubbs
2018-12-06 15:27     ` Andrew Stubbs
2018-12-08 12:05       ` Richard Sandiford
2018-11-16 16:29 ` [PATCH 06/10] GCN back-end config Andrew Stubbs
2018-11-16 17:44   ` Joseph Myers
2018-11-20 11:44     ` Andrew Stubbs
2018-11-21  2:32   ` Jeff Law

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=a6fa04a0-57cf-8dc5-44e9-ba266fb052a9@redhat.com \
    --to=law@redhat.com \
    --cc=ams@codesourcery.com \
    --cc=gcc-patches@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).