X-Git-Url: http://git.sourceforge.jp/view?a=blobdiff_plain;f=gcc%2Fconfig%2Fmmix%2Fmmix.h;h=80e928b42b5395442a34e182a7b96a0e2eeae102;hb=bbfbe35198f5d5ec9f9140c8832f3b5ab1dfa876;hp=93c286b4bb770df6cf9a991fd1fe1464acb7df5d;hpb=d3988102d5e67b60046a2e0cb479d1b9ebbb647b;p=pf3gnuchains%2Fgcc-fork.git diff --git a/gcc/config/mmix/mmix.h b/gcc/config/mmix/mmix.h index 93c286b4bb7..80e928b42b5 100644 --- a/gcc/config/mmix/mmix.h +++ b/gcc/config/mmix/mmix.h @@ -49,7 +49,7 @@ Boston, MA 02111-1307, USA. */ #define MMIX_HIMULT_REGNUM 258 #define MMIX_REMAINDER_REGNUM 260 #define MMIX_ARG_POINTER_REGNUM 261 -#define MMIX_LAST_REGISTER_FILE_REGNUM 31 +#define MMIX_LAST_STACK_REGISTER_REGNUM 31 /* Four registers; "ideally, these registers should be call-clobbered", so just grab a bunch of the common clobbered registers. FIXME: Last @@ -91,6 +91,7 @@ extern struct rtx_def *mmix_compare_op1; struct machine_function { int has_landing_pad; + int highest_saved_stack_register; }; /* For these target macros, there is no generic documentation here. You @@ -695,7 +696,7 @@ enum reg_class #define CAN_ELIMINATE(FROM, TO) 1 #define INITIAL_ELIMINATION_OFFSET(FROM, TO, OFFSET) \ - (OFFSET) = mmix_initial_elimination_offset (FROM, TO); + (OFFSET) = mmix_initial_elimination_offset (FROM, TO) /* Node: Stack Arguments */ @@ -904,32 +905,7 @@ typedef struct { int regs; int lib; int now_varargs; } CUMULATIVE_ARGS; #define DATA_SECTION_ASM_OP \ mmix_data_section_asm_op () -/* Stuff copied from elfos.h. */ -#define EXTRA_SECTIONS in_const - -#define EXTRA_SECTION_FUNCTIONS \ - CONST_SECTION_FUNCTION - -#define READONLY_DATA_SECTION() const_section () - -#define CONST_SECTION_ASM_OP "\t.section\t.rodata" - -#define CONST_SECTION_FUNCTION \ -void \ -const_section () \ -{ \ - if (in_section != in_const) \ - { \ - fprintf (asm_out_file, "%s\n", CONST_SECTION_ASM_OP); \ - in_section = in_const; \ - } \ -} - -#undef SELECT_RTX_SECTION -#define SELECT_RTX_SECTION(MODE, RTX, ALIGN) const_section () - -#define SELECT_SECTION(DECL, RELOC, ALIGN) \ - mmix_select_section (DECL, RELOC, ALIGN) +#define READONLY_DATA_SECTION_ASM_OP "\t.section\t.rodata" #define ENCODE_SECTION_INFO(DECL, FIRST) \ mmix_encode_section_info (DECL, FIRST) @@ -937,9 +913,6 @@ const_section () \ #define STRIP_NAME_ENCODING(VAR, SYM_NAME) \ (VAR) = mmix_strip_name_encoding (SYM_NAME) -#define UNIQUE_SECTION(DECL, RELOC) \ - mmix_unique_section (decl, reloc) - /* Node: PIC */ /* (empty) */ @@ -1196,7 +1169,6 @@ const_section () \ #define FUNCTION_MODE QImode -/* When in due time we *will* have some specific headers. */ #define NO_IMPLICIT_EXTERN_C #define HANDLE_SYSV_PRAGMA @@ -1206,6 +1178,10 @@ const_section () \ #define NO_DOLLAR_IN_LABEL #define NO_DOT_IN_LABEL +/* Calculate the highest used supposed saved stack register. */ +#define MACHINE_DEPENDENT_REORG(INSN) \ + mmix_machine_dependent_reorg (INSN) + #endif /* GCC_MMIX_H */ /* * Local variables: