Commit 5dead3e5 by Dale Johannesen Committed by Stan Shebs

rs6000.h (FIXED_REGISTERS): Use FIXED_R2.

2001-09-17  Dale Johannesen  <dalej@apple.com>

        * config/rs6000/rs6000.h (FIXED_REGISTERS): Use FIXED_R2.
        * config/rs6000/aix.h (FIXED_R2): Define.
        * config/rs6000/darwin.h (FIXED_R2): Define.
        * config/rs6000/sysv4.h (FIXED_R2): Define.

From-SVN: r45669
parent 5d5e5e4e
2001-09-17 Dale Johannesen <dalej@apple.com>
* config/rs6000/rs6000.h (FIXED_REGISTERS): Use FIXED_R2.
* config/rs6000/aix.h (FIXED_R2): Define.
* config/rs6000/darwin.h (FIXED_R2): Define.
* config/rs6000/sysv4.h (FIXED_R2): Define.
2001-09-17 Jeff Sturm <jsturm@one-point.com>
* except.c (dw2_build_landing_pads): New local
......
......@@ -161,6 +161,7 @@ Boston, MA 02111-1307, USA. */
#define TARGET_NO_TOC 0
#define TARGET_TOC 1
#define FIXED_R2 1
/* AIX allows r13 to be used. */
#define FIXED_R13 0
......
......@@ -39,6 +39,8 @@ Boston, MA 02111-1307, USA. */
#define CC1_SPEC "%{!static:-fPIC}"
/* Make both r2 and r3 available for allocation. */
#define FIXED_R2 0
#define FIXED_R13 0
#undef TARGET_DEFAULT
......
......@@ -641,14 +641,15 @@ extern int rs6000_debug_arg; /* debug argument handling */
/* 1 for registers that have pervasive standard uses
and are not available for the register allocator.
On RS/6000, r1 is used for the stack and r2 is used as the TOC pointer.
On RS/6000, r1 is used for the stack. On Darwin, r2 is available
as a local register; for all other OS's r2 is the TOC pointer.
cr5 is not supposed to be used.
On System V implementations, r13 is fixed and not available for use. */
#define FIXED_REGISTERS \
{0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, FIXED_R13, 0, 0, \
{0, 1, FIXED_R2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, FIXED_R13, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
......
......@@ -314,9 +314,9 @@ do { \
#undef PROCESSOR_DEFAULT
#define PROCESSOR_DEFAULT PROCESSOR_PPC750
#define FIXED_R2 1
/* System V.4 uses register 13 as a pointer to the small data area,
so it is not available to the normal user. */
#define FIXED_R13 1
/* Size of the V.4 varargs area if needed. */
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment