(CPP_SPECS): Define and use _ABI64 instead of _MIPS_SIM_ABI64.
(CPP_SPECS): Define and use _ABI64 instead of _MIPS_SIM_ABI64. (SETUP_INCOMING_VARARGS): Set MEM_IN_STRUCT_P if big endian target. From-SVN: r9398
This commit is contained in:
parent
e340018d59
commit
c009da4ff8
@ -52,9 +52,9 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
|
||||
%{!mips1: %{!mips2: %{!mips3: %{!mips4: -D_MIPS_ISA=_MIPS_ISA_MIPS4}}}} \
|
||||
%{mips1: -D_MIPS_SIM=_MIPS_SIM_ABI32} \
|
||||
%{mips2: -D_MIPS_SIM=_MIPS_SIM_ABI32} \
|
||||
%{mips3: -D_MIPS_SIM=_MIPS_SIM_ABI64} \
|
||||
%{mips4: -D_MIPS_SIM=_MIPS_SIM_ABI64} \
|
||||
%{!mips1: %{!mips2: %{!mips3: %{!mips4: -D_MIPS_SIM=_MIPS_SIM_ABI64}}}} \
|
||||
%{mips3: -D_ABI64=3 -D_MIPS_SIM=_ABI64} \
|
||||
%{mips4: -D_ABI64=3 -D_MIPS_SIM=_ABI64} \
|
||||
%{!mips1: %{!mips2: %{!mips3: %{!mips4: -D_ABI64=3 -D_MIPS_SIM=_ABI64}}}} \
|
||||
%{!mint64: -D_MIPS_SZINT=32}%{mint64: -D_MIPS_SZINT=64} \
|
||||
%{mips1: -D_MIPS_SZLONG=32}%{mips2: -D_MIPS_SZLONG=32} \
|
||||
%{!mips1:%{!mips2: -D_MIPS_SZLONG=64}} \
|
||||
@ -137,15 +137,24 @@ extern struct rtx_def *mips_function_value ();
|
||||
- ! current_function_varargs) * UNITS_PER_WORD; \
|
||||
\
|
||||
if (! (NO_RTL)) \
|
||||
{ \
|
||||
rtx mem = gen_rtx (MEM, BLKmode, \
|
||||
plus_constant (virtual_incoming_args_rtx, \
|
||||
- PRETEND_SIZE)); \
|
||||
/* va_arg is an array access in this case, which causes it to \
|
||||
get MEM_IN_STRUCT_P set. We must set it here so that the \
|
||||
insn scheduler won't assume that these stores can't \
|
||||
possibly overlap with the va_arg loads. */ \
|
||||
if (BYTES_BIG_ENDIAN) \
|
||||
MEM_IN_STRUCT_P (mem) = 1; \
|
||||
move_block_from_reg \
|
||||
((CUM).arg_words + GP_ARG_FIRST + ! current_function_varargs, \
|
||||
gen_rtx (MEM, BLKmode, \
|
||||
plus_constant (virtual_incoming_args_rtx, \
|
||||
- PRETEND_SIZE)), \
|
||||
mem, \
|
||||
(MAX_ARGS_IN_REGISTERS - (CUM).arg_words \
|
||||
- ! current_function_varargs), \
|
||||
PRETEND_SIZE); \
|
||||
} \
|
||||
} \
|
||||
}
|
||||
|
||||
#define STRICT_ARGUMENT_NAMING
|
||||
|
Loading…
Reference in New Issue
Block a user