From 97a18f26ea3a4d091fa9d57d9c00773cdecbfaef Mon Sep 17 00:00:00 2001 From: kenner Date: Tue, 21 Feb 1995 23:21:14 +0000 Subject: [PATCH] Added arg to RETURN_POPS_ARGS. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@8999 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/config/1750a/1750a.h | 3 ++- gcc/config/a29k/a29k.h | 3 ++- gcc/config/alpha/alpha.h | 5 +++-- gcc/config/arm/arm.h | 7 ++++--- gcc/config/clipper/clipper.h | 5 +++-- gcc/config/convex/convex.h | 5 +++-- gcc/config/dsp16xx/dsp16xx.h | 5 +++-- gcc/config/elxsi/elxsi.h | 7 ++++--- gcc/config/fx80/fx80.h | 5 +++-- gcc/config/gmicro/gmicro.h | 5 +++-- gcc/config/h8300/h8300.h | 3 ++- gcc/config/i370/i370.h | 2 +- gcc/config/i386/i386.h | 8 +++++--- gcc/config/i386/isc.h | 2 +- gcc/config/i386/next.h | 4 ++-- gcc/config/i386/sco.h | 20 ++++++++++++++++++-- gcc/config/i386/scodbx.h | 4 ++-- gcc/config/i860/i860.h | 10 ++++------ gcc/config/i960/i960.h | 5 +++-- gcc/config/m68k/m68k.h | 3 ++- gcc/config/m88k/m88k.h | 13 +++++++------ gcc/config/mips/mips.h | 4 +++- gcc/config/ns32k/ns32k.h | 5 +++-- gcc/config/pa/pa.h | 5 +++-- gcc/config/pdp11/pdp11.h | 3 ++- gcc/config/pyr/pyr.h | 7 ++++--- gcc/config/romp/romp.h | 5 +++-- gcc/config/rs6000/rs6000.h | 3 ++- gcc/config/sh/sh.h | 11 +++++------ gcc/config/sparc/sparc.h | 3 ++- gcc/config/spur/spur.h | 5 +++-- gcc/config/tahoe/tahoe.h | 6 ++---- gcc/config/vax/vax.h | 5 +++-- gcc/config/we32k/we32k.h | 5 +++-- 34 files changed, 115 insertions(+), 76 deletions(-) diff --git a/gcc/config/1750a/1750a.h b/gcc/config/1750a/1750a.h index 4f58560d4e1..5133e50eef8 100644 --- a/gcc/config/1750a/1750a.h +++ b/gcc/config/1750a/1750a.h @@ -422,11 +422,12 @@ enum reg_class { NO_REGS, INDEX_REGS, BASE_REGS, ALL_REGS, LIM_REG_CLASSES }; /* Value is 1 if returning from a function call automatically pops the arguments described by the number-of-args field in the call. + FUNDECL is the declaration node of the function (as a tree), FUNTYPE is the data type of the function (as a tree), or for a library call it is an identifier node for the subroutine name. */ -#define RETURN_POPS_ARGS(FUNTYPE,SIZE) 0 +#define RETURN_POPS_ARGS(FUNDECL,FUNTYPE,SIZE) 0 /* Define how to find the value returned by a function. VALTYPE is the data type of the value (as a tree). diff --git a/gcc/config/a29k/a29k.h b/gcc/config/a29k/a29k.h index 662c2910650..4e531ce62c9 100644 --- a/gcc/config/a29k/a29k.h +++ b/gcc/config/a29k/a29k.h @@ -730,11 +730,12 @@ extern struct rtx_def *a29k_get_reloaded_address (); /* Value is the number of bytes of arguments automatically popped when returning from a subroutine call. + FUNDECL is the declaration node of the function (as a tree), FUNTYPE is the data type of the function (as a tree), or for a library call it is an identifier node for the subroutine name. SIZE is the number of bytes of arguments passed on the stack. */ -#define RETURN_POPS_ARGS(FUNTYPE,SIZE) 0 +#define RETURN_POPS_ARGS(FUNDECL,FUNTYPE,SIZE) 0 /* Define how to find the value returned by a function. VALTYPE is the data type of the value (as a tree). diff --git a/gcc/config/alpha/alpha.h b/gcc/config/alpha/alpha.h index a7d339b119c..d0157b3b490 100644 --- a/gcc/config/alpha/alpha.h +++ b/gcc/config/alpha/alpha.h @@ -1,5 +1,5 @@ /* Definitions of target machine for GNU compiler, for DEC Alpha. - Copyright (C) 1992, 1993, 1994 Free Software Foundation, Inc. + Copyright (C) 1992, 1993, 1994, 1995 Free Software Foundation, Inc. Contributed by Richard Kenner (kenner@vlsi1.ultra.nyu.edu) This file is part of GNU CC. @@ -701,11 +701,12 @@ enum reg_class { NO_REGS, GENERAL_REGS, FLOAT_REGS, ALL_REGS, /* Value is the number of bytes of arguments automatically popped when returning from a subroutine call. + FUNDECL is the declaration node of the function (as a tree), FUNTYPE is the data type of the function (as a tree), or for a library call it is an identifier node for the subroutine name. SIZE is the number of bytes of arguments passed on the stack. */ -#define RETURN_POPS_ARGS(FUNTYPE,SIZE) 0 +#define RETURN_POPS_ARGS(FUNDECL,FUNTYPE,SIZE) 0 /* Define how to find the value returned by a function. VALTYPE is the data type of the value (as a tree). diff --git a/gcc/config/arm/arm.h b/gcc/config/arm/arm.h index d7acc07593b..3a0c79fd6b8 100644 --- a/gcc/config/arm/arm.h +++ b/gcc/config/arm/arm.h @@ -1,7 +1,7 @@ /* Definitions of target machine for GNU compiler, for Acorn RISC Machine. - Copyright (C) 1991, 1993, 1994 Free Software Foundation, Inc. + Copyright (C) 1991, 1993, 1994, 1995 Free Software Foundation, Inc. Contributed by Pieter `Tiggr' Schoenmakers (rcpieter@win.tue.nl) - and Martin Simmons (@harleqn.co.uk). + and Martin Simmons (@harleqn.co.uk). More major hacks by Richard Earnshaw (rwe11@cl.cam.ac.uk) This file is part of GNU CC. @@ -604,13 +604,14 @@ enum reg_class /* Value is the number of byte of arguments automatically popped when returning from a subroutine call. + FUNDECL is the declaration node of the function (as a tree), FUNTYPE is the data type of the function (as a tree), or for a library call it is an identifier node for the subroutine name. SIZE is the number of bytes of arguments passed on the stack. On the ARM, the caller does not pop any of its arguments that were passed on the stack. */ -#define RETURN_POPS_ARGS(FUNTYPE, SIZE) 0 +#define RETURN_POPS_ARGS(FUNDECL,FUNTYPE,SIZE) 0 /* Define how to find the value returned by a function. VALTYPE is the data type of the value (as a tree). diff --git a/gcc/config/clipper/clipper.h b/gcc/config/clipper/clipper.h index 1f66de9401b..d0434f8831c 100644 --- a/gcc/config/clipper/clipper.h +++ b/gcc/config/clipper/clipper.h @@ -1,5 +1,5 @@ /* Definitions of target machine for GNU compiler. Clipper version. - Copyright (C) 1987, 1988, 1991, 1993, 1994 Free Software Foundation, Inc. + Copyright (C) 1987, 88, 91, 93, 94, 1995 Free Software Foundation, Inc. Contributed by Holger Teutsch (holger@hotbso.rhein-main.de) This file is part of GNU CC. @@ -379,11 +379,12 @@ enum reg_class { NO_REGS, GENERAL_REGS, FLOAT_REGS, ALL_REGS, LIM_REG_CLASSES}; /* Value is the number of bytes of arguments automatically popped when returning from a subroutine call. + FUNDECL is the declaration node of the function (as a tree), FUNTYPE is the data type of the function (as a tree), or for a library call it is an identifier node for the subroutine name. SIZE is the number of bytes of arguments passed on the stack. */ -#define RETURN_POPS_ARGS(FUNTYPE,SIZE) 0 +#define RETURN_POPS_ARGS(FUNDECL,FUNTYPE,SIZE) 0 /* Define how to find the value returned by a function. VALTYPE is the data type of the value (as a tree). diff --git a/gcc/config/convex/convex.h b/gcc/config/convex/convex.h index f7a6134971c..a87a75bcfc7 100644 --- a/gcc/config/convex/convex.h +++ b/gcc/config/convex/convex.h @@ -1,5 +1,5 @@ /* Definitions of target machine for GNU compiler. Convex version. - Copyright (C) 1988, 1994 Free Software Foundation, Inc. + Copyright (C) 1988, 1994, 1995 Free Software Foundation, Inc. This file is part of GNU CC. @@ -743,11 +743,12 @@ enum reg_class { /* Value is the number of bytes of arguments automatically popped when returning from a subroutine call. + FUNDECL is the declaration node of the function (as a tree), FUNTYPE is the data type of the function (as a tree), or for a library call it is an identifier node for the subroutine name. SIZE is the number of bytes of arguments passed on the stack. */ -#define RETURN_POPS_ARGS(FUNTYPE, SIZE) (SIZE) +#define RETURN_POPS_ARGS(FUNDECL,FUNTYPE,SIZE) (SIZE) /* Define how to find the value returned by a function. VALTYPE is the data type of the value (as a tree). diff --git a/gcc/config/dsp16xx/dsp16xx.h b/gcc/config/dsp16xx/dsp16xx.h index 6dacaacf502..60b507dba48 100644 --- a/gcc/config/dsp16xx/dsp16xx.h +++ b/gcc/config/dsp16xx/dsp16xx.h @@ -1,5 +1,5 @@ /* Definitions of target machine for GNU compiler. AT&T DSP1600. - Copyright (C) 1994 Free Software Foundation, Inc. + Copyright (C) 1994, 1995 Free Software Foundation, Inc. Contributed by Michael Collison (collison@world.std.com). This file is part of GNU CC. @@ -1112,10 +1112,11 @@ extern struct dsp16xx_frame_info current_frame_info; /* Value is 1 if returning from a function call automatically pops the arguments described by the number-of-args field in the call. + FUNDECL is the declaration node of the function (as a tree), FUNTYPE is the data type of the function (as a tree), or for a library call it is an identifier node for the subroutine name. */ -#define RETURN_POPS_ARGS(FUNTYPE, STACK_SIZE) 0 +#define RETURN_POPS_ARGS(FUNDECL,FUNTYPE,SIZE) 0 /* Define how to find the value returned by a function. VALTYPE is the data type of the value (as a tree). diff --git a/gcc/config/elxsi/elxsi.h b/gcc/config/elxsi/elxsi.h index 7589c461906..9ce75ab972a 100644 --- a/gcc/config/elxsi/elxsi.h +++ b/gcc/config/elxsi/elxsi.h @@ -1,6 +1,6 @@ /* Definitions of target machine for GNU compiler. Elxsi version. - Copyright (C) 1987, 1988, 1992 Free Software Foundation, Inc. - This port, done by Mike Stump in 1988, and is the first + Copyright (C) 1987, 1988, 1992, 1995 Free Software Foundation, Inc. + This port, done by Mike Stump in 1988, is the first 64 bit port of GNU CC. Based upon the VAX port. @@ -302,12 +302,13 @@ enum reg_class { NO_REGS, GENERAL_REGS, ALL_REGS, LIM_REG_CLASSES }; /* Value is 1 if returning from a function call automatically pops the arguments described by the number-of-args field in the call. + FUNDECL is the declaration node of the function (as a tree), FUNTYPE is the data type of the function (as a tree), or for a library call it is an identifier node for the subroutine name. On the Vax, the RET insn always pops all the args for any function. */ -#define RETURN_POPS_ARGS(FUNTYPE,SIZE) (SIZE) +#define RETURN_POPS_ARGS(FUNDECL,FUNTYPE,SIZE) (SIZE) /* Define how to find the value returned by a function. VALTYPE is the data type of the value (as a tree). diff --git a/gcc/config/fx80/fx80.h b/gcc/config/fx80/fx80.h index 84cd6971424..588b64641f5 100644 --- a/gcc/config/fx80/fx80.h +++ b/gcc/config/fx80/fx80.h @@ -1,5 +1,5 @@ /* Definitions of target machine for GNU compiler. Alliant FX version. - Copyright (C) 1989, 1993, 1994 Free Software Foundation, Inc. + Copyright (C) 1989, 1993, 1994, 1995 Free Software Foundation, Inc. Adapted from m68k.h by Paul Petersen (petersen@uicsrd.csrd.uiuc.edu) and Joe Weening (weening@gang-of-four.stanford.edu). @@ -431,6 +431,7 @@ extern enum reg_class regno_reg_class[]; /* Value is the number of bytes of arguments automatically popped when returning from a subroutine call. + FUNDECL is the declaration node of the function (as a tree), FUNTYPE is the data type of the function (as a tree), or for a library call it is an identifier node for the subroutine name. SIZE is the number of bytes of arguments passed on the stack. @@ -440,7 +441,7 @@ extern enum reg_class regno_reg_class[]; could add to the pending stack adjustment the size of the argument descriptors that are pushed after the arguments. */ -#define RETURN_POPS_ARGS(FUNTYPE,SIZE) (SIZE) +#define RETURN_POPS_ARGS(FUNDECL,FUNTYPE,SIZE) (SIZE) /* Define how to find the value returned by a function. VALTYPE is the data type of the value (as a tree). diff --git a/gcc/config/gmicro/gmicro.h b/gcc/config/gmicro/gmicro.h index 6786fa5297d..7d88255f37e 100644 --- a/gcc/config/gmicro/gmicro.h +++ b/gcc/config/gmicro/gmicro.h @@ -1,5 +1,5 @@ /* Definitions of target machine for GNU compiler. Gmicro (TRON) version. - Copyright (C) 1987, 1988, 1989 Free Software Foundation, Inc. + Copyright (C) 1987, 1988, 1989, 1995 Free Software Foundation, Inc. Contributed by Masanobu Yuhara, Fujitsu Laboratories LTD. (yuhara@flab.fujitsu.co.jp) @@ -443,6 +443,7 @@ extern enum reg_class regno_reg_class[]; /* Value is the number of byte of arguments automatically popped when returning from a subroutine call. + FUNDECL is the declaration node of the function (as a tree), FUNTYPE is the data type of the function (as a tree), or for a library call it is an identifier node for the subroutine name. SIZE is the number of bytes of arguments passed on the stack. @@ -457,7 +458,7 @@ extern enum reg_class regno_reg_class[]; On the m68k this is an RTD option, so I use the same name for the Gmicro. The option name may be changed in the future. */ -#define RETURN_POPS_ARGS(FUNTYPE,SIZE) \ +#define RETURN_POPS_ARGS(FUNDECL,FUNTYPE,SIZE) \ ((TARGET_RTD && TREE_CODE (FUNTYPE) != IDENTIFIER_NODE \ && (TYPE_ARG_TYPES (FUNTYPE) == 0 \ || (TREE_VALUE (tree_last (TYPE_ARG_TYPES (FUNTYPE))) \ diff --git a/gcc/config/h8300/h8300.h b/gcc/config/h8300/h8300.h index 9dc9acf263d..42c9b453a2d 100644 --- a/gcc/config/h8300/h8300.h +++ b/gcc/config/h8300/h8300.h @@ -446,13 +446,14 @@ enum reg_class { NO_REGS, LONG_REGS, GENERAL_REGS, SP_REG, SP_AND_G_REG, ALL_RE /* Value is the number of bytes of arguments automatically popped when returning from a subroutine call. + FUNDECL is the declaration node of the function (as a tree), FUNTYPE is the data type of the function (as a tree), or for a library call it is an identifier node for the subroutine name. SIZE is the number of bytes of arguments passed on the stack. On the H8 the return does not pop anything. */ -#define RETURN_POPS_ARGS(FUNTYPE,SIZE) 0 +#define RETURN_POPS_ARGS(FUNDECL,FUNTYPE,SIZE) 0 /* Definitions for register eliminations. diff --git a/gcc/config/i370/i370.h b/gcc/config/i370/i370.h index 53f055f709a..1b52ab9cb62 100644 --- a/gcc/config/i370/i370.h +++ b/gcc/config/i370/i370.h @@ -447,7 +447,7 @@ enum reg_class /* Define if returning from a function call automatically pops the arguments described by the number-of-args field in the call. */ -#define RETURN_POPS_ARGS(FUNTYPE, STACKSIZE) 0 +#define RETURN_POPS_ARGS(FUNDECL,FUNTYPE,SIZE) 0 /* Define how to find the value returned by a function. VALTYPE is the data type of the value (as a tree). diff --git a/gcc/config/i386/i386.h b/gcc/config/i386/i386.h index 9fc65dde295..b52e35bae1d 100644 --- a/gcc/config/i386/i386.h +++ b/gcc/config/i386/i386.h @@ -1,5 +1,6 @@ -/* Definitions of target machine for GNU compiler for Intel X86 (386, 486, pentium) - Copyright (C) 1988, 1992, 1994 Free Software Foundation, Inc. +/* Definitions of target machine for GNU compiler for Intel X86 + (386, 486, Pentium). + Copyright (C) 1988, 1992, 1994, 1995 Free Software Foundation, Inc. This file is part of GNU CC. @@ -750,6 +751,7 @@ enum reg_class /* Value is the number of bytes of arguments automatically popped when returning from a subroutine call. + FUNDECL is the declaration node of the function (as a tree), FUNTYPE is the data type of the function (as a tree), or for a library call it is an identifier node for the subroutine name. SIZE is the number of bytes of arguments passed on the stack. @@ -762,7 +764,7 @@ enum reg_class standard Unix calling sequences. If the option is not selected, the caller must always pop the args. */ -#define RETURN_POPS_ARGS(FUNTYPE,SIZE) \ +#define RETURN_POPS_ARGS(FUNDECL,FUNTYPE,SIZE) \ (TREE_CODE (FUNTYPE) == IDENTIFIER_NODE ? 0 \ : (TARGET_RTD \ && (TYPE_ARG_TYPES (FUNTYPE) == 0 \ diff --git a/gcc/config/i386/isc.h b/gcc/config/i386/isc.h index 72a07fe49a9..6d8c3a3d66f 100644 --- a/gcc/config/i386/isc.h +++ b/gcc/config/i386/isc.h @@ -31,7 +31,7 @@ structures. */ #undef RETURN_POPS_ARGS -#define RETURN_POPS_ARGS(FUNTYPE,SIZE) \ +#define RETURN_POPS_ARGS(FUNDECL,FUNTYPE,SIZE) \ (TREE_CODE (FUNTYPE) == IDENTIFIER_NODE ? 0 \ : (TARGET_RTD \ && (TYPE_ARG_TYPES (FUNTYPE) == 0 \ diff --git a/gcc/config/i386/next.h b/gcc/config/i386/next.h index 1a327a52026..473dd34da22 100644 --- a/gcc/config/i386/next.h +++ b/gcc/config/i386/next.h @@ -1,5 +1,5 @@ /* Target definitions for GNU compiler for Intel x86 CPU running NeXTSTEP - Copyright (C) 1993 Free Software Foundation, Inc. + Copyright (C) 1993, 1995 Free Software Foundation, Inc. This file is part of GNU CC. @@ -214,7 +214,7 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */ rely on the callee to pop it. */ #undef RETURN_POPS_ARGS -#define RETURN_POPS_ARGS(FUNTYPE,SIZE) \ +#define RETURN_POPS_ARGS(FUNDECL,FUNTYPE,SIZE) \ (TREE_CODE (FUNTYPE) == IDENTIFIER_NODE \ ? 0 \ : (TARGET_RTD \ diff --git a/gcc/config/i386/sco.h b/gcc/config/i386/sco.h index 69abfc51b8a..ac410b1aa1e 100644 --- a/gcc/config/i386/sco.h +++ b/gcc/config/i386/sco.h @@ -1,5 +1,21 @@ -/* Definitions for Intel 386 running SCO Unix System V. */ +/* Definitions for Intel 386 running SCO Unix System V. + Copyright (C) 1988, 1992, 1994, 1995 Free Software Foundation, Inc. +This file is part of GNU CC. + +GNU CC is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2, or (at your option) +any later version. + +GNU CC is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with GNU CC; see the file COPYING. If not, write to +the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */ /* Mostly it's like AT&T Unix System V. */ @@ -86,7 +102,7 @@ structures. */ #undef RETURN_POPS_ARGS -#define RETURN_POPS_ARGS(FUNTYPE,SIZE) \ +#define RETURN_POPS_ARGS(FUNDECL,FUNTYPE,SIZE) \ (TREE_CODE (FUNTYPE) == IDENTIFIER_NODE ? 0 \ : (TARGET_RTD \ && (TYPE_ARG_TYPES (FUNTYPE) == 0 \ diff --git a/gcc/config/i386/scodbx.h b/gcc/config/i386/scodbx.h index 5e568e5f470..6b10df128b4 100644 --- a/gcc/config/i386/scodbx.h +++ b/gcc/config/i386/scodbx.h @@ -1,6 +1,6 @@ /* Definitions for Intel 386 running SCO Unix System V, using dbx-in-coff encapsulation. - Copyright (C) 1992 Free Software Foundation, Inc. + Copyright (C) 1992, 1995 Free Software Foundation, Inc. This file is part of GNU CC. @@ -73,7 +73,7 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */ structures. */ #undef RETURN_POPS_ARGS -#define RETURN_POPS_ARGS(FUNTYPE,SIZE) \ +#define RETURN_POPS_ARGS(FUNDECL,FUNTYPE,SIZE) \ (TREE_CODE (FUNTYPE) == IDENTIFIER_NODE ? 0 \ : (TARGET_RTD \ && (TYPE_ARG_TYPES (FUNTYPE) == 0 \ diff --git a/gcc/config/i860/i860.h b/gcc/config/i860/i860.h index db8f1ef1d0d..0682cf9720b 100644 --- a/gcc/config/i860/i860.h +++ b/gcc/config/i860/i860.h @@ -1,9 +1,6 @@ /* Definitions of target machine for GNU compiler, for Intel 860. - Copyright (C) 1989, 1991, 1993 Free Software Foundation, Inc. - - Written by Richard Stallman (rms@ai.mit.edu). - - Hacked substantially by Ron Guilmette (rfg@netcom.com) to cater to + Copyright (C) 1989, 1991, 1993, 1995 Free Software Foundation, Inc. + Hacked substantially by Ron Guilmette (rfg@segfault.us.com) to cater to the whims of the System V Release 4 assembler. This file is part of GNU CC. @@ -415,11 +412,12 @@ enum reg_class { NO_REGS, GENERAL_REGS, FP_REGS, ALL_REGS, LIM_REG_CLASSES }; /* Value is the number of bytes of arguments automatically popped when returning from a subroutine call. + FUNDECL is the declaration node of the function (as a tree), FUNTYPE is the data type of the function (as a tree), or for a library call it is an identifier node for the subroutine name. SIZE is the number of bytes of arguments passed on the stack. */ -#define RETURN_POPS_ARGS(FUNTYPE,SIZE) 0 +#define RETURN_POPS_ARGS(FUNDECL,FUNTYPE,SIZE) 0 /* Define how to find the value returned by a function. VALTYPE is the data type of the value (as a tree). diff --git a/gcc/config/i960/i960.h b/gcc/config/i960/i960.h index 834a3163593..dc4ca45cee6 100644 --- a/gcc/config/i960/i960.h +++ b/gcc/config/i960/i960.h @@ -1,5 +1,5 @@ /* Definitions of target machine for GNU compiler, for Intel 80960 - Copyright (C) 1992, 1993 Free Software Foundation, Inc. + Copyright (C) 1992, 1993, 1995 Free Software Foundation, Inc. Contributed by Steven McGeady, Intel Corp. Additional Work by Glenn Colon-Bonet, Jonathan Shapiro, Andy Wilson Converted to GCC 2.0 by Jim Wilson and Michael Tiemann, Cygnus Support. @@ -720,10 +720,11 @@ enum reg_class { NO_REGS, GLOBAL_REGS, LOCAL_REGS, LOCAL_OR_GLOBAL_REGS, /* Value is 1 if returning from a function call automatically pops the arguments described by the number-of-args field in the call. + FUNDECL is the declaration node of the function (as a tree), FUNTYPE is the data type of the function (as a tree), or for a library call it is an identifier node for the subroutine name. */ -#define RETURN_POPS_ARGS(FUNTYPE, SIZE) 0 +#define RETURN_POPS_ARGS(FUNDECL,FUNTYPE,SIZE) 0 /* Define how to find the value returned by a library function assuming the value has mode MODE. */ diff --git a/gcc/config/m68k/m68k.h b/gcc/config/m68k/m68k.h index 1f2ad54e02d..ecc18a6a135 100644 --- a/gcc/config/m68k/m68k.h +++ b/gcc/config/m68k/m68k.h @@ -761,6 +761,7 @@ extern enum reg_class regno_reg_class[]; /* Value is the number of byte of arguments automatically popped when returning from a subroutine call. + FUNDECL is the declaration node of the function (as a tree), FUNTYPE is the data type of the function (as a tree), or for a library call it is an identifier node for the subroutine name. SIZE is the number of bytes of arguments passed on the stack. @@ -774,7 +775,7 @@ extern enum reg_class regno_reg_class[]; standard Unix calling sequences. If the option is not selected, the caller must always pop the args. */ -#define RETURN_POPS_ARGS(FUNTYPE,SIZE) \ +#define RETURN_POPS_ARGS(FUNDECL,FUNTYPE,SIZE) \ ((TARGET_RTD && TREE_CODE (FUNTYPE) != IDENTIFIER_NODE \ && (TYPE_ARG_TYPES (FUNTYPE) == 0 \ || (TREE_VALUE (tree_last (TYPE_ARG_TYPES (FUNTYPE))) \ diff --git a/gcc/config/m88k/m88k.h b/gcc/config/m88k/m88k.h index 22b5eac1ffc..3ee14c3aa31 100644 --- a/gcc/config/m88k/m88k.h +++ b/gcc/config/m88k/m88k.h @@ -1,8 +1,8 @@ /* Definitions of target machine for GNU compiler for Motorola m88100 in an 88open OCS/BCS environment. - Copyright (C) 1988, 89, 90, 91, 93, 1994 Free Software Foundation, Inc. - Contributed by Michael Tiemann (tiemann@mcc.com) - Enhanced by Michael Meissner (meissner@osf.org) + Copyright (C) 1988, 89, 90, 91, 93, 94, 1995 Free Software Foundation, Inc. + Contributed by Michael Tiemann (tiemann@cygnus.com) + Enhanced by Michael Meissner (meissner@cygnus.com) Version 2 port by Tom Wood (twood@pets.sps.mot.com) This file is part of GNU CC. @@ -197,13 +197,13 @@ extern char * reg_names[]; Redefined in sysv4.h, and luna.h. */ #define VERSION_INFO1 "88open OCS/BCS, " #ifndef VERSION_INFO2 -#define VERSION_INFO2 "$Revision: 1.60 $" +#define VERSION_INFO2 "$Revision: 1.61 $" #endif #ifndef VERSION_STRING #define VERSION_STRING version_string #ifdef __STDC__ -#define TM_RCS_ID "@(#)" __FILE__ " $Revision: 1.60 $ " __DATE__ +#define TM_RCS_ID "@(#)" __FILE__ " $Revision: 1.61 $ " __DATE__ #else #define TM_RCS_ID "$What$" #endif /* __STDC__ */ @@ -973,10 +973,11 @@ enum reg_class { NO_REGS, AP_REG, XRF_REGS, GENERAL_REGS, AGRF_REGS, /* Value is the number of bytes of arguments automatically popped when returning from a subroutine call. + FUNDECL is the declaration node of the function (as a tree), FUNTYPE is the data type of the function (as a tree), or for a library call it is an identifier node for the subroutine name. SIZE is the number of bytes of arguments passed on the stack. */ -#define RETURN_POPS_ARGS(FUNTYPE,SIZE) 0 +#define RETURN_POPS_ARGS(FUNDECL,FUNTYPE,SIZE) 0 /* Define how to find the value returned by a function. VALTYPE is the data type of the value (as a tree). diff --git a/gcc/config/mips/mips.h b/gcc/config/mips/mips.h index 6e2227f43a7..bb4ce9f4a12 100644 --- a/gcc/config/mips/mips.h +++ b/gcc/config/mips/mips.h @@ -1800,6 +1800,8 @@ extern struct mips_frame_info current_frame_info; if the function pops no arguments and the caller must therefore pop them all after the function returns. + FUNDECL is the declaration node of the function (as a tree). + FUNTYPE is a C variable whose value is a tree node that describes the function in question. Normally it is a node of type `FUNCTION_TYPE' that describes the data type of the function. @@ -1819,7 +1821,7 @@ extern struct mips_frame_info current_frame_info; argument popping will always be the responsibility of the calling function. */ -#define RETURN_POPS_ARGS(FUNTYPE, SIZE) 0 +#define RETURN_POPS_ARGS(FUNDECL,FUNTYPE,SIZE) 0 /* Symbolic macros for the registers used to return integer and floating diff --git a/gcc/config/ns32k/ns32k.h b/gcc/config/ns32k/ns32k.h index fe80c724446..ccf722754b5 100644 --- a/gcc/config/ns32k/ns32k.h +++ b/gcc/config/ns32k/ns32k.h @@ -1,5 +1,5 @@ /* Definitions of target machine for GNU compiler. NS32000 version. - Copyright (C) 1988, 1993, 1994 Free Software Foundation, Inc. + Copyright (C) 1988, 1993, 1994, 1995 Free Software Foundation, Inc. Contributed by Michael Tiemann (tiemann@cygnus.com) This file is part of GNU CC. @@ -390,6 +390,7 @@ enum reg_class { NO_REGS, GENERAL_REGS, FLOAT_REGS, GEN_AND_FP_REGS, /* Value is the number of byte of arguments automatically popped when returning from a subroutine call. + FUNDECL is the declaration node of the function (as a tree), FUNTYPE is the data type of the function (as a tree), or for a library call it is an identifier node for the subroutine name. SIZE is the number of bytes of arguments passed on the stack. @@ -402,7 +403,7 @@ enum reg_class { NO_REGS, GENERAL_REGS, FLOAT_REGS, GEN_AND_FP_REGS, standard Unix calling sequences. If the option is not selected, the caller must always pop the args. */ -#define RETURN_POPS_ARGS(FUNTYPE,SIZE) \ +#define RETURN_POPS_ARGS(FUNDECL,FUNTYPE,SIZE) \ ((TARGET_RTD && TREE_CODE (FUNTYPE) != IDENTIFIER_NODE \ && (TYPE_ARG_TYPES (FUNTYPE) == 0 \ || (TREE_VALUE (tree_last (TYPE_ARG_TYPES (FUNTYPE))) \ diff --git a/gcc/config/pa/pa.h b/gcc/config/pa/pa.h index b6f5b57531a..e69a63a0ffc 100644 --- a/gcc/config/pa/pa.h +++ b/gcc/config/pa/pa.h @@ -1,6 +1,6 @@ /* Definitions of target machine for GNU compiler, for the HP Spectrum. Copyright (C) 1992, 1993, 1994, 1995 Free Software Foundation, Inc. - Contributed by Michael Tiemann (tiemann@mcc.com) + Contributed by Michael Tiemann (tiemann@cygnus.com) of Cygnus Support and Tim Moore (moore@defmacro.cs.utah.edu) of the Center for Software Science at the University of Utah. @@ -778,10 +778,11 @@ enum reg_class { NO_REGS, R1_REGS, GENERAL_REGS, FP_REGS, GENERAL_OR_FP_REGS, /* Value is 1 if returning from a function call automatically pops the arguments described by the number-of-args field in the call. + FUNDECL is the declaration node of the function (as a tree), FUNTYPE is the data type of the function (as a tree), or for a library call it is an identifier node for the subroutine name. */ -#define RETURN_POPS_ARGS(FUNTYPE,SIZE) 0 +#define RETURN_POPS_ARGS(FUNDECL,FUNTYPE,SIZE) 0 /* Define how to find the value returned by a function. VALTYPE is the data type of the value (as a tree). diff --git a/gcc/config/pdp11/pdp11.h b/gcc/config/pdp11/pdp11.h index 884fa4f6b4a..8cc075b496d 100644 --- a/gcc/config/pdp11/pdp11.h +++ b/gcc/config/pdp11/pdp11.h @@ -524,10 +524,11 @@ extern int current_first_parm_offset; /* Value is 1 if returning from a function call automatically pops the arguments described by the number-of-args field in the call. + FUNDECL is the declaration node of the function (as a tree), FUNTYPE is the data type of the function (as a tree), or for a library call it is an identifier node for the subroutine name. */ -#define RETURN_POPS_ARGS(FUNTYPE,SIZE) 0 +#define RETURN_POPS_ARGS(FUNDECL,FUNTYPE,SIZE) 0 /* Define how to find the value returned by a function. VALTYPE is the data type of the value (as a tree). diff --git a/gcc/config/pyr/pyr.h b/gcc/config/pyr/pyr.h index 1dd5f5c7d80..05b2cfb2911 100644 --- a/gcc/config/pyr/pyr.h +++ b/gcc/config/pyr/pyr.h @@ -1,6 +1,6 @@ /* Definitions of target machine parameters for GNU compiler, for Pyramid 90x, 9000, and MIServer Series. - Copyright (C) 1989 Free Software Foundation, Inc. + Copyright (C) 1989, 1995 Free Software Foundation, Inc. This file is part of GNU CC. @@ -17,7 +17,7 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU CC; see the file COPYING. If not, write to the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */ - + /* * If you're going to change this, and you haven't already, * you should get and read @@ -484,6 +484,7 @@ enum reg_class { NO_REGS, ALL_REGS, LIM_REG_CLASSES }; /* Value is the number of bytes of arguments automatically popped when returning from a subroutine call. + FUNDECL is the declaration node of the function (as a tree), FUNTYPE is the data type of the function (as a tree), or for a library call it is an identifier node for the subroutine name. SIZE is the number of bytes of arguments passed on the stack. @@ -492,7 +493,7 @@ enum reg_class { NO_REGS, ALL_REGS, LIM_REG_CLASSES }; using RETD in this way violates the Pyramid calling convention. We may nevertheless provide this as an option. */ -#define RETURN_POPS_ARGS(FUNTYPE,SIZE) \ +#define RETURN_POPS_ARGS(FUNDECL,FUNTYPE,SIZE) \ ((TARGET_RETD && TREE_CODE (FUNTYPE) != IDENTIFIER_NODE \ && (TYPE_ARG_TYPES (FUNTYPE) == 0 \ || (TREE_VALUE (tree_last (TYPE_ARG_TYPES (FUNTYPE))) \ diff --git a/gcc/config/romp/romp.h b/gcc/config/romp/romp.h index 721058a3202..36df9b61155 100644 --- a/gcc/config/romp/romp.h +++ b/gcc/config/romp/romp.h @@ -1,5 +1,5 @@ /* Definitions of target machine for GNU compiler, for ROMP chip. - Copyright (C) 1989, 1991, 1993 Free Software Foundation, Inc. + Copyright (C) 1989, 1991, 1993, 1995 Free Software Foundation, Inc. Contributed by Richard Kenner (kenner@nyu.edu) This file is part of GNU CC. @@ -504,11 +504,12 @@ enum reg_class { NO_REGS, R0_REGS, R15_REGS, BASE_REGS, GENERAL_REGS, /* Value is the number of bytes of arguments automatically popped when returning from a subroutine call. + FUNDECL is the declaration node of the function (as a tree), FUNTYPE is the data type of the function (as a tree), or for a library call it is an identifier node for the subroutine name. SIZE is the number of bytes of arguments passed on the stack. */ -#define RETURN_POPS_ARGS(FUNTYPE,SIZE) 0 +#define RETURN_POPS_ARGS(FUNDECL,FUNTYPE,SIZE) 0 /* Define how to find the value returned by a function. VALTYPE is the data type of the value (as a tree). diff --git a/gcc/config/rs6000/rs6000.h b/gcc/config/rs6000/rs6000.h index b3e2a939f7c..0339f492d25 100644 --- a/gcc/config/rs6000/rs6000.h +++ b/gcc/config/rs6000/rs6000.h @@ -883,11 +883,12 @@ enum reg_class { NO_REGS, BASE_REGS, GENERAL_REGS, FLOAT_REGS, /* Value is the number of bytes of arguments automatically popped when returning from a subroutine call. + FUNDECL is the declaration node of the function (as a tree), FUNTYPE is the data type of the function (as a tree), or for a library call it is an identifier node for the subroutine name. SIZE is the number of bytes of arguments passed on the stack. */ -#define RETURN_POPS_ARGS(FUNTYPE,SIZE) 0 +#define RETURN_POPS_ARGS(FUNDECL,FUNTYPE,SIZE) 0 /* Define how to find the value returned by a function. VALTYPE is the data type of the value (as a tree). diff --git a/gcc/config/sh/sh.h b/gcc/config/sh/sh.h index 41b8b6d3eff..2638a78fec8 100644 --- a/gcc/config/sh/sh.h +++ b/gcc/config/sh/sh.h @@ -1,7 +1,5 @@ -/* Definitions of target machine for GNU compiler, - for Hitachi Super-H. - Copyright (C) 1993, 1994 Free Software Foundation, Inc. - +/* Definitions of target machine for GNU compiler for Hitachi Super-H. + Copyright (C) 1993, 1994, 1995 Free Software Foundation, Inc. Contributed by Steve Chamberlain (sac@cygnus.com) This file is part of GNU CC. @@ -20,7 +18,7 @@ You should have received a copy of the GNU General Public License along with GNU CC; see the file COPYING. If not, write to the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */ - + /* Run-time Target Specification. */ #define TARGET_SH @@ -639,13 +637,14 @@ extern enum reg_class reg_class_from_letter[]; /* Value is the number of byte of arguments automatically popped when returning from a subroutine call. + FUNDECL is the declaration node of the function (as a tree), FUNTYPE is the data type of the function (as a tree), or for a library call it is an identifier node for the subroutine name. SIZE is the number of bytes of arguments passed on the stack. On the SH, the caller does not pop any of its arguments that were passed on the stack. */ -#define RETURN_POPS_ARGS(FUNTYPE, SIZE) 0 +#define RETURN_POPS_ARGS(FUNDECL,FUNTYPE,SIZE) 0 /* Define how to find the value returned by a function. VALTYPE is the data type of the value (as a tree). diff --git a/gcc/config/sparc/sparc.h b/gcc/config/sparc/sparc.h index e76da8ac620..9e0c11b353d 100644 --- a/gcc/config/sparc/sparc.h +++ b/gcc/config/sparc/sparc.h @@ -1177,11 +1177,12 @@ extern char leaf_reg_remap[]; /* Value is the number of bytes of arguments automatically popped when returning from a subroutine call. + FUNDECL is the declaration node of the function (as a tree), FUNTYPE is the data type of the function (as a tree), or for a library call it is an identifier node for the subroutine name. SIZE is the number of bytes of arguments passed on the stack. */ -#define RETURN_POPS_ARGS(FUNTYPE,SIZE) 0 +#define RETURN_POPS_ARGS(FUNDECL,FUNTYPE,SIZE) 0 /* Some subroutine macros specific to this machine. When !TARGET_FPU, put float return values in the general registers, diff --git a/gcc/config/spur/spur.h b/gcc/config/spur/spur.h index 4daaf36798c..c6e4ea7b3a7 100644 --- a/gcc/config/spur/spur.h +++ b/gcc/config/spur/spur.h @@ -1,5 +1,5 @@ /* Definitions of target machine for GNU compiler, for SPUR chip. - Copyright (C) 1988 Free Software Foundation, Inc. + Copyright (C) 1988, 1995 Free Software Foundation, Inc. This file is part of GNU CC. @@ -339,11 +339,12 @@ enum reg_class { NO_REGS, GENERAL_REGS, FP_REGS, ALL_REGS, LIM_REG_CLASSES }; /* Value is the number of bytes of arguments automatically popped when returning from a subroutine call. + FUNDECL is the declaration node of the function (as a tree), FUNTYPE is the data type of the function (as a tree), or for a library call it is an identifier node for the subroutine name. SIZE is the number of bytes of arguments passed on the stack. */ -#define RETURN_POPS_ARGS(FUNTYPE,SIZE) 0 +#define RETURN_POPS_ARGS(FUNDECL,FUNTYPE,SIZE) 0 /* Define how to find the value returned by a function. VALTYPE is the data type of the value (as a tree). diff --git a/gcc/config/tahoe/tahoe.h b/gcc/config/tahoe/tahoe.h index 4e42c220edd..71cd30196c1 100644 --- a/gcc/config/tahoe/tahoe.h +++ b/gcc/config/tahoe/tahoe.h @@ -1,5 +1,5 @@ /* Definitions of target machine for GNU compiler. Tahoe version. - Copyright (C) 1989, 1993, 1994 Free Software Foundation, Inc. + Copyright (C) 1989, 1993, 1994, 1995 Free Software Foundation, Inc. This file is part of GNU CC. @@ -18,8 +18,6 @@ along with GNU CC; see the file COPYING. If not, write to the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */ /* - * File: tahoe.h - * * Original port made at the University of Buffalo by Devon Bowen, * Dale Wiles and Kevin Zachmann. * @@ -327,7 +325,7 @@ enum reg_class {NO_REGS,GENERAL_REGS,FPP_REG,ALL_REGS,LIM_REG_CLASSES}; /* the tahoe return function takes care of everything on the stack */ -#define RETURN_POPS_ARGS(FUNTYPE,SIZE) (SIZE) +#define RETURN_POPS_ARGS(FUNDECL,FUNTYPE,SIZE) (SIZE) /* function values for all types are returned in register 0 */ diff --git a/gcc/config/vax/vax.h b/gcc/config/vax/vax.h index 8714c9182c6..7393701c3f7 100644 --- a/gcc/config/vax/vax.h +++ b/gcc/config/vax/vax.h @@ -1,5 +1,5 @@ /* Definitions of target machine for GNU compiler. Vax version. - Copyright (C) 1987, 1988, 1991, 1993, 1994 Free Software Foundation, Inc. + Copyright (C) 1987, 88, 91, 93, 94, 95 Free Software Foundation, Inc. This file is part of GNU CC. @@ -352,13 +352,14 @@ gen_rtx (PLUS, Pmode, frame, gen_rtx (CONST_INT, VOIDmode, 12)) /* Value is the number of bytes of arguments automatically popped when returning from a subroutine call. + FUNDECL is the declaration node of the function (as a tree), FUNTYPE is the data type of the function (as a tree), or for a library call it is an identifier node for the subroutine name. SIZE is the number of bytes of arguments passed on the stack. On the Vax, the RET insn always pops all the args for any function. */ -#define RETURN_POPS_ARGS(FUNTYPE,SIZE) (SIZE) +#define RETURN_POPS_ARGS(FUNDECL,FUNTYPE,SIZE) (SIZE) /* Define how to find the value returned by a function. VALTYPE is the data type of the value (as a tree). diff --git a/gcc/config/we32k/we32k.h b/gcc/config/we32k/we32k.h index 49bf81f3180..d0ba42bcce8 100644 --- a/gcc/config/we32k/we32k.h +++ b/gcc/config/we32k/we32k.h @@ -1,5 +1,5 @@ /* Definitions of target machine for GNU compiler. AT&T we32000 version. - Copyright (C) 1991, 1992, 1993, 1994 Free Software Foundation, Inc. + Copyright (C) 1991, 1992, 1993, 1994, 1995 Free Software Foundation, Inc. Contributed by John Wehle (john@feith1.uucp) This file is part of GNU CC. @@ -304,10 +304,11 @@ enum reg_class { NO_REGS, GENERAL_REGS, /* Value is 1 if returning from a function call automatically pops the arguments described by the number-of-args field in the call. + FUNDECL is the declaration node of the function (as a tree), FUNTYPE is the data type of the function (as a tree), or for a library call it is an identifier node for the subroutine name. */ -#define RETURN_POPS_ARGS(FUNTYPE,SIZE) (SIZE) +#define RETURN_POPS_ARGS(FUNDECL,FUNTYPE,SIZE) (SIZE) /* Define how to find the value returned by a function. VALTYPE is the data type of the value (as a tree). -- 2.11.4.GIT