From 634f1f20df6193f043d70429d8d3d750563980a7 Mon Sep 17 00:00:00 2001 From: Michael Hayes Date: Wed, 22 Sep 1999 07:53:41 +0000 Subject: [PATCH] c4x.h (EXPAND_BUILTIN_VA_START): Call c4x_va_start. * config/c4x/c4x.h (EXPAND_BUILTIN_VA_START): Call c4x_va_start. * config/c4x/c4x.c (c4x_va_start): New function. From-SVN: r29578 --- gcc/ChangeLog | 5 +++++ gcc/config/c4x/c4x.c | 11 +++++++++++ gcc/config/c4x/c4x.h | 3 +++ 3 files changed, 19 insertions(+) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 93f0ee5f703..810dbdad0db 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +Wed Sep 22 19:50:12 1999 Michael Hayes + + * config/c4x/c4x.h (EXPAND_BUILTIN_VA_START): Call c4x_va_start. + * config/c4x/c4x.c (c4x_va_start): New function. + Tue Sep 21 18:40:01 1999 Jan Hubicka * genrecog.c (not_both_true): Handle correctly cases when called for diff --git a/gcc/config/c4x/c4x.c b/gcc/config/c4x/c4x.c index dafcb19dc9c..c3294efba16 100644 --- a/gcc/config/c4x/c4x.c +++ b/gcc/config/c4x/c4x.c @@ -588,6 +588,17 @@ c4x_function_arg (cum, mode, type, named) return NULL_RTX; } +void +c4x_va_start (stdarg_p, valist, nextarg) + int stdarg_p; + tree valist; + rtx nextarg; +{ + nextarg = plus_constant (nextarg, stdarg_p ? 0 : UNITS_PER_WORD * 2); + + std_expand_builtin_va_start (stdarg_p, valist, nextarg); +} + /* C[34]x arguments grow in weird ways (downwards) that the standard varargs stuff can't handle. */ diff --git a/gcc/config/c4x/c4x.h b/gcc/config/c4x/c4x.h index 81a5f1d99ff..559e9c46ffb 100644 --- a/gcc/config/c4x/c4x.h +++ b/gcc/config/c4x/c4x.h @@ -1127,6 +1127,9 @@ extern struct rtx_def *c4x_function_arg(); /* Varargs handling. */ +#define EXPAND_BUILTIN_VA_START(stdarg, valist, nextarg) \ + c4x_va_start (stdarg, valist, nextarg) + #define EXPAND_BUILTIN_VA_ARG(valist, type) \ c4x_va_arg (valist, type)