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/sh | |
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/sh')
-rw-r--r-- | gcc/config/sh/sh-protos.h | 4 | ||||
-rw-r--r-- | gcc/config/sh/sh.c | 8 | ||||
-rw-r--r-- | gcc/config/sh/sh.h | 4 |
3 files changed, 6 insertions, 10 deletions
diff --git a/gcc/config/sh/sh-protos.h b/gcc/config/sh/sh-protos.h index 81501b0..eb2f201 100644 --- a/gcc/config/sh/sh-protos.h +++ b/gcc/config/sh/sh-protos.h @@ -103,10 +103,6 @@ extern rtx sh_va_arg (tree, tree); #endif /* TREE_CODE */ #endif /* RTX_CODE */ -#ifdef TREE_CODE -extern tree sh_build_va_list (void); -#endif /* TREE_CODE */ - extern const char *output_jump_label_table (void); extern int sh_handle_pragma (int (*)(void), void (*)(int), const char *); extern struct rtx_def *get_fpscr_rtx (void); diff --git a/gcc/config/sh/sh.c b/gcc/config/sh/sh.c index 4207719..d84a36f 100644 --- a/gcc/config/sh/sh.c +++ b/gcc/config/sh/sh.c @@ -246,6 +246,7 @@ static rtx sh_builtin_saveregs (void); static void sh_setup_incoming_varargs (CUMULATIVE_ARGS *, enum machine_mode, tree, int *, int); static bool sh_strict_argument_naming (CUMULATIVE_ARGS *); static bool sh_pretend_outgoing_varargs_named (CUMULATIVE_ARGS *); +static tree sh_build_builtin_va_list (void); /* Initialize the GCC target structure. */ @@ -345,6 +346,9 @@ static bool sh_pretend_outgoing_varargs_named (CUMULATIVE_ARGS *); #undef TARGET_PRETEND_OUTGOING_VARARGS_NAMED #define TARGET_PRETEND_OUTGOING_VARARGS_NAMED sh_pretend_outgoing_varargs_named +#undef TARGET_BUILD_BUILTIN_VA_LIST +#define TARGET_BUILD_BUILTIN_VA_LIST sh_build_builtin_va_list + struct gcc_target targetm = TARGET_INITIALIZER; /* Print the operand address in x to the stream. */ @@ -5911,8 +5915,8 @@ sh_builtin_saveregs (void) /* Define the `__builtin_va_list' type for the ABI. */ -tree -sh_build_va_list (void) +static tree +sh_build_builtin_va_list (void) { tree f_next_o, f_next_o_limit, f_next_fp, f_next_fp_limit, f_next_stack; tree record; diff --git a/gcc/config/sh/sh.h b/gcc/config/sh/sh.h index 4ccff4b..907e765 100644 --- a/gcc/config/sh/sh.h +++ b/gcc/config/sh/sh.h @@ -2033,10 +2033,6 @@ struct sh_args { /* Perform any needed actions needed for a function that is receiving a variable number of arguments. */ -/* Define the `__builtin_va_list' type for the ABI. */ -#define BUILD_VA_LIST_TYPE(VALIST) \ - (VALIST) = sh_build_va_list () - /* Implement `va_start' for varargs and stdarg. */ #define EXPAND_BUILTIN_VA_START(valist, nextarg) \ sh_va_start (valist, nextarg) |