This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Correct RTL representation of reg-stack registers
On Tue, Apr 06, 1999 at 05:27:44PM -0700, Richard Henderson wrote:
> On Wed, Apr 07, 1999 at 01:42:19AM +0200, Jan Hubicka wrote:
> > Well, I always believe that one of the RTL invariants is that all used
> > and set registers are explicitly mentioned in the insn representation,
> > so I would consider this as broken rtl in the samy way as the previous.
>
> Perhaps. I don't think it is _so_ wrong -- its concise, and does
> not suffer from note lossage during splitting.
>
> > BTW whats about modelig it little bit like "normal stack" in alternate
> > adressing mode (so create some new "fp stack pointer" and implement pushing
> > and popping instruction by incrementing and decrementing this pointer).
> > The register references can be then something like
> > (reg (plus (reg <stack pointer>) 4))
>
> This was also discussed once upon a time. I think the outer
What was the result?
> reference had been named INDREG -- reusing MEM seemed dangerous.
Maybe we can even keep the normal registers and define, that
stack register = <stack pointer> - REGNO (register)
All instruction can be parallers using, incrementing or decrementing the
stack pointer.
We can emit EQUAL_TO notes (or note the exact value of stack pointer somewhere
in the rtls) to allow generating of insns.
With such solution we might stay with old RTL codes....
Honza
>
>
> r~
--
------------------------------------------------------------------------------
Have you browsed my www pages? Look at:
http://www.paru.cas.cz/~hubicka
Koules-the game for Svgalib,X11 and OS/2, Xonix-the game for X11
czech documentation for linux index, original 2D computer art and
funny 100 years old photos and articles are there!