diff options
author | Jim Wilson <wilson@gcc.gnu.org> | 1993-10-23 17:25:31 -0700 |
---|---|---|
committer | Jim Wilson <wilson@gcc.gnu.org> | 1993-10-23 17:25:31 -0700 |
commit | 24e214e3d3fb1f44c2e77e3c142214867a7d51b7 (patch) | |
tree | c79bcd25c2df6c1f5da34c58ab8cf4397b1eb78a | |
parent | ffa9d0b19d032ce60053ecff9e4e54a2007a910f (diff) | |
download | gcc-24e214e3d3fb1f44c2e77e3c142214867a7d51b7.zip gcc-24e214e3d3fb1f44c2e77e3c142214867a7d51b7.tar.gz gcc-24e214e3d3fb1f44c2e77e3c142214867a7d51b7.tar.bz2 |
(mips_abicalls): Declare new variable.
(PIC_FUNCTION_ADDR_REGNUM): New macro.
(STARTING_FRAME_OFFSET): Handle TARGET_ABICALLS case.
From-SVN: r5875
-rw-r--r-- | gcc/config/mips/mips.h | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/gcc/config/mips/mips.h b/gcc/config/mips/mips.h index f3b799a..22e5946 100644 --- a/gcc/config/mips/mips.h +++ b/gcc/config/mips/mips.h @@ -108,6 +108,7 @@ extern enum processor_type mips_cpu; /* which cpu are we scheduling for */ extern int mips_isa; /* architectural level */ extern char *mips_cpu_string; /* for -mcpu=<xxx> */ extern char *mips_isa_string; /* for -mips{1,2,3} */ +extern enum attr_abicalls mips_abicalls;/* for svr4 abi pic calls */ extern int dslots_load_total; /* total # load related delay slots */ extern int dslots_load_filled; /* # filled load delay slots */ extern int dslots_jump_total; /* total # jump related delay slots */ @@ -1247,6 +1248,8 @@ extern char mips_hard_regno_mode_ok[][FIRST_PSEUDO_REGISTER]; files to allocate such a register (if necessary). */ #define PIC_OFFSET_TABLE_REGNUM (GP_REG_FIRST + 28) +#define PIC_FUNCTION_ADDR_REGNUM (GP_REG_FIRST + 25) + /* Define the classes of registers for register constraints in the machine description. Also define ranges of constants. @@ -1512,7 +1515,9 @@ extern enum reg_class mips_char_to_class[]; If FRAME_GROWS_DOWNWARD, this is the offset to the END of the first local allocated. Otherwise, it is the offset to the BEGINNING of the first local allocated. */ -#define STARTING_FRAME_OFFSET current_function_outgoing_args_size +#define STARTING_FRAME_OFFSET \ + (current_function_outgoing_args_size \ + + (TARGET_ABICALLS ? MIPS_STACK_ALIGN (UNITS_PER_WORD) : 0)) /* Offset from the stack pointer register to an item dynamically allocated on the stack, e.g., by `alloca'. |