diff options
author | Richard Henderson <rth@redhat.com> | 2003-10-29 18:02:49 -0800 |
---|---|---|
committer | Richard Henderson <rth@gcc.gnu.org> | 2003-10-29 18:02:49 -0800 |
commit | c35d187fc31fdd5836d1acb13e29a03537d22b46 (patch) | |
tree | de282819f47f9d9172dff72434c1129a8147296c /gcc/config/xtensa | |
parent | 12d104a2b9c2bcb0e85cd0289dc7616422d55753 (diff) | |
download | gcc-c35d187fc31fdd5836d1acb13e29a03537d22b46.zip gcc-c35d187fc31fdd5836d1acb13e29a03537d22b46.tar.gz gcc-c35d187fc31fdd5836d1acb13e29a03537d22b46.tar.bz2 |
builtins.c (std_build_builtin_va_list): New.
* builtins.c (std_build_builtin_va_list): New.
* expr.h (std_build_builtin_va_list): Declare.
* defaults.h (BUILD_VA_LIST_TYPE): New.
* system.h (BUILD_VA_LIST_TYPE): Poison.
* target-def.h (TARGET_BUILD_BUILTIN_VA_LIST): New.
* target.h (struct gcc_target): Add build_builtin_va_list.
* tree.c (build_common_tree_nodes_2): Use it.
* config/alpha/alpha-protos.h, config/alpha/alpha.c,
config/alpha/alpha.h, config/alpha/unicosmk.h,
config/d30v/d30v-protos.h, config/d30v/d30v.c, config/d30v/d30v.h,
config/i386/i386-protos.h, config/i386/i386.c, config/i386/i386.h,
config/i860/i860-protos.h, config/i860/i860.c, config/i860/i860.h,
config/i960/i960-protos.h, config/i960/i960.c, config/i960/i960.h,
config/mips/iris6.h, config/mips/mips-protos.h, config/mips/mips.c,
config/mips/mips.h, config/rs6000/rs6000-protos.h,
config/rs6000/rs6000.c, config/rs6000/rs6000.h,
config/s390/s390-protos.h, config/s390/s390.c, config/s390/s390.h,
config/sh/sh-protos.h, config/sh/sh.c, config/sh/sh.h,
config/xtensa/xtensa-protos.h, config/xtensa/xtensa.c,
config/xtensa/xtensa.h: Rename foo_build_va_list to
foo_build_builtin_va_list; make it static. Define
TARGET_BUILD_BUILTIN_VA_LIST. Remove BUILD_VA_LIST_TYPE.
Update protos.
* config/i386/i386.c (ix86_expand_carry_flag_compare): Make static.
* config/iq2000/iq2000.h (BUILD_VA_LIST_TYPE): Remove.
From-SVN: r73076
Diffstat (limited to 'gcc/config/xtensa')
-rw-r--r-- | gcc/config/xtensa/xtensa-protos.h | 1 | ||||
-rw-r--r-- | gcc/config/xtensa/xtensa.c | 8 | ||||
-rw-r--r-- | gcc/config/xtensa/xtensa.h | 4 |
3 files changed, 6 insertions, 7 deletions
diff --git a/gcc/config/xtensa/xtensa-protos.h b/gcc/config/xtensa/xtensa-protos.h index 9c37c41..0d6d45f 100644 --- a/gcc/config/xtensa/xtensa-protos.h +++ b/gcc/config/xtensa/xtensa-protos.h @@ -96,7 +96,6 @@ extern int a7_overlap_mentioned_p (rtx); extern void function_arg_advance (CUMULATIVE_ARGS *, enum machine_mode, tree); extern struct rtx_def *function_arg (CUMULATIVE_ARGS *, enum machine_mode, tree, int); -extern tree xtensa_build_va_list (void); #endif /* TREE_CODE */ extern int xtensa_mask_immediate (int); diff --git a/gcc/config/xtensa/xtensa.c b/gcc/config/xtensa/xtensa.c index 23798b0..2e69c46 100644 --- a/gcc/config/xtensa/xtensa.c +++ b/gcc/config/xtensa/xtensa.c @@ -205,6 +205,7 @@ static unsigned int xtensa_multibss_section_type_flags (tree, const char *, static void xtensa_select_rtx_section (enum machine_mode, rtx, unsigned HOST_WIDE_INT); static bool xtensa_rtx_costs (rtx, int, int, int *); +static tree xtensa_build_builtin_va_list (void); static int current_function_arg_words; static const int reg_nonleaf_alloc_order[FIRST_PSEUDO_REGISTER] = @@ -233,6 +234,9 @@ static const int reg_nonleaf_alloc_order[FIRST_PSEUDO_REGISTER] = #undef TARGET_ADDRESS_COST #define TARGET_ADDRESS_COST hook_int_rtx_0 +#undef TARGET_BUILD_BUILTIN_VA_LIST +#define TARGET_BUILD_BUILTIN_VA_LIST xtensa_build_builtin_va_list + struct gcc_target targetm = TARGET_INITIALIZER; @@ -2318,8 +2322,8 @@ xtensa_return_addr (int count, rtx frame) references argument word N for 0 <= N < 6, and __va_stk[N*4] references argument word N for N >= 6. */ -tree -xtensa_build_va_list (void) +static tree +xtensa_build_builtin_va_list (void) { tree f_stk, f_reg, f_ndx, record, type_decl; diff --git a/gcc/config/xtensa/xtensa.h b/gcc/config/xtensa/xtensa.h index 621dd5f..dae6810 100644 --- a/gcc/config/xtensa/xtensa.h +++ b/gcc/config/xtensa/xtensa.h @@ -930,10 +930,6 @@ typedef struct xtensa_args { 0, VOIDmode, 1, addr, Pmode); \ } while (0) -/* Define the `__builtin_va_list' type for the ABI. */ -#define BUILD_VA_LIST_TYPE(VALIST) \ - (VALIST) = xtensa_build_va_list () - /* If defined, is a C expression that produces the machine-specific code for a call to '__builtin_saveregs'. This code will be moved to the very beginning of the function, before any parameter access |