This is the mail archive of the
mailing list for the GCC project.
Re: [PATCH,rs6000] disable mfcr pattern for TARGET_ISEL
On Wed, Jul 21, 2010 at 12:34:17PM -0400, David Edelsohn wrote:
> On Wed, Jul 21, 2010 at 11:51 AM, Nathan Froyd <firstname.lastname@example.org> wrote:
> > The motivation was for some newer embedded processors. Older processors
> > with ISEL do not implement MFCRF; they can still benefit from using ISEL
> > instead of MFCR. Some newer embedded processors do implement MFCRF, but
> > MFCRF on those implementations carries the same synchronization
> > penalties as MFCR, so it's beneficial to use ISEL there as well.
> Someone implemented mfcrf as inefficiently as mfcr? Sigh.
> > I see now that the pattern cleverly uses 'Q' so that it works for
> > TARGET_MFCRF as well. Will !TARGET_ISEL || TARGET_MFCRF DTRT?
> I'm not sure what you are trying to capture with the new final
> constraint, unless you now are saying that the pattern *is* a good
> idea for TARGET_ISEL processors with TARGET_MFCRF, which sort of
> contradicts your statement above.
Is there a way we can move this forward?