public inbox for gcc-prs@sourceware.org
help / color / mirror / Atom feed
From: Michael Matz <matz@suse.de>
To: nobody@gcc.gnu.org
Cc: gcc-prs@gcc.gnu.org,
Subject: Re: middle-end/7245: ICE in find_reloads
Date: Tue, 09 Jul 2002 12:56:00 -0000	[thread overview]
Message-ID: <20020709195601.4449.qmail@sources.redhat.com> (raw)

The following reply was made to PR middle-end/7245; it has been noted by GNATS.

From: Michael Matz <matz@suse.de>
To: Andreas Jaeger <aj@suse.de>
Cc: <gcc-gnats@gcc.gnu.org>, Ulrich Hecht <uli@suse.de>
Subject: Re: middle-end/7245: ICE in find_reloads
Date: Tue, 9 Jul 2002 21:47:36 +0200 (CEST)

 Again for the bugtracking system.  Manually constructed answer mail ;(
 
 > (insn:QI 61 60 11 (parallel[
 >             (set (reg:CCZ 17 flags)
 >                 (compare:CCZ (ashiftrt:SI (reg/v:SI 0 eax [62])
 >                         (const_int -8 [0xfffffff8]))
 >                     (const_int 0 [0x0])))
 >             (set (reg/v:SI 1 edx [60])
 >                 (ashiftrt:SI (reg/v:SI 0 eax [62])
 >                     (const_int -8 [0xfffffff8])))
 >         ] ) 434 {*ashrsi3_cmp} (nil)
 
 The problem is, that this insn doesn't fulfill it's constraint on operand
 2, which is the -8.  It needs to be an immediate_operand() (which it is),
 with constraint "I", which means >=0 and <= 31, which it isn't.
 Constraints are first checked in reload, so only there we see, that the
 whole selection of the pattern shouldn't have happened.  I.e. I think in
 this case either the predicate immediate_operand is wrong, and shouldn't
 accept values <0, or we need another letter constraint for a range
 including some values <0.
 
 I'm not sure anymore, what happens on x86, if the shift-count is negative
 in the insn.  It's ANDed with 31, right?  In that case, we _might_ accept
 negative values in the constraint.
 
 The problem here is, that this operand can't be reloaded, so both, the
 constraint and the predicate should really match.
 
 
 Ciao,
 Michael.
 


             reply	other threads:[~2002-07-09 19:56 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-07-09 12:56 Michael Matz [this message]
  -- strict thread matches above, loose matches on Subject: below --
2002-09-29  9:40 sayle
2002-07-10  9:38 jakub
2002-07-09 12:46 paolo
2002-07-09 12:43 paolo
2002-07-09  8:36 aj

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=20020709195601.4449.qmail@sources.redhat.com \
    --to=matz@suse.de \
    --cc=gcc-prs@gcc.gnu.org \
    --cc=nobody@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).