This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Reimplementing pgcc's -frisc
- To: Bernd Schmidt <crux at pool dot informatik dot rwth-aachen dot de>
- Subject: Re: Reimplementing pgcc's -frisc
- From: Jeffrey A Law <law at cygnus dot com>
- Date: Tue, 06 Oct 1998 20:43:44 -0600
- cc: egcs at cygnus dot com, hubicka at atrey dot karlin dot mff dot cuni dot cz, scox at cygnus dot com
- Reply-To: law at cygnus dot com
In message <Pine.GSO.4.02A.9810061609140.9758-100000@quincy.informatik.rwth-a
achen.de>you write:
> I have thought of a way to implement this properly (the pgcc implemention is
> rather complicated), and I'd like to describe it here so people can stop me
> if the idea isn't so hot.
>
> First of all, the transformation should not be done before reload, since it
> requires additional registers, and increasing register pressure is likely
> to lose all the benefits we gain from the transformation.
Right.
> The actual splitting can be done in sched2 via a define_split.
Yup.
> The only
> problem that remains is to allocate a scratch register _after_ reload has
> run.
Yup.
> I suggest adding a small hard register life analysis pass (I've posted
> an early version of such a pass last Friday to egcs-patches), which is
> useful for a variety of reasons, not just for implementing -frisc.
This is precisely how I recommended we reimplement -frisc :-) I think Stan
Cox even has some code. Stan, want to post it to egcs-patches so that people
can start hacking on it?
jeff