From 83e0821b6037a62cc8b865bfb89e8c4011ecbc96 Mon Sep 17 00:00:00 2001 From: "Kaveh R. Ghazi" Date: Sat, 6 Jun 1998 09:25:16 +0000 Subject: [PATCH] Some fixes for KNR compilers: * gencheck.c: Remove redundant stdio.h include. Add a definition of xmalloc for when we are forced to link with alloca.o. * reload1.c (reload_reg_free_for_value_p): Use `(unsigned)1' instead of `1U'. * fold-const.c (constant_boolean_node): Make definition static to match the prototype. From-SVN: r20261 --- gcc/ChangeLog | 11 +++++++++++ gcc/fold-const.c | 2 +- gcc/gencheck.c | 20 +++++++++++++++++++- gcc/reload1.c | 2 +- 4 files changed, 32 insertions(+), 3 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index ae849d4..d473e5a 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,14 @@ +Sat Jun 6 12:17:12 1998 Kaveh R. Ghazi + + * gencheck.c: Remove redundant stdio.h include. Add a definition + of xmalloc for when we are forced to link with alloca.o. + + * reload1.c (reload_reg_free_for_value_p): Use `(unsigned)1' + instead of `1U'. + + * fold-const.c (constant_boolean_node): Make definition static to + match the prototype. + Fri Jun 5 15:53:17 1998 Per Bothner * gcc.c (lang_specific_pre_link): New LANG_SPECIFIC_DRIVER function. diff --git a/gcc/fold-const.c b/gcc/fold-const.c index d847764..5daa253 100644 --- a/gcc/fold-const.c +++ b/gcc/fold-const.c @@ -3740,7 +3740,7 @@ strip_compound_expr (t, s) /* Return a node which has the indicated constant VALUE (either 0 or 1), and is of the indicated TYPE. */ -tree +static tree constant_boolean_node (value, type) int value; tree type; diff --git a/gcc/gencheck.c b/gcc/gencheck.c index 6b5612d..811a7dc 100644 --- a/gcc/gencheck.c +++ b/gcc/gencheck.c @@ -18,7 +18,6 @@ along with GNU CC; see the file COPYING. If not, write to the Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ -#include #include "hconfig.h" #include "system.h" @@ -60,3 +59,22 @@ int main (argc, argv) return 0; } +#if defined(USE_C_ALLOCA) && !defined(__GNUC__) +/* FIXME: We only need an xmalloc definition because we are forced to + link with alloca.o on some platforms. This should go away if/when + we link against libiberty.a. (ghazi@caip.rutgers.edu 6/3/98) */ +char * +xmalloc (nbytes) + int nbytes; +{ + char *tmp = (char *) malloc (nbytes); + + if (!tmp) + { + fprintf (stderr, "can't allocate %d bytes (out of virtual memory)\n", nbytes); + exit (FATAL_EXIT_CODE); + } + + return tmp; +} +#endif /* USE_C_ALLOCA && !__GNUC__ */ diff --git a/gcc/reload1.c b/gcc/reload1.c index b1a13fa..bc2a51a 100644 --- a/gcc/reload1.c +++ b/gcc/reload1.c @@ -5055,7 +5055,7 @@ reload_reg_free_for_value_p (regno, opnum, type, value, out, reloadnum) rtx reg = reload_reg_rtx[i]; if (reg && GET_CODE (reg) == REG && ((unsigned) regno - true_regnum (reg) - <= HARD_REGNO_NREGS (REGNO (reg), GET_MODE (reg)) - 1U) + <= HARD_REGNO_NREGS (REGNO (reg), GET_MODE (reg)) - (unsigned)1) && i != reloadnum) { if (out -- 2.7.4