base + index register addressing

Nick Ing-Simmons nik@tiuk.ti.com
Mon Oct 20 09:43:00 GMT 1997


Jeffrey A Law <law@cygnus.com> writes:
>  In message < 199710172339.MAA26949@ongaonga.chch.cri.nz >you write:
>  > Most of the utility of the patch occurs when an incoming function
>  > argument is in a hard base (or possibly index) register.   
>Yup.  I'm all too aware of losing base vs index distinctions
>when hard argument registers.
>
>You see, on the PA, it's absolutely critical that we be able to
>distinguish the base from the index -- if you reverse them in a
>memory reference it will fail at runtime.  Furthermore, any
>general register can be a base or index.  Thus we can't use a
>set of registers to know which is the base and which is the index.

On some of TI's DSPs  index/base are very important as well.
This is almost the inverse of above case - sets of registers are vital !
Here to use a register as an index its hard-register number has to be 
"related" to the hard register number of the base.
Current GCC register allocation just cannot handle this, so I have
"given up" (and just lurk here).





More information about the Gcc mailing list