This is the mail archive of the
mailing list for the GCC project.
Re: [PATCH, ARM, LRA] Prepare ARM build with LRA
- From: Eric Botcazou <ebotcazou at adacore dot com>
- To: Richard Sandiford <rdsandiford at googlemail dot com>
- Cc: gcc-patches at gcc dot gnu dot org, Yvan Roux <yvan dot roux at linaro dot org>, Vladimir Makarov <vmakarov at redhat dot com>, Richard Earnshaw <rearnsha at arm dot com>, Marcus Shawcroft <marcus dot shawcroft at arm dot com>, Ramana Radhakrishnan <Ramana dot Radhakrishnan at arm dot com>, Matthew Gretton-Dann <matthew dot gretton-dann at linaro dot org>, Patch Tracking <patches at linaro dot org>, Richard Henderson <rth at redhat dot com>
- Date: Wed, 25 Sep 2013 23:16:26 +0200
- Subject: Re: [PATCH, ARM, LRA] Prepare ARM build with LRA
- Authentication-results: sourceware.org; auth=none
- References: <CAD57uCfrF9Ns=jghNJOD07p5wg+_zcTc6wmfOknau3iSg4FvWg at mail dot gmail dot com> <1623242 dot BDHJTW32D4 at polaris> <87k3i4mx8i dot fsf at talisman dot default>
> So in the set_* routines it isn't about whether the value is definitely
> a base or a definitely an index. It's just about drilling down through
> what we've already decided is a base or index to get the inner reg or mem,
> and knowing which XEXPs to look at. We could instead have used a
> for_each_rtx, or something like that, without any code checks. But I
> wanted to be precise about the types of address we allow, so that we can
> assert for things we don't understand. In other words, it was "designed"
> to require the kind of extension Yvan is adding here.
Does this mean that the design is to require a parallel implementation in the
predicates and in the set routines, i.e. each time you add a new case to the
predicates, you need to add it (or do something) to the set routines as well?
If so, that's a little weird, but OK, feel free to revert the de-duplication
part, but add comments saying that the functions must be kept synchronized.