public inbox for gcc-prs@sourceware.org
help / color / mirror / Atom feed
From: Alan Modra <amodra@bigpond.net.au>
To: amodra@gcc.gnu.org
Cc: gcc-prs@gcc.gnu.org,
Subject: Re: other/7114: ICE building strcoll.op from glibc-2.2.5
Date: Mon, 15 Jul 2002 18:46:00 -0000	[thread overview]
Message-ID: <20020716014602.27059.qmail@sources.redhat.com> (raw)

The following reply was made to PR other/7114; it has been noted by GNATS.

From: Alan Modra <amodra@bigpond.net.au>
To: Geoff Keating <geoffk@redhat.com>, d.mueller@elsoft.ch,
  gcc-gnats@gcc.gnu.org, gcc-patches@gcc.gnu.org, dje@watson.ibm.com
Cc:  
Subject: Re: other/7114: ICE building strcoll.op from glibc-2.2.5
Date: Tue, 16 Jul 2002 11:08:16 +0930

 On Tue, Jul 16, 2002 at 09:20:27AM +0930, Alan Modra wrote:
 > The testcase saves r30 and r31, but both are marked unused (don't
 > appear in regs_ever_live).  Later rtl analysis decides that the
 > save instruction can be eliminated, thus the ICE.  The real bug is
 > that r30 is not marked used when current_function_needs_context.
 > This is also the reason for PR5967.
 > 
 > The code that I copied from the !using_store_multiple case just
 > papers over this bug.  So the above patch merely makes -mmultiple
 > and -mno-multiple consistently wrong.
 
 It gets worse.  rs6000/sysv4.h sets PROFILE_BEFORE_PROLOGUE.  That
 means it is completely wrong for first_reg_to_save to decide r30
 needs saving when profiling and current_function_needs_context.
 It's too late to think about saving r30.  What really needs to
 happen is one of
 
 a) Don't use PROFILE_BEFORE_PROLOGUE.
 or
 b) Save the static chain reg on the stack somewhere before the mcount
    call.
 or
 c) Clobber r30 in a call to a nested function when profiling is
    enabled.
 
 People would probably scream if we went with (a) as special purpose
 implementations of mcount might make assumptions about the stack.
 So, anyone want to speak up on the best way to solve this?
 
 -- 
 Alan Modra
 IBM OzLabs - Linux Technology Centre


             reply	other threads:[~2002-07-16  1:46 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-07-15 18:46 Alan Modra [this message]
  -- strict thread matches above, loose matches on Subject: below --
2002-07-17 13:36 David Edelsohn
2002-07-17 12:16 Geoff Keating
2002-07-17 12:06 Geoff Keating
2002-07-17 10:46 David Edelsohn
2002-07-17  8:46 David Edelsohn
2002-07-17  2:06 Alan Modra
2002-07-17  0:16 Geoff Keating
2002-07-16 21:16 Alan Modra
2002-07-16 18:56 Alan Modra
2002-07-16 10:56 Geoff Keating
2002-07-16 10:46 Geoff Keating
2002-07-15 22:16 Alan Modra
2002-07-15 21:36 Richard Henderson
2002-07-15 16:56 Alan Modra
2002-07-15 12:46 Geoff Keating
2002-07-15  2:36 Alan Modra
2002-06-25  2:16 d.mueller

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=20020716014602.27059.qmail@sources.redhat.com \
    --to=amodra@bigpond.net.au \
    --cc=amodra@gcc.gnu.org \
    --cc=gcc-prs@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).