This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
guarantees on memory operand of movm
- To: <gcc at gcc dot gnu dot org>
- Subject: guarantees on memory operand of movm
- From: Alan Shieh <ashieh at OCF dot Berkeley dot EDU>
- Date: Thu, 19 Jul 2001 20:55:52 -0700 (PDT)
Hello,
I am writing a gcc backend for a somewhat non-standard RISC architecture,
with 6 8-bit registers and restricted memory access modes to a 16-bit
address space.
What are the guarantees on the memory operand to movm? My assumption is
that the operand will be either based, indexed, or absolute, with the
appropriate types avoided if any of those are disallowed by the target
description macros (ie, in the core that I am targeting, only register
indirect and a "use register as MSB, immediate as LSB" address modes are
available).
I would also like to know if the output of define_expand is fed back into
the RTL generator if the output RTL cannot be matched against insns. I
would assume not, since this probably introduces complications in reload.
I am planning to restrict the stack to 8-bits of address so that address
generation during reloads is cheaper (the uC applications I am targetting
should not need more than this). Can I count on using reload{in,out}_* to
capture this case?
Is there any work on implementing static allocation of automatic locals
based on call graphs in gcc?
-Alan Shieh