From: Richard Sandiford <rsandifo@nildram.co.uk>
To: "Andreas Krebbel" <Andreas.Krebbel@de.ibm.com>
Cc: gcc-patches@gcc.gnu.org
Subject: Re: [PING] Target hook for rewriting inline asm constraints
Date: Tue, 06 Nov 2007 22:00:00 -0000 [thread overview]
Message-ID: <87ode76nml.fsf@firetop.home> (raw)
In-Reply-To: <20071105134109.GA10193@homer.boeblingen.de.ibm.com> (Andreas Krebbel's message of "Mon\, 5 Nov 2007 14\:41\:09 +0100")
"Andreas Krebbel" <Andreas.Krebbel@de.ibm.com> writes:
>> Well, I was thinking of making it a macro constant; I should have picked
>> a name other than TARGET_MEM_CONSTRAINT, sorry.
>>
>> It might be nice to define the macro indirectly using a new constraints.md
>> construct (define_general_memory_constraint?). I.e. have genpreds define
>> the macro for you based on the .md file. The implementation could then
>> move away from macros at the same time as the rest of the constraints
>> stuff does[*]. I think that'd still be easier than converting gcc/*.c
>> to treat 'm' as a hook (and easier than rewriting asms). But personally,
>> I'd be happy enough if the macro was defined in the target .h file.
>
> One disadvantage of a target macro used in case expressions is that we
> can't check the arch flags here. So the logic would have to go into
> the constraint definition. The new constraint letter will have to
> accept the new address format as well as the old one for the new
> architecture and just the old address format for all former archs.
Maybe I'm misunderstanding what you want, but I thought we were
simply talking about renaming the "all valid memory addresses"
constraint from 'm' to some target-specific value. That renamed
constraint would be treated exactly as 'm' is treated now, without
the need for any special back-end code to handle it.
> If we would have a target hook here which would return the new mem
> constraint letter if the arch flag for the new architecture is set and
> 'm' otherwise, the new constraint letter would not have to depend on
> arch flags what I would personally prefer.
>
> Another disadvantage is that this would prevent usage of multiple
> letter constraints for the standard mem constraint.
True. Is s390 out of single constraint letters?
> What about the idea of letting the back end override all the existing
> standard constraints using the existing constraint definitions.
> Reload and co could check whether a back end accepts one of the
> standard constraint letters as extra constraint and would fallback to
> the standard behaviour if not.
That sounds OK too, although I'm not the one you need to convince ;)
Richard
next prev parent reply other threads:[~2007-11-06 22:00 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-10-30 12:54 Andreas Krebbel
2007-10-31 16:31 ` Tom Tromey
2007-10-31 16:43 ` Richard Guenther
2007-10-31 18:55 ` Andreas Krebbel
2007-10-31 19:13 ` Richard Guenther
2007-10-31 20:40 ` Andreas Krebbel
2007-11-04 23:05 ` Richard Sandiford
2007-11-05 9:25 ` Andreas Krebbel
2007-11-05 9:43 ` Richard Sandiford
2007-11-05 10:32 ` Andreas Krebbel
2007-11-05 11:02 ` Richard Sandiford
2007-11-05 13:42 ` Andreas Krebbel
2007-11-06 22:00 ` Richard Sandiford [this message]
2007-11-07 11:55 ` Andreas Krebbel
2007-10-31 17:22 ` Andreas Krebbel
2007-10-31 17:56 ` Tom Tromey
2007-11-06 18:20 ` Michael Meissner
2007-11-07 9:10 ` Andreas Krebbel
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=87ode76nml.fsf@firetop.home \
--to=rsandifo@nildram.co.uk \
--cc=Andreas.Krebbel@de.ibm.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).