This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: adding a new register type to i386.h, and add spill/fill support
- From: Ian Lance Taylor <ian at airs dot com>
- To: Tyler Anderson <tyleranderson5 at yahoo dot com>
- Cc: gcc at gcc dot gnu dot org
- Date: 23 Oct 2005 22:02:40 -0700
- Subject: Re: adding a new register type to i386.h, and add spill/fill support
- References: <20051024012345.13285.qmail@web53902.mail.yahoo.com>
Tyler Anderson <tyleranderson5@yahoo.com> writes:
> I've already added the new type to i386.h, however, I
> think I'm missing something in the #define
> REG_CLASS_CONTENTS section. Could anyone point me to
> more documentation about what each bit means? We need
> to add a new register type, and extend the # of
> existing registers. Extending the # of a register
> seems easy, but it's unclear to me if it has been done
> right since I don't know what each bit set in the
> REG_CLASS_CONTENTS define is.
Well, there is documentation in the internals manual, of course.
Each bit in each entry in REG_CLASS_CONTENTS corresponds to a
particular register. Which register it means is target specific, but
you can figure it out based on, e.g., REGISTER_NAMES. For example,
for the i386, bit 0 is ax, bit 1 is dx, etc.
Ian