Fix ARM Maverick registers in arm/pe.h
Nick Clifton
nickc@redhat.com
Wed Mar 12 12:43:00 GMT 2003
Hi Guys,
I am applying the patch below to fix a small bug introduced to the
arm-pe port by my addition of the support for Cirrus's Maverick
co-processor. The pe.h header was not marking the Maverick registers
as being fixed. The patch also fixes the comment in arm.h which
describes how FIRST_PSEUDO_REGISTER is computed.
Cheers
Nick
2003-03-12 Nick Clifton <nickc@redhat.com>
* config/arm/pe.h (FIXED_REGISTERS): Add Maverick registers.
(CALL_USED_REGISTERS): Likewise.
* config/arm/arm.h (FIRST_PSEUDO_REGISTER): Update comment
describing how this value is calculated.
Index: gcc/config/arm/pe.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/arm/pe.h,v
retrieving revision 1.17
diff -c -3 -p -w -r1.17 pe.h
*** gcc/config/arm/pe.h 10 Feb 2003 16:33:09 -0000 1.17
--- gcc/config/arm/pe.h 12 Mar 2003 12:21:15 -0000
***************
*** 81,87 ****
0,0,0,0,0,0,0,0, \
0,0,0,1,0,1,0,1, \
0,0,0,0,0,0,0,0, \
! 1,1,1 \
}
/* Same as arm.h except r10 is call-saved, not fixed. */
--- 81,89 ----
0,0,0,0,0,0,0,0, \
0,0,0,1,0,1,0,1, \
0,0,0,0,0,0,0,0, \
! 1,1,1, \
! 1,1,1,1,1,1,1,1, \
! 1,1,1,1,1,1,1,1 \
}
/* Same as arm.h except r10 is call-saved, not fixed. */
***************
*** 91,97 ****
1,1,1,1,0,0,0,0, \
0,0,0,1,1,1,1,1, \
1,1,1,1,0,0,0,0, \
! 1,1,1 \
}
/* Define this macro if in some cases global symbols from one translation
--- 93,101 ----
1,1,1,1,0,0,0,0, \
0,0,0,1,1,1,1,1, \
1,1,1,1,0,0,0,0, \
! 1,1,1, \
! 1,1,1,1,1,1,1,1, \
! 1,1,1,1,1,1,1,1 \
}
/* Define this macro if in some cases global symbols from one translation
Index: gcc/config/arm/arm.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/arm/arm.h,v
retrieving revision 1.187
diff -c -3 -p -w -r1.187 arm.h
*** gcc/config/arm/arm.h 10 Mar 2003 17:53:18 -0000 1.187
--- gcc/config/arm/arm.h 12 Mar 2003 12:21:15 -0000
*************** extern const char * structure_size_strin
*** 1008,1015 ****
#define IS_CIRRUS_REGNUM(REGNUM) \
(((REGNUM) >= FIRST_CIRRUS_FP_REGNUM) && ((REGNUM) <= LAST_CIRRUS_FP_REGNUM))
! /* The number of hard registers is 16 ARM + 8 FPA + 1 CC + 1 SFP. */
! /* Cirrus registers take us up to 43... */
#define FIRST_PSEUDO_REGISTER 43
/* Value should be nonzero if functions must have frame pointers.
--- 1008,1015 ----
#define IS_CIRRUS_REGNUM(REGNUM) \
(((REGNUM) >= FIRST_CIRRUS_FP_REGNUM) && ((REGNUM) <= LAST_CIRRUS_FP_REGNUM))
! /* The number of hard registers is 16 ARM + 8 FPA + 1 CC + 1 SFP + 1 AFP. */
! /* + 16 Cirrus registers take us up to 43. */
#define FIRST_PSEUDO_REGISTER 43
/* Value should be nonzero if functions must have frame pointers.
More information about the Gcc-patches
mailing list