X-Git-Url: http://git.sourceforge.jp/view?p=pf3gnuchains%2Fgcc-fork.git;a=blobdiff_plain;f=gcc%2Fconfig%2Farc%2Farc.h;h=db8b8d452fd22c09b44891d68f268de21d2927c1;hp=1390d6bc2a17347c7e454c807ea73637a97c2e2b;hb=7ccc713a1f28ef9a1206745ceba153374cdd6f7a;hpb=6f432b5846a7fecc8e5dba4f0ceda0c17f5902a5 diff --git a/gcc/config/arc/arc.h b/gcc/config/arc/arc.h index 1390d6bc2a1..db8b8d452fd 100644 --- a/gcc/config/arc/arc.h +++ b/gcc/config/arc/arc.h @@ -665,15 +665,9 @@ extern enum reg_class arc_regno_reg_class[FIRST_PSEUDO_REGISTER]; a reg. This includes arguments that have to be passed by reference as the pointer to them is passed in a reg if one is available (and that is what we're given). - When passing arguments NAMED is always 1. When receiving arguments NAMED - is 1 for each argument except the last in a stdarg/varargs function. In - a stdarg function we want to treat the last named arg as named. In a - varargs function we want to treat the last named arg (which is - `__builtin_va_alist') as unnamed. This macro is only used in this file. */ -#define PASS_IN_REG_P(CUM, MODE, TYPE, NAMED) \ -((!current_function_varargs || (NAMED)) \ - && (CUM) < MAX_ARC_PARM_REGS \ +#define PASS_IN_REG_P(CUM, MODE, TYPE) \ +((CUM) < MAX_ARC_PARM_REGS \ && ((ROUND_ADVANCE_CUM ((CUM), (MODE), (TYPE)) \ + ROUND_ADVANCE_ARG ((MODE), (TYPE)) \ <= MAX_ARC_PARM_REGS))) @@ -693,7 +687,7 @@ extern enum reg_class arc_regno_reg_class[FIRST_PSEUDO_REGISTER]; /* On the ARC the first MAX_ARC_PARM_REGS args are normally in registers and the rest are pushed. */ #define FUNCTION_ARG(CUM, MODE, TYPE, NAMED) \ -(PASS_IN_REG_P ((CUM), (MODE), (TYPE), (NAMED)) \ +(PASS_IN_REG_P ((CUM), (MODE), (TYPE)) \ ? gen_rtx_REG ((MODE), ROUND_ADVANCE_CUM ((CUM), (MODE), (TYPE))) \ : 0)