public inbox for gcc@gcc.gnu.org
 help / color / mirror / Atom feed
From: law@redhat.com
To: Greg McGary <greg@mcgary.org>
Cc: gcc@gcc.gnu.org
Subject: Re: condition codes, haifa-sched and virtual-stack-vars
Date: Wed, 30 Jan 2002 14:15:00 -0000	[thread overview]
Message-ID: <13233.1012423195@porcupine.cygnus.com> (raw)
In-Reply-To: Your message of 30 Jan 2002 12:54:58 MST. <ms7kpzd371.fsf@mcgary.org>

In message <ms7kpzd371.fsf@mcgary.org>, Greg McGary writes:
 > law@redhat.com writes:
 > 
 > > If arithmetic clobbers the register, then that needs to be reflected in
 > > the RTL for arithmetic.
 > 
 > It is.  FYI, here's the addsi3 pattern:
[ ... ]

 > All other arithmetic patterns are similar.
Got it.


 > Here's a summary of mutations, by optimizer phase.
Thanks.  It was helpful.

I think you're hosed :(


 > Things would have been OK if the stack var weren't the first one,
 > so that it got an offset in 00.rtl, and the associated clobber.
 > Maybe we shouldn't emit bare virtual-stack-vars, but rather emit as
 > plus with 0 offset?
That would be non-canonical RTL.

Fundamentally what we have is a data dependency that isn't exposed until
register allocation -- by which time we've already lost.

What you might consider doing is keeping cc0 setters and cc0 users as a
single insn until after reload.  Once reload is completed, split them
into their component insns.  By the time sched2 runs all the dependencies
are exposed and you shouldn't see any problems.

jeff

  reply	other threads:[~2002-01-30 20:42 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-01-30 12:31 Greg McGary
2002-01-30 12:42 ` law
2002-01-30 13:30   ` Greg McGary
2002-01-30 14:15     ` law [this message]
2002-01-31  7:49     ` Richard Earnshaw
2002-01-30 13:56 ` Alexandre Oliva
2002-01-30 17:13   ` Greg McGary
2002-01-30 17:20     ` Alexandre Oliva
2002-01-30 18:00       ` law
2002-01-30 19:23         ` Greg McGary
2002-01-31  5:53           ` Alexandre Oliva
2002-01-30 18:41 ` Richard Henderson
2002-01-30 15:19 Ulrich Weigand
2002-01-30 16:50 ` Geoff Keating
2002-01-30 17:13   ` Ulrich Weigand
2002-01-31 13:59     ` Geoff Keating
2002-01-30 19:31 ` Richard Henderson
2002-01-31 16:07   ` Ulrich Weigand
     [not found] <no.id>
2002-01-30 17:36 ` Ulrich Weigand

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=13233.1012423195@porcupine.cygnus.com \
    --to=law@redhat.com \
    --cc=gcc@gcc.gnu.org \
    --cc=greg@mcgary.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).