This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Adding soft-registers (was: trouble with porting architecture)
- From: James Dessart <james at skwirl dot ca>
- To: Eric Botcazou <ebotcazou at libertysurf dot fr>
- Cc: gcc at gcc dot gnu dot org
- Date: Wed, 7 Jan 2004 22:20:34 -0500
- Subject: Adding soft-registers (was: trouble with porting architecture)
- References: <C9C03961-3ADC-11D8-82CB-003065E07450@skwirl.ca> <005801c3cefb$39f0c760$6f9253d4@fr> <F2FD920A-3AF3-11D8-82CB-003065E07450@skwirl.ca> <200401071951.28820.ebotcazou@libertysurf.fr>
On 7-Jan-04, at 1:51 PM, Eric Botcazou wrote:
The MC6809 back-end appears to use a "looseness" strategy to avoid
generating
lots of memory references during RTL expansion and to expect that
reload
will fix up everything at the end. This doesn't work here because the
subqi3 pattern is not commutative.
Thanks! This seems to fix up the problem with the compiler. I'll run
it through its paces when I get a chance.
What I would like to do, though, is add some soft registers to the
port. Others are interested in using the port for floating point, with
soft floating point support, but none of us have the knowledge to add
the required extra registers. I tried reading the gccint documents,
but they're really just a reference to what's there. I tried using the
mc68hc11 port (which has soft registers) to see how to do it, but I got
lost between the piles of related macros, the C implementation and the
machine description. Is there a howto somewhere?
Thanks,
James