This is the mail archive of the
mailing list for the GCC project.
Re: RFA: new reload macro: MODE_BASE_REG_CLASS
- From: Bernd Schmidt <bernds at redhat dot com>
- To: Nick Clifton <nickc at cambridge dot redhat dot com>
- Cc: <gcc-patches at gcc dot gnu dot org>
- Date: Fri, 14 Dec 2001 11:28:50 +0000 (GMT)
- Subject: Re: RFA: new reload macro: MODE_BASE_REG_CLASS
On 14 Dec 2001, Nick Clifton wrote:
> I would like to obtain permission to apply the following patch. It
> creates a new macro for use by reload. This macro, called
> MODE_BASE_REG_CLASS is a variant of the current BASE_REG_CLASS macro
> except that it allows the selection of the base register class in a
> mode dependent fashion.
> The patch was created by Bernd Schmidt some time ago, and I have
> recently found that it is needed by the ARM port in order to fix
> some code generation problems when it is running in THUMB mode. In
> particular for the Thumb, the stack pointer is a valid base register
> for SI mode quantities but not QI or HI mode quantities.
Since it was only meant as a quick hack at the time, the patch isn't
really complete. There are several other files that use the BASE_REG_CLASS
macro (e.g. regclass.c, regrename.c). We should probably update all of
them, even if only the ones in reload.c are strictly necessary to fix the
problem on the Thumb (well, regrename too probably).