public inbox for gcc@gcc.gnu.org
 help / color / mirror / Atom feed
From: Dale Johannesen <dalej@apple.com>
To: Geoff Keating <geoffk@geoffk.org>
Cc: Dale Johannesen <dalej@apple.com>,
	David Edelsohn <dje@watson.ibm.com>,
	Richard Henderson <rth@redhat.com>,
	gcc@gcc.gnu.org
Subject: Re: store double-cvtd-to-int to memory
Date: Fri, 14 Mar 2003 20:10:00 -0000	[thread overview]
Message-ID: <86F38AF0-5656-11D7-B9FE-000393D76DAA@apple.com> (raw)
In-Reply-To: <jmsmtpoi2u.fsf@desire.geoffk.org>


On Friday, March 14, 2003, at 11:37  AM, Geoff Keating wrote:
> David Edelsohn <dje@watson.ibm.com> writes:
>
>> 	Can't you just mark the unnecessary temp with "X" constraint for
>> the pattern that does not need it?
>
> That would be a good idea, but doesn't solve Dale's problem...

Right.  The problem is not that the pattern isn't recognized, it's
that combine won't consider it in the first place.
(I did run this by Geoff before asking the list, btw, which
makes me think it's not a case of me missing something trivial.)
Basically I'm trying to get combine to merge these 2 patterns:

(insn 11 10 12 0 0x0 (set (mem:SI (reg:SI 5 r5) [0 S4 A32])
         (reg:SI 120)) 309 {*movsi_internal1} (insn_list 10 (nil))

(insn 10 5 11 0 0x0 (parallel [
             (set (reg:SI 120)
                 (fix:SI (reg:DF 33 f1)))
             (clobber (reg:DI 121))
             (clobber (mem/f:DI (plus:SI (reg/f:SI 30 r30)
                         (const_int 32 [0x20])) [0 S8 A64]))

It considers generating
(insn 10 5 11 0 0x0 (parallel [
             (set (mem:SI (reg:SI 5 r5)
                 (fix:SI (reg:DF 33 f1)))
             (clobber (reg:DI 121))
             (clobber (mem/f:DI (plus:SI (reg/f:SI 30 r30)
                         (const_int 32 [0x20])) [0 S8 A64]))
and rejects that because it thinks the mem's might conflict, as I said 
before.
It also considers generating
             (set (mem:SI (reg:SI 5 r5)
                 (fix:SI (reg:DF 33 f1)))
which isn't adequate because I *do* need the floating point scratch reg.
It does not consider generating
(insn 10 5 11 0 0x0 (parallel [
             (set (mem:SI (reg:SI 5 r5)
                 (fix:SI (reg:DF 33 f1)))
             (clobber (reg:DI 121))]
which is what I want.
(Not that it has anything to do with this problem, but why is the 
scratch
reg DI not DF?)

  reply	other threads:[~2003-03-14 19:53 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-03-13  3:20 Dale Johannesen
2003-03-13 22:37 ` Richard Henderson
2003-03-14 19:15   ` Dale Johannesen
2003-03-14 19:52     ` David Edelsohn
2003-03-14 20:00       ` Geoff Keating
2003-03-14 20:10         ` Dale Johannesen [this message]
2003-03-14 21:24     ` Richard Henderson
2003-03-13 22:52 ` Richard Henderson
2003-03-23 22:18 Dale Johannesen
2003-12-08 16:55 Name of front-end Richard Kenner
2003-12-08 17:03 ` Robert Dewar
2003-12-08 17:40   ` Andrew Haley
2003-12-08 23:44     ` Robert Dewar
2003-12-08 23:51       ` Laurent GUERBY
2003-12-09  1:32         ` Robert Dewar
2003-12-09  0:00       ` Daniel Berlin
2003-12-08 18:37 ` Dale Johannesen
     [not found]   ` <dalej@apple.com>
2003-12-08 19:15     ` Felix Lee
2003-12-08 20:06   ` [GCC] " Trevor Jenkins

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=86F38AF0-5656-11D7-B9FE-000393D76DAA@apple.com \
    --to=dalej@apple.com \
    --cc=dje@watson.ibm.com \
    --cc=gcc@gcc.gnu.org \
    --cc=geoffk@geoffk.org \
    --cc=rth@redhat.com \
    /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).