Mercurial > hg > CbC > CbC_gcc
diff gcc/config/mep/mep.h @ 67:f6334be47118
update gcc from gcc-4.6-20100522 to gcc-4.6-20110318
author | nobuyasu <dimolto@cr.ie.u-ryukyu.ac.jp> |
---|---|
date | Tue, 22 Mar 2011 17:18:12 +0900 |
parents | 77e2b8dfacca |
children |
line wrap: on
line diff
--- a/gcc/config/mep/mep.h Tue May 25 18:58:51 2010 +0900 +++ b/gcc/config/mep/mep.h Tue Mar 22 17:18:12 2011 +0900 @@ -1,5 +1,5 @@ /* Definitions for Toshiba Media Processor - Copyright (C) 2001, 2003, 2004, 2005, 2007, 2008, 2009 + Copyright (C) 2001, 2003, 2004, 2005, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. Contributed by Red Hat, Inc. @@ -108,8 +108,6 @@ } \ while (0) -extern int target_flags; - /* Controlled by MeP-Integrator. */ #define TARGET_H1 0 @@ -134,19 +132,6 @@ #define TARGET_VERSION fprintf (stderr, " (Toshiba Media Processor (MeP))"); -#define OVERRIDE_OPTIONS mep_override_options (); - -/* The MeP config tool will add TARGET_OPTION_TRANSLATE_TABLE here. */ -#define TARGET_OPTION_TRANSLATE_TABLE \ - {"-mall-opts", "-maverage -mmult -mdiv -mbitops -mleadz \ - -mabsdiff -mminmax -mclip -msatur -mdebug" }, \ - {"-mno-opts", "-mno-average -mno-mult -mno-div -mno-bitops -mno-leadz \ - -mno-absdiff -mno-minmax -mno-clip -mno-satur -mno-debug" }, \ - {"-mfar", "-ml -mtf -mc=far" } \ -/* start-target-option-table */ \ -, {"-mconfig=default", "-mconfig=default -mmult -mdiv -D__MEP_CONFIG_ISA=1" } \ -/* end-target-option-table */ - /* The MeP config tool will replace this as appropriate. */ #define DEFAULT_ENDIAN_SPEC "%{!meb: -mel}" @@ -156,29 +141,25 @@ /* Don't add an endian option when building the libraries. */ #define DRIVER_SELF_SPECS \ "%{!mlibrary:" DEFAULT_ENDIAN_SPEC "}", \ - "%{mlibrary: " LIBRARY_CONFIG_SPEC " %{!mel:-meb}}" + "%{mlibrary: " LIBRARY_CONFIG_SPEC " %{!mel:-meb}}", \ + "%{mall-opts:-maverage -mmult -mdiv -mbitops -mleadz \ + -mabsdiff -mminmax -mclip -msatur -mdebug} %<mall-opts", \ + "%{mno-opts:-mno-average -mno-mult -mno-div -mno-bitops -mno-leadz \ + -mno-absdiff -mno-minmax -mno-clip -mno-satur -mno-debug} %<mno-opts", \ + "%{mfar:-ml -mtf -mc=far} %<mfar", \ + "%{mconfig=default:-mmult -mdiv -D__MEP_CONFIG_ISA=1}" /* The MeP config tool will add COPROC_SELECTION_TABLE here. */ /* start-coproc-selection-table */ #define COPROC_SELECTION_TABLE \ {"default", ISA_EXT1} /* end-coproc-selection-table */ - -#define CAN_DEBUG_WITHOUT_FP - -#define OPTIMIZATION_OPTIONS(LEVEL, FOR_SIZE) mep_optimization_options () #define BITS_BIG_ENDIAN 0 #define BYTES_BIG_ENDIAN (TARGET_LITTLE_ENDIAN ? 0 : 1) #define WORDS_BIG_ENDIAN (TARGET_LITTLE_ENDIAN ? 0 : 1) -#ifdef __LITTLE_ENDIAN__ -#define LIBGCC2_WORDS_BIG_ENDIAN 0 -#else -#define LIBGCC2_WORDS_BIG_ENDIAN 1 -#endif - #define UNITS_PER_WORD 4 #define PROMOTE_MODE(MODE, UNSIGNEDP, TYPE) \ @@ -221,6 +202,18 @@ #define DOUBLE_TYPE_SIZE 64 #define LONG_DOUBLE_TYPE_SIZE 64 #define DEFAULT_SIGNED_CHAR 1 + +#undef SIZE_TYPE +#define SIZE_TYPE "unsigned int" + +#undef PTRDIFF_TYPE +#define PTRDIFF_TYPE "int" + +#undef WCHAR_TYPE +#define WCHAR_TYPE "long int" + +#undef WCHAR_TYPE_SIZE +#define WCHAR_TYPE_SIZE BITS_PER_WORD /* Register numbers: 0..15 core registers @@ -275,9 +268,6 @@ 1, CALL_USED_SHADOW_REGISTERS \ } -#define CONDITIONAL_REGISTER_USAGE \ - mep_conditional_register_usage (fixed_regs, call_used_regs); - #define REG_ALLOC_ORDER { \ /* core registers */ \ 3, 2, 1, 0, 9, 10, 11, 12, 4, 5, 6, 7, 8, 13, 14, 15, \ @@ -415,7 +405,7 @@ { 0xffffffff, 0xffffffff, 0xffffffff, 0x0001ffff }, /* ALL_REGS */ \ } -#define REGNO_REG_CLASS(REGNO) mep_regno_reg_class (REGNO) +#define REGNO_REG_CLASS(REGNO) (enum reg_class) mep_regno_reg_class (REGNO) #define IRA_COVER_CLASSES { GENERAL_REGS, CONTROL_REGS, CR_REGS, CCR_REGS, LIM_REG_CLASSES } @@ -503,18 +493,8 @@ #define ACCUMULATE_OUTGOING_ARGS 1 -#define RETURN_POPS_ARGS(FUNDECL, FUNTYPE, STACK_SIZE) 0 - -/* The ABI is thus: Arguments are in $1, $2, $3, $4, stack. Arguments - larger than 4 bytes are passed indirectly. Return value in 0, - unless bigger than 4 bytes, then the caller passes a pointer as the - first arg. For varargs, we copy $1..$4 to the stack. */ - -#define FUNCTION_ARG(CUM, MODE, TYPE, NAMED) \ - mep_function_arg (CUM, MODE, TYPE, NAMED) - #define FUNCTION_ARG_CALLEE_COPIES(CUM, MODE, TYPE, NAMED) 1 typedef struct @@ -526,9 +506,6 @@ #define INIT_CUMULATIVE_ARGS(CUM, FNTYPE, LIBNAME, FNDECL, N_NAMED_ARGS) \ mep_init_cumulative_args (& (CUM), FNTYPE, LIBNAME, FNDECL) -#define FUNCTION_ARG_ADVANCE(CUM, MODE, TYPE, NAMED) \ - mep_arg_advance (& (CUM), MODE, TYPE, NAMED) - #define FUNCTION_ARG_REGNO_P(REGNO) \ (((REGNO) >= 1 && (REGNO) <= 4) \ || ((REGNO) >= FIRST_CR_REGNO + 1 \ @@ -836,8 +813,6 @@ #define REGISTER_TARGET_PRAGMAS() mep_register_pragmas () -#define HANDLE_PRAGMA_PACK_PUSH_POP 1 - /* If defined, a C expression to determine the base term of address X. This macro is used in only one place: `find_base_term' in alias.c.