mirror of
git://gcc.gnu.org/git/gcc.git
synced 2025-03-08 03:36:44 +08:00
calls.c (emit_library_call_value_1): Support INIT_CUMULATIVE_LIBCALL_ARGS.
* calls.c (emit_library_call_value_1): Support INIT_CUMULATIVE_LIBCALL_ARGS. * tm.texi (INIT_CUMULATIVE_LIBCALL_ARGS): Document it. From-SVN: r38706
This commit is contained in:
parent
ffc5c6a984
commit
97fc4caf7d
@ -1,3 +1,9 @@
|
||||
2001-01-05 Alexandre Oliva <aoliva@redhat.com>
|
||||
|
||||
* calls.c (emit_library_call_value_1): Support
|
||||
INIT_CUMULATIVE_LIBCALL_ARGS.
|
||||
* tm.texi (INIT_CUMULATIVE_LIBCALL_ARGS): Document it.
|
||||
|
||||
2001-01-04 Richard Henderson <rth@redhat.com>
|
||||
|
||||
* c-decl.c (finish_struct): Detect flexible array members
|
||||
|
@ -1,6 +1,6 @@
|
||||
/* Convert function calls to rtl insns, for GNU C compiler.
|
||||
Copyright (C) 1989, 1992, 1993, 1994, 1995, 1996, 1997, 1998
|
||||
1999, 2000 Free Software Foundation, Inc.
|
||||
1999, 2000, 2001 Free Software Foundation, Inc.
|
||||
|
||||
This file is part of GNU CC.
|
||||
|
||||
@ -3589,7 +3589,11 @@ emit_library_call_value_1 (retval, orgfun, value, fn_type, outmode, nargs, p)
|
||||
argvec = (struct arg *) alloca ((nargs + 1) * sizeof (struct arg));
|
||||
memset ((char *) argvec, 0, (nargs + 1) * sizeof (struct arg));
|
||||
|
||||
#ifdef INIT_CUMULATIVE_LIBCALL_ARGS
|
||||
INIT_CUMULATIVE_LIBCALL_ARGS (args_so_far, outmode, fun);
|
||||
#else
|
||||
INIT_CUMULATIVE_ARGS (args_so_far, NULL_TREE, fun, 0);
|
||||
#endif
|
||||
|
||||
args_size.constant = 0;
|
||||
args_size.var = 0;
|
||||
|
@ -3045,6 +3045,14 @@ an ordinary C function call is being processed. Thus, each time this
|
||||
macro is called, either @var{libname} or @var{fntype} is nonzero, but
|
||||
never both of them at once.
|
||||
|
||||
@findex INIT_CUMULATIVE_LIBCALL_ARGS
|
||||
@item INIT_CUMULATIVE_LIBCALL_ARGS (@var{cum}, @var{mode}, @var{libname})
|
||||
Like @code{INIT_CUMULATIVE_ARGS} but only used for outgoing libcalls,
|
||||
it gets a @code{MODE} argument instead of @var{fntype}, that would be
|
||||
@code{NULL}. @var{indirect} would always be zero, too. If this macro
|
||||
is not defined, @code{INIT_CUMULATIVE_ARGS (cum, NULL_RTX, libname,
|
||||
0)} is used instead.
|
||||
|
||||
@findex INIT_CUMULATIVE_INCOMING_ARGS
|
||||
@item INIT_CUMULATIVE_INCOMING_ARGS (@var{cum}, @var{fntype}, @var{libname})
|
||||
Like @code{INIT_CUMULATIVE_ARGS} but overrides it for the purposes of
|
||||
|
Loading…
Reference in New Issue
Block a user