aboutsummaryrefslogtreecommitdiff
path: root/gcc/config
diff options
context:
space:
mode:
authorZack Weinberg <zack@gcc.gnu.org>2001-03-06 09:52:35 +0000
committerZack Weinberg <zack@gcc.gnu.org>2001-03-06 09:52:35 +0000
commitb548dffbda0dcd8ecd29dc91292c48fa40cd98aa (patch)
tree7e22f9fda0da4355d8a7de6e9143a24ad9ac4db4 /gcc/config
parent89b3de05baddfeec0747cc819dfb6a75363aebdc (diff)
downloadgcc-b548dffbda0dcd8ecd29dc91292c48fa40cd98aa.zip
gcc-b548dffbda0dcd8ecd29dc91292c48fa40cd98aa.tar.gz
gcc-b548dffbda0dcd8ecd29dc91292c48fa40cd98aa.tar.bz2
aclocal.m4 (libiberty_AC_FUNC_C_ALLOCA): New.
libiberty: * aclocal.m4 (libiberty_AC_FUNC_C_ALLOCA): New. * configure.in: Replace all alloca logic with a simple use of the above new macro. * config.table: Kill *-*-beos* entry. * config/mh-beos: Delete. * configure, config.in: Regenerate. * Makefile.in (ALLOCA, HFILES): Kill. (REQUIRED_OFILES): Add alloca.o. (alloca.o): Depend on libiberty.h. (argv.o): Don't depend on alloca-conf.h. * alloca-conf.h: Delete. * alloca.c: Include libiberty.h. Kill all #ifdef emacs blocks. Provide the C alloca unconditionally. Use PTR where appropriate. Make i00afunc static. * argv.c: Don't include alloca-conf.h. include: * libiberty.h: Prototype C_alloca; define alloca to either __builtin_alloca or C_alloca as appropriate. gcc: * aclocal.m4 (AM_GNU_GETTEXT): Don't AC_REQUIRE AC_FUNC_ALLOCA. * configure, config.in: Regenerate. * config.gcc: Remove references to deleted files. * genattr.c, genattrtab.c, genextract.c, genoutput.c, genrecog.c, rtl.c: Do not use alloca anywhere. * Makefile.in, build-make, system.h, config/x-interix, config/x-svr4, config/xm-interix.h, config/xm-openbsd.h, config/alpha/xm-alpha.h, config/alpha/xm-vms.h, config/arc/xm-arc.h, config/arm/xm-arm.h, config/d30v/xm-d30v.h, config/dsp16xx/xm-dsp16xx.h, config/h8300/xm-h8300.h, config/i370/x-oe, config/i370/xm-linux.h, config/i386/x-aix, config/i386/x-beos, config/i386/x-ncr3000, config/i386/x-sco5, config/i386/xm-dgux.h, config/i860/x-sysv4, config/i960/xm-i960.h, config/m32r/xm-m32r.h, config/m68k/x-crds, config/m68k/x-dpx2, config/m68k/x-hp320, config/m68k/x-hp320g, config/m69k/x-mot3300, config/m68k/x-mot3300-gas, config/m68k/xm-amix.h, config/m68k/xm-hp320.h, config/m68k/xm-m68kv.h, config/m68k/xm-mot3300.h, config/m88k/x-dolph, config/m88k/x-sysv4, config/m88k/x-tekXD88, config/m88k/xm-m88k.h, config/mcore/xm-mcore.h, config/mips/x-iris, config/mips/x-iris3, config/mips/x-sni-svr4, config/mips/x-sysv, config/mips/xm-iris6.h, config/mips/xm-mips.h, config/mips/xm-nws3250v4.h, config/pa/x-hpux, config/pa/x-pa-mpeix, config/pa/xm-pa.h, config/pa/xm-pa64hpux.h, config/pa/xm-pahpux.h, config/pa/xm-papro.h, config/romp/xm-romp.h, config/rs6000/x-aix31, config/rs6000/x-aix41, config/rs6000/x-beos, config/rs6000/x-lynx, config/rs6000/x-mach, config/rs6000/x-rs6000, config/rs6000/x-sysv4, config/rs6000/xm-rs6000.h, config/rs6000/xm-sysv4.h, config/sh/xm-sh.h, config/sparc/x-sysv4, config/sparc/xm-linux.h, config/sparc/xm-pbd.h, config/sparc/xm-sparc.h, config/vax/xm-vms.h: Eradicate all references to alloca and related stuff. * config/xm-alloca.h, config/clipper/x-clix, config/i386/xm-sysv4.h, config/i860/x-fx2800, config/i860/x-sysv3, config/m88k/x-sysv3, config/sparc/xm-sol2.h, config/we32k/x-we32k: Delete (contained only alloca related hacks). * config/i386/xm-beos.h, config/rs6000/xm-beos.h: Just define USE_C_ALLOCA. From-SVN: r40259
Diffstat (limited to 'gcc/config')
-rw-r--r--gcc/config/alpha/xm-alpha.h13
-rw-r--r--gcc/config/alpha/xm-vms.h8
-rw-r--r--gcc/config/arc/xm-arc.h5
-rw-r--r--gcc/config/arm/xm-arm.h5
-rw-r--r--gcc/config/clipper/x-clix1
-rw-r--r--gcc/config/d30v/xm-d30v.h8
-rw-r--r--gcc/config/dsp16xx/xm-dsp16xx.h7
-rw-r--r--gcc/config/h8300/xm-h8300.h7
-rw-r--r--gcc/config/i370/x-oe4
-rw-r--r--gcc/config/i370/xm-linux.h8
-rw-r--r--gcc/config/i386/x-aix3
-rw-r--r--gcc/config/i386/x-beos7
-rw-r--r--gcc/config/i386/x-ncr30007
-rw-r--r--gcc/config/i386/x-sco52
-rw-r--r--gcc/config/i386/xm-beos.h7
-rw-r--r--gcc/config/i386/xm-dgux.h5
-rw-r--r--gcc/config/i386/xm-sysv4.h5
-rw-r--r--gcc/config/i860/x-fx28007
-rw-r--r--gcc/config/i860/x-sysv31
-rw-r--r--gcc/config/i860/x-sysv433
-rw-r--r--gcc/config/i960/xm-i960.h5
-rw-r--r--gcc/config/m32r/xm-m32r.h5
-rw-r--r--gcc/config/m68k/x-crds6
-rw-r--r--gcc/config/m68k/x-dpx25
-rw-r--r--gcc/config/m68k/x-hp3203
-rw-r--r--gcc/config/m68k/x-hp320g1
-rw-r--r--gcc/config/m68k/x-mot33002
-rw-r--r--gcc/config/m68k/x-mot3300-gas2
-rw-r--r--gcc/config/m68k/xm-amix.h4
-rw-r--r--gcc/config/m68k/xm-hp320.h6
-rw-r--r--gcc/config/m68k/xm-m68kv.h4
-rw-r--r--gcc/config/m68k/xm-mot3300.h9
-rw-r--r--gcc/config/m88k/x-dolph6
-rw-r--r--gcc/config/m88k/x-sysv37
-rw-r--r--gcc/config/m88k/x-sysv44
-rw-r--r--gcc/config/m88k/x-tekXD883
-rw-r--r--gcc/config/m88k/xm-m88k.h5
-rw-r--r--gcc/config/mcore/xm-mcore.h5
-rw-r--r--gcc/config/mips/x-iris3
-rw-r--r--gcc/config/mips/x-iris33
-rw-r--r--gcc/config/mips/x-sni-svr45
-rw-r--r--gcc/config/mips/x-sysv5
-rw-r--r--gcc/config/mips/xm-iris6.h11
-rw-r--r--gcc/config/mips/xm-mips.h13
-rw-r--r--gcc/config/mips/xm-nws3250v4.h6
-rw-r--r--gcc/config/pa/x-pa-hpux2
-rw-r--r--gcc/config/pa/x-pa-mpeix1
-rw-r--r--gcc/config/pa/xm-pa.h4
-rw-r--r--gcc/config/pa/xm-pa64hpux.h5
-rw-r--r--gcc/config/pa/xm-pahpux.h4
-rw-r--r--gcc/config/pa/xm-papro.h4
-rw-r--r--gcc/config/romp/xm-romp.h3
-rw-r--r--gcc/config/rs6000/x-aix314
-rw-r--r--gcc/config/rs6000/x-aix413
-rw-r--r--gcc/config/rs6000/x-beos7
-rw-r--r--gcc/config/rs6000/x-lynx3
-rw-r--r--gcc/config/rs6000/x-mach3
-rw-r--r--gcc/config/rs6000/x-rs60003
-rw-r--r--gcc/config/rs6000/x-sysv41
-rw-r--r--gcc/config/rs6000/xm-beos.h11
-rw-r--r--gcc/config/rs6000/xm-rs6000.h8
-rw-r--r--gcc/config/rs6000/xm-sysv4.h8
-rw-r--r--gcc/config/sh/xm-sh.h5
-rw-r--r--gcc/config/sparc/x-sysv41
-rw-r--r--gcc/config/sparc/xm-linux.h3
-rw-r--r--gcc/config/sparc/xm-pbd.h4
-rw-r--r--gcc/config/sparc/xm-sol2.h4
-rw-r--r--gcc/config/sparc/xm-sparc.h5
-rw-r--r--gcc/config/vax/xm-vms.h10
-rw-r--r--gcc/config/we32k/x-we32k1
-rw-r--r--gcc/config/x-interix5
-rw-r--r--gcc/config/x-svr47
-rw-r--r--gcc/config/xm-alloca.h4
-rw-r--r--gcc/config/xm-interix.h5
-rw-r--r--gcc/config/xm-openbsd.h5
75 files changed, 19 insertions, 385 deletions
diff --git a/gcc/config/alpha/xm-alpha.h b/gcc/config/alpha/xm-alpha.h
index f68b4ed..1531a8e 100644
--- a/gcc/config/alpha/xm-alpha.h
+++ b/gcc/config/alpha/xm-alpha.h
@@ -27,19 +27,6 @@ Boston, MA 02111-1307, USA. */
#define HOST_BITS_PER_LONG 64
#define HOST_BITS_PER_LONGLONG 64
-/* If compiled with GNU C, use the builtin alloca. */
-#ifndef alloca
-#if defined(__GNUC__) && !defined(USE_C_ALLOCA)
-#define alloca __builtin_alloca
-#else
-#if !defined(_WIN32) && !defined(USE_C_ALLOCA) && !defined(OPEN_VMS) && !defined(__INTERIX)
-#include <alloca.h>
-#else
-extern void *alloca ();
-#endif
-#endif
-#endif
-
/* The host compiler has problems with enum bitfields since it makes
them signed so we can't fit all our codes in. */
diff --git a/gcc/config/alpha/xm-vms.h b/gcc/config/alpha/xm-vms.h
index 16e89c8..9974e66 100644
--- a/gcc/config/alpha/xm-vms.h
+++ b/gcc/config/alpha/xm-vms.h
@@ -69,8 +69,6 @@ Boston, MA 02111-1307, USA. */
#define HAVE_STRERROR
#define HAVE_ATOLL
-#define USE_C_ALLOCA /* Using alloca.c */
-
#define HAVE_FCNTL_H 1
#define HAVE_STDLIB_H 1
#define HAVE_UNISTD_H 1
@@ -81,11 +79,5 @@ Boston, MA 02111-1307, USA. */
#define STDC_HEADERS 1
#define HAVE_STRINGIZE 1
-#if __STDC__
-extern void *alloca (size_t);
-#else
-extern char *alloca (unsigned int);
-#endif
-
#define OBJECT_SUFFIX ".obj"
#define EXECUTABLE_SUFFIX ".exe"
diff --git a/gcc/config/arc/xm-arc.h b/gcc/config/arc/xm-arc.h
index 1742ed2..a98d9c3 100644
--- a/gcc/config/arc/xm-arc.h
+++ b/gcc/config/arc/xm-arc.h
@@ -28,8 +28,3 @@ Boston, MA 02111-1307, USA. */
/* Doubles are stored in memory with the high order word first. This
matters when cross-compiling. */
#define HOST_WORDS_BIG_ENDIAN 1
-
-/* If compiled with Sun CC, the use of alloca requires this #include. */
-#ifndef __GNUC__
-#include "alloca.h"
-#endif
diff --git a/gcc/config/arm/xm-arm.h b/gcc/config/arm/xm-arm.h
index efb1ecf..ff16b71 100644
--- a/gcc/config/arm/xm-arm.h
+++ b/gcc/config/arm/xm-arm.h
@@ -36,11 +36,6 @@ Boston, MA 02111-1307, USA. */
#define HOST_FLOAT_WORDS_BIG_ENDIAN 1
-/* If not compiled with GNU C, use C alloca. */
-#ifndef __GNUC__
-#define USE_C_ALLOCA
-#endif
-
/* If we have defined POSIX, but are compiling in the BSD environment, then
we need to define getcwd in terms of getwd. */
#if defined (POSIX) && defined (_BSD_C)
diff --git a/gcc/config/clipper/x-clix b/gcc/config/clipper/x-clix
deleted file mode 100644
index 155161f..0000000
--- a/gcc/config/clipper/x-clix
+++ /dev/null
@@ -1 +0,0 @@
-ALLOCA = alloca.o
diff --git a/gcc/config/d30v/xm-d30v.h b/gcc/config/d30v/xm-d30v.h
index 9423cae..b4ba49f 100644
--- a/gcc/config/d30v/xm-d30v.h
+++ b/gcc/config/d30v/xm-d30v.h
@@ -34,11 +34,3 @@
/* A C expression for the number of bits in `long' on the host machine. */
#define HOST_BITS_PER_LONG 32
-
-/* Define this macro to indicate that the compiler is running with the `alloca'
- implemented in C. */
-#ifndef __GNUC__
-#define USE_C_ALLOCA
-#else
-#define alloca __builtin_alloca
-#endif
diff --git a/gcc/config/dsp16xx/xm-dsp16xx.h b/gcc/config/dsp16xx/xm-dsp16xx.h
index 31c225d..c02c8a9 100644
--- a/gcc/config/dsp16xx/xm-dsp16xx.h
+++ b/gcc/config/dsp16xx/xm-dsp16xx.h
@@ -25,10 +25,3 @@ Boston, MA 02111-1307, USA. */
#define HOST_BITS_PER_INT 16
#define HOST_BITS_PER_LONG 32
#define HOST_BITS_PER_LONGLONG 64
-
-/* If compiled with GNU C, use the built-in alloca */
-#ifdef __GNUC__
-#define alloca __builtin_alloca
-#else
-#define USE_C_ALLOCA
-#endif
diff --git a/gcc/config/h8300/xm-h8300.h b/gcc/config/h8300/xm-h8300.h
index 171faab..10a1269 100644
--- a/gcc/config/h8300/xm-h8300.h
+++ b/gcc/config/h8300/xm-h8300.h
@@ -24,10 +24,3 @@ Boston, MA 02111-1307, USA. */
#define HOST_BITS_PER_INT 16
#define HOST_BITS_PER_LONG 32
#define HOST_BITS_PER_LONGLONG 64
-
-/* If compiled with GNU C, use the built-in alloca */
-#ifdef __GNUC__
-#define alloca __builtin_alloca
-#else
-#define USE_C_ALLOCA
-#endif
diff --git a/gcc/config/i370/x-oe b/gcc/config/i370/x-oe
index b6db96a..c947cc9 100644
--- a/gcc/config/i370/x-oe
+++ b/gcc/config/i370/x-oe
@@ -2,10 +2,6 @@
# Host is an i370 running OpenEdition
#
-# Use GCC alloca
-
-ALLOCA = alloca.o
-
# Don't bother fixing up header files, they're wierd
STMP_FIXPROTO =
diff --git a/gcc/config/i370/xm-linux.h b/gcc/config/i370/xm-linux.h
index 22564df..7a81701 100644
--- a/gcc/config/i370/xm-linux.h
+++ b/gcc/config/i370/xm-linux.h
@@ -31,13 +31,7 @@ Boston, MA 02111-1307, USA. */
#define HOST_WORDS_BIG_ENDIAN
-/* If not compiled with GNU C, use the C alloca and use only int bitfields. */
+/* If not compiled with GNU C, use only int bitfields. */
#ifndef __GNUC__
-#define USE_C_ALLOCA
-#if __STDC__
-extern void *alloca ();
-#else
-extern char *alloca ();
-#endif
#define ONLY_INT_FIELDS
#endif
diff --git a/gcc/config/i386/x-aix b/gcc/config/i386/x-aix
index b191e48..8e867fc 100644
--- a/gcc/config/i386/x-aix
+++ b/gcc/config/i386/x-aix
@@ -1,6 +1,3 @@
-# There is an alloca in -lbsd, but it is limited to 32K
-ALLOCA = alloca.o
-
# If you are running out of memory while compiling gcc, with the standard
# /bin/cc uncomment MALLOCLIB line. That version of malloc is slower but
# has less overhead than the one in libc.
diff --git a/gcc/config/i386/x-beos b/gcc/config/i386/x-beos
index 426d0c0..e4fd443 100644
--- a/gcc/config/i386/x-beos
+++ b/gcc/config/i386/x-beos
@@ -1,12 +1,5 @@
# configuration for BeOS
INSTALL=install -c
-# Show we need to use the C version of ALLOCA
-ALLOCA=alloca.o
-# Use it regardless of whether we are compiling with gcc or not.
-USE_ALLOCA= `echo "${ALLOCA}"`
-USE_HOST_ALLOCA= `echo ${HOST_PREFIX}${HOST_ALLOCA}`
-SUBDIR_USE_ALLOCA = `if [ x$(ALLOCA) != x ]; then echo ../$(ALLOCA); else true; fi`
-
# Don't run fixproto
STMP_FIXPROTO =
diff --git a/gcc/config/i386/x-ncr3000 b/gcc/config/i386/x-ncr3000
index 4ae168b..a18786a 100644
--- a/gcc/config/i386/x-ncr3000
+++ b/gcc/config/i386/x-ncr3000
@@ -17,13 +17,6 @@ CCLIBFLAGS=
# The rest is just x-i386v4.
-# Some versions of SVR4 have an alloca in /usr/ucblib/libucb.a, and if we are
-# careful to link that in after libc we can use it, but since newer versions of
-# SVR4 are dropping libucb, it is better to just use the portable C version for
-# bootstrapping. Do this by defining ALLOCA.
-
-ALLOCA = alloca.o
-
# We used to build all stages *without* shared libraries because that may make
# debugging the compiler easier (until there is a GDB which supports
# both Dwarf *and* svr4 shared libraries).
diff --git a/gcc/config/i386/x-sco5 b/gcc/config/i386/x-sco5
index e13ed74..c9b78c2 100644
--- a/gcc/config/i386/x-sco5
+++ b/gcc/config/i386/x-sco5
@@ -3,8 +3,6 @@ RANLIB_TEST = false
CC = cc
OLDCC = cc
CCLIBFLAGS =
-# We avoid the ALLOCA in -lPW becuase it gives us an evil index()
-ALLOCA = alloca.o
# See all the declarations.
FIXPROTO_DEFINES = -D_XOPEN_SOURCE -D_POSIX_C_SOURCE=2
diff --git a/gcc/config/i386/xm-beos.h b/gcc/config/i386/xm-beos.h
index b133ba9..f62dd53 100644
--- a/gcc/config/i386/xm-beos.h
+++ b/gcc/config/i386/xm-beos.h
@@ -47,3 +47,10 @@ Boston, MA 02111-1307, USA. */
#define HAVE_PUTENV
#endif
#define HAVE_RENAME
+
+/* This is a temporary hack until the wimpy default 64k stack
+ limit in BeOS is either increased or made user settable somehow.
+ This probably won't happen until after the DR9 release. */
+#undef USE_C_ALLOCA
+#define USE_C_ALLOCA 1
+
diff --git a/gcc/config/i386/xm-dgux.h b/gcc/config/i386/xm-dgux.h
index d322b47..874b148 100644
--- a/gcc/config/i386/xm-dgux.h
+++ b/gcc/config/i386/xm-dgux.h
@@ -4,8 +4,3 @@
#include "i386/xm-i386.h"
#include "xm-svr4.h"
-
-/* If not compiled with GNU C, use the portable alloca. */
-#ifndef __GNUC__
-#define USE_C_ALLOCA
-#endif
diff --git a/gcc/config/i386/xm-sysv4.h b/gcc/config/i386/xm-sysv4.h
deleted file mode 100644
index 1365064..0000000
--- a/gcc/config/i386/xm-sysv4.h
+++ /dev/null
@@ -1,5 +0,0 @@
-/* Configuration for GCC for Intel i386 running System V Release 4. */
-
-#ifdef __HIGHC__
-#include <alloca.h> /* for MetaWare High-C on NCR System 3000 */
-#endif
diff --git a/gcc/config/i860/x-fx2800 b/gcc/config/i860/x-fx2800
deleted file mode 100644
index cf05f8f..0000000
--- a/gcc/config/i860/x-fx2800
+++ /dev/null
@@ -1,7 +0,0 @@
-
-# The Alliant FX2800 is supposed to conform to the SysV R4 i860 ABI,
-# but apparently the native compiler generates non ABI-compliant
-# function prologues and epilogues, so we need the alloca from emacs.
-# -- hyc@hanauma.jpl.nasa.gov
-
-ALLOCA=alloca.o
diff --git a/gcc/config/i860/x-sysv3 b/gcc/config/i860/x-sysv3
deleted file mode 100644
index 3375d42..0000000
--- a/gcc/config/i860/x-sysv3
+++ /dev/null
@@ -1 +0,0 @@
-ALLOCA=alloca.o
diff --git a/gcc/config/i860/x-sysv4 b/gcc/config/i860/x-sysv4
index c01fb88..37b79dd 100644
--- a/gcc/config/i860/x-sysv4
+++ b/gcc/config/i860/x-sysv4
@@ -1,36 +1,3 @@
-# The svr4 reference port for the i860 contains an alloca.o routine
-# in /usr/ucblib/libucb.a, but we can't just try to get that by
-# setting CLIB to /usr/ucblib/libucb.a because (unfortunately)
-# there are a lot of other routines in libucb.a which are supposed
-# to be the Berkeley versions of library routines normally found in
-# libc.a and many of these Berkeley versions are badly broken. Thus,
-# if we try to link programs with libucb.a before libc.a, those
-# programs tend to crash.
-
-# Also, the alloca() routine supplied in early version of svr4 for
-# the i860 is non-ABI compliant. It doesn't keep the stack aligned
-# to a 16-byte boundary as the ABI requires.
-
-# More importantly however, even a fully ABI compliant alloca() routine
-# would fail to work correctly with some versions of the native svr4 C
-# compiler currently being distributed for the i860 (as of 1/29/92).
-# The problem is that the native C compiler generates non-ABI-compliant
-# function epilogues which cut back the stack (upon function exit) in
-# an incorrect manner. Specifically, they cut back the stack by adding
-# the nominal *static* frame size (determined statically at compile-time)
-# to the stack pointer rather than setting the stack pointer based upon
-# the current value of the frame pointer (as called for in the i860 ABI).
-# This can cause serious trouble in cases where you repeatedly call a
-# routine which itself calls alloca(). In such cases, the stack will
-# grow continuously until you finally run out of swap space or exceed
-# the system's process size limit. To avoid this problem (which can
-# arise when a stage1 gcc is being used to build a stage2 gcc) you
-# *must* link in the C language version of alloca() which is supplied
-# with gcc to your stage1 version of gcc. The following definition
-# forces that to happen.
-
-ALLOCA=alloca.o
-
# We build all stages *without* shared libraries because that may make
# debugging the compiler easier (until there is a GDB which supports
# both Dwarf *and* svr4 shared libraries).
diff --git a/gcc/config/i960/xm-i960.h b/gcc/config/i960/xm-i960.h
index 991b736..3617cae 100644
--- a/gcc/config/i960/xm-i960.h
+++ b/gcc/config/i960/xm-i960.h
@@ -24,8 +24,3 @@ Boston, MA 02111-1307, USA. */
#define HOST_BITS_PER_INT 32
#define HOST_BITS_PER_LONG 32
#define HOST_BITS_PER_LONGLONG 64
-
-/* If not compiled with GNU C, use the C alloca */
-#ifndef __GNUC__
-#define USE_C_ALLOCA
-#endif
diff --git a/gcc/config/m32r/xm-m32r.h b/gcc/config/m32r/xm-m32r.h
index 948b130..c99240a 100644
--- a/gcc/config/m32r/xm-m32r.h
+++ b/gcc/config/m32r/xm-m32r.h
@@ -28,8 +28,3 @@ Boston, MA 02111-1307, USA. */
/* Doubles are stored in memory with the high order word first. This
matters when cross-compiling. */
#define HOST_WORDS_BIG_ENDIAN 1
-
-/* If compiled with Sun CC, the use of alloca requires this #include. */
-#ifndef __GNUC__
-#include "alloca.h"
-#endif
diff --git a/gcc/config/m68k/x-crds b/gcc/config/m68k/x-crds
index 172909c..a6f57c2 100644
--- a/gcc/config/m68k/x-crds
+++ b/gcc/config/m68k/x-crds
@@ -1,7 +1 @@
CC = cc -Wx,-X23
-
-# The following line might be necessary as well or instead of the above.
-# If you find out that it is necessary,
-# or if you find out that it is not necessary,
-# please inform bug-gcc@prep.ai.mit.edu.
-# ALLOCA = alloca.o
diff --git a/gcc/config/m68k/x-dpx2 b/gcc/config/m68k/x-dpx2
index a4a8c1b..36c5d96 100644
--- a/gcc/config/m68k/x-dpx2
+++ b/gcc/config/m68k/x-dpx2
@@ -1,8 +1,3 @@
-# need this when using cc
-ALLOCA = alloca.o
-# avoid lossage assembling alloca.
-ALLOCA_FLAGS=-S
-ALLOCA_FINISH = $(AS) -o alloca.o alloca.s
# be sure not to confuse ./as with /bin/as
AS=`if [ x$(OLDCC) = x$(CC) ] ; then echo /bin/as; else echo $(GAS); fi`
GAS = gas
diff --git a/gcc/config/m68k/x-hp320 b/gcc/config/m68k/x-hp320
index 1107ae4..e24fdc4 100644
--- a/gcc/config/m68k/x-hp320
+++ b/gcc/config/m68k/x-hp320
@@ -1,7 +1,6 @@
# Make assignments for compilation on HPUX with their C compiler.
CC=cc -Wc,-Nw2000 -Wc,-Ns2000 -Wc,-Ne700 -Wc,-Np300
OLDCC=cc -Wc,-Nw2000 -Wc,-Ns2000 -Wc,-Ne700 -Wc,-Np300
-ALLOCA=alloca.o
# For CCLIBFLAGS you might want to specify the switch that
# forces only 68000 instructions to be used.
@@ -9,7 +8,5 @@ ALLOCA=alloca.o
# Version 5 of HPUX had a compiler bug that made it crash with -g.
# You must set CFLAGS to empty on version 5.
-# You must get alloca.c from GNU Emacs.
-
# So putenv and other functions get seen by fixproto.
FIXPROTO_DEFINES = -D_HPUX_SOURCE
diff --git a/gcc/config/m68k/x-hp320g b/gcc/config/m68k/x-hp320g
index 8417137..9b31a3c 100644
--- a/gcc/config/m68k/x-hp320g
+++ b/gcc/config/m68k/x-hp320g
@@ -1,7 +1,6 @@
# Make assignments for compilation on HPUX with their C compiler.
CC=cc -Wc,-Nw2000 -Wc,-Ns2000 -Wc,-Ne700 -Wc,-Np300
OLDCC=cc -Wc,-Nw2000 -Wc,-Ns2000 -Wc,-Ne700 -Wc,-Np300
-ALLOCA=alloca.o
# For CCLIBFLAGS you might want to specify the switch that
# forces only 68000 instructions to be used.
diff --git a/gcc/config/m68k/x-mot3300 b/gcc/config/m68k/x-mot3300
index 14d86d1..d13818f 100644
--- a/gcc/config/m68k/x-mot3300
+++ b/gcc/config/m68k/x-mot3300
@@ -1,5 +1,3 @@
-ALLOCA=alloca.o
-
# This disables the long/short jump optimization.
# I use sysV68 R3V7.1 RM04 (phdm@info.ucl.ac.be)
# Since ss-950318, with jump optimization enabled, "as" issues a warning
diff --git a/gcc/config/m68k/x-mot3300-gas b/gcc/config/m68k/x-mot3300-gas
index cf27977..90852be 100644
--- a/gcc/config/m68k/x-mot3300-gas
+++ b/gcc/config/m68k/x-mot3300-gas
@@ -1,5 +1,3 @@
-ALLOCA=alloca.o
-
# This disables the long/short jump optimization.
# I use sysV68 R3V7.1 RM04 (phdm@info.ucl.ac.be)
# Since ss-950318, with jump optimization enabled, "as" issues a warning
diff --git a/gcc/config/m68k/xm-amix.h b/gcc/config/m68k/xm-amix.h
index 588b15e..44e88a0 100644
--- a/gcc/config/m68k/xm-amix.h
+++ b/gcc/config/m68k/xm-amix.h
@@ -20,7 +20,3 @@ the Free Software Foundation, 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. */
#include "m68k/xm-m68kv.h" /* Use the System V flavor of m68k host */
-
-#if defined (__GNUC__) && __GNUC__ == 1
-#define alloca __builtin_alloca
-#endif
diff --git a/gcc/config/m68k/xm-hp320.h b/gcc/config/m68k/xm-hp320.h
index df48bdd..962a654 100644
--- a/gcc/config/m68k/xm-hp320.h
+++ b/gcc/config/m68k/xm-hp320.h
@@ -2,9 +2,3 @@
#define USG
#include "m68k/xm-m68k.h"
-
-/* If compiling with HPUX compiler, we are probably using alloca.c,
- so help it work right. */
-#ifndef __GNUC__
-#define USE_C_ALLOCA
-#endif
diff --git a/gcc/config/m68k/xm-m68kv.h b/gcc/config/m68k/xm-m68kv.h
index d0931f0..b3d8887 100644
--- a/gcc/config/m68k/xm-m68kv.h
+++ b/gcc/config/m68k/xm-m68kv.h
@@ -3,7 +3,3 @@
#include "m68k/xm-m68k.h"
#define USG
-
-#ifndef __GNUC__
-#define USE_C_ALLOCA
-#endif
diff --git a/gcc/config/m68k/xm-mot3300.h b/gcc/config/m68k/xm-mot3300.h
index f8eabbd..aed9c6e 100644
--- a/gcc/config/m68k/xm-mot3300.h
+++ b/gcc/config/m68k/xm-mot3300.h
@@ -21,12 +21,3 @@ the Free Software Foundation, 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. */
#define USG 1
-
-/* do not use alloca from -lPW with cc, because function epilogues use %sp */
-#ifndef __GNUC__
-#ifdef __STDC__
-extern void *alloca ();
-#else
-extern char *alloca ();
-#endif
-#endif
diff --git a/gcc/config/m88k/x-dolph b/gcc/config/m88k/x-dolph
index b31a7a9..c63d17e 100644
--- a/gcc/config/m88k/x-dolph
+++ b/gcc/config/m88k/x-dolph
@@ -6,12 +6,6 @@ EXTRA_PARTS=crtbegin.o crtend.o gcc.ld
gcc.ld: $(srcdir)/config/m88k/dolphin.ld
rm -f gcc.ld; cp $(srcdir)/config/m88k/dolphin.ld gcc.ld
-# Green Hills C on Dolphin UNIX System V/88 Release 3.2 Version 3.6/5.86 does
-# not provide alloca. It does not harm to have it defined on version 3.8.alfa
-# even though it's not needed there.
-
-ALLOCA=alloca.o
-
# Under DolphinOS 3.8.alfa, /bin/cc defines __GNUC__, but not __m88k__,
# causing gdstarg.h to fail. Defining __m88k__ does probably not hurt on
# DolphinOS 3.6.
diff --git a/gcc/config/m88k/x-sysv3 b/gcc/config/m88k/x-sysv3
deleted file mode 100644
index 3ee9067..0000000
--- a/gcc/config/m88k/x-sysv3
+++ /dev/null
@@ -1,7 +0,0 @@
-# this is m88k/x-sysv3
-
-# native compiler does not provide alloca
-
-ALLOCA = alloca.o
-
-# end m88k/x-sysv3
diff --git a/gcc/config/m88k/x-sysv4 b/gcc/config/m88k/x-sysv4
index dd24287..e2b79d0 100644
--- a/gcc/config/m88k/x-sysv4
+++ b/gcc/config/m88k/x-sysv4
@@ -4,7 +4,3 @@
# results in a problem when <wait.h> includes <siginfo.h>.
X_CFLAGS = -DNO_BUGS -D__STDC__=0
-
-# The CI5 compiler does not provide alloca.
-
-ALLOCA = alloca.o
diff --git a/gcc/config/m88k/x-tekXD88 b/gcc/config/m88k/x-tekXD88
index b8b4a2f..cf19e82 100644
--- a/gcc/config/m88k/x-tekXD88
+++ b/gcc/config/m88k/x-tekXD88
@@ -4,9 +4,6 @@ EXTRA_PARTS=crtbegin.o crtend.o gcc.ld
gcc.ld: $(srcdir)/config/m88k/tekXD88.ld
rm -f gcc.ld; cp $(srcdir)/config/m88k/tekXD88.ld ./gcc.ld
-# Green Hills C on the Tektronix XD88 does not provide alloca.
-ALLOCA=alloca.o
-
# rc is cleaner, but the ar program sometimes crashes.
# This is a workaround.
AR_FLAGS=qc
diff --git a/gcc/config/m88k/xm-m88k.h b/gcc/config/m88k/xm-m88k.h
index afb68f8..38140f4 100644
--- a/gcc/config/m88k/xm-m88k.h
+++ b/gcc/config/m88k/xm-m88k.h
@@ -37,11 +37,6 @@ Boston, MA 02111-1307, USA. */
#endif
#endif
-/* If not compiled with GNU C, use the C alloca */
-#ifndef __GNUC__
-#define USE_C_ALLOCA
-#endif
-
/* For DG/UX, the best size is different. */
#ifdef __DGUX__
#define OBSTACK_CHUNK_SIZE (8192-16)
diff --git a/gcc/config/mcore/xm-mcore.h b/gcc/config/mcore/xm-mcore.h
index 6ec0129..bdbe862 100644
--- a/gcc/config/mcore/xm-mcore.h
+++ b/gcc/config/mcore/xm-mcore.h
@@ -22,8 +22,3 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
#define HOST_BITS_PER_SHORT 16
#define HOST_BITS_PER_INT 32
#define HOST_BITS_PER_LONG 32
-
-/* If compiled with GNU C, use the built-in alloca. */
-#ifdef __GNUC__
-#define alloca __builtin_alloca
-#endif
diff --git a/gcc/config/mips/x-iris b/gcc/config/mips/x-iris
index cf135d1..99c7fc9 100644
--- a/gcc/config/mips/x-iris
+++ b/gcc/config/mips/x-iris
@@ -23,9 +23,6 @@
# -lmalloc is supposed to be faster than the normal malloc
CLIB = -lmld -lmalloc
-# Show we need to use the C version of ALLOCA
-ALLOCA = alloca.o
-
# Find all of the declarations from the header files
FIXPROTO_DEFINES= -D__EXTENSIONS__ -D_SGI_SOURCE -D_LANGUAGE_C_PLUS_PLUS
diff --git a/gcc/config/mips/x-iris3 b/gcc/config/mips/x-iris3
index 2743ab7..f8948e8 100644
--- a/gcc/config/mips/x-iris3
+++ b/gcc/config/mips/x-iris3
@@ -25,6 +25,3 @@
# -lmld is so we can link collect2 running native.
# -lmalloc is supposed to be faster than the normal malloc
CLIB = -lmld -lmalloc
-
-# Show we need to use the C version of ALLOCA
-ALLOCA = alloca.o
diff --git a/gcc/config/mips/x-sni-svr4 b/gcc/config/mips/x-sni-svr4
index a6e003f..e7fe4ee 100644
--- a/gcc/config/mips/x-sni-svr4
+++ b/gcc/config/mips/x-sni-svr4
@@ -9,8 +9,3 @@
CC = $(OLDCC)
OPT =
OLDCC = cc -Olimit 3000 $(OPT)
-
-# Show we need to use the C version of ALLOCA
-# The SVR3 configurations have it, but the SVR4 configurations don't.
-# For now, just try using it for all SVR* configurations.
-ALLOCA = alloca.o
diff --git a/gcc/config/mips/x-sysv b/gcc/config/mips/x-sysv
index 2c173b1..09d467a 100644
--- a/gcc/config/mips/x-sysv
+++ b/gcc/config/mips/x-sysv
@@ -19,8 +19,3 @@ OLDCC = cc -Wf,-XNg1500,-XNh2000 -Olimit 3000 $(OPT)
# This enables collect2 to link.
# Some systems use version 2.11 of the compilers. Some use version 3.11.
CLIB= -L/usr/lib/cmplrs/cc2.11 -L/usr/lib/cmplrs/cc3.11 -lmld
-
-# Show we need to use the C version of ALLOCA
-# The SVR3 configurations have it, but the SVR4 configurations don't.
-# For now, just try using it for all SVR* configurations.
-ALLOCA = alloca.o
diff --git a/gcc/config/mips/xm-iris6.h b/gcc/config/mips/xm-iris6.h
index d42089f..576087b 100644
--- a/gcc/config/mips/xm-iris6.h
+++ b/gcc/config/mips/xm-iris6.h
@@ -1,14 +1,3 @@
-#define MIPS_OVERRIDE_ALLOCA
-#ifndef __GNUC__
-#include <alloca.h>
-#else
-# ifdef __SIZE_TYPE__
-extern void *alloca (__SIZE_TYPE__);
-# else
-extern void *alloca ();
-# endif /* __SIZE_TYPE__ */
-#endif
-
#include "mips/xm-mips.h"
#define USG
diff --git a/gcc/config/mips/xm-mips.h b/gcc/config/mips/xm-mips.h
index 71af928..eabe3a5 100644
--- a/gcc/config/mips/xm-mips.h
+++ b/gcc/config/mips/xm-mips.h
@@ -42,16 +42,3 @@ Boston, MA 02111-1307, USA. */
for compiling GNU C++. */
#define ONLY_INT_FIELDS 1
#endif
-
-#ifndef MIPS_OVERRIDE_ALLOCA
-#ifndef __GNUC__
-#define USE_C_ALLOCA
-
-#ifdef __STDC__
-extern void * alloca ();
-#else
-extern char * alloca ();
-#endif
-
-#endif
-#endif /* not MIPS_OVERRIDE_ALLOCA */
diff --git a/gcc/config/mips/xm-nws3250v4.h b/gcc/config/mips/xm-nws3250v4.h
index 34ab631..ee7fe04 100644
--- a/gcc/config/mips/xm-nws3250v4.h
+++ b/gcc/config/mips/xm-nws3250v4.h
@@ -1,9 +1,3 @@
#define USG
#include "xm-mips.h"
-
-/* If compiling with mips compiler, we are probably using alloca.c,
- so help it work right. */
-#ifndef __GNUC__
-#define USE_C_ALLOCA
-#endif
diff --git a/gcc/config/pa/x-pa-hpux b/gcc/config/pa/x-pa-hpux
index 8561f01..11c2846 100644
--- a/gcc/config/pa/x-pa-hpux
+++ b/gcc/config/pa/x-pa-hpux
@@ -1,4 +1,2 @@
-ALLOCA=alloca.o
-
# So putenv and other functions get seen by fixproto.
FIXPROTO_DEFINES = -D_HPUX_SOURCE -D_HIUX_SOURCE
diff --git a/gcc/config/pa/x-pa-mpeix b/gcc/config/pa/x-pa-mpeix
index 5baafba..390e28c 100644
--- a/gcc/config/pa/x-pa-mpeix
+++ b/gcc/config/pa/x-pa-mpeix
@@ -1,4 +1,3 @@
-ALLOCA=alloca.o
X_CFLAGS=-I/usr/contrib/include -DSYSV -D_POSIX_SOURCE -D_SOCKET_SOURCE -D_MPEIX_SOURCE -DPOSIX -D_MPEXL_SOURCE
CC=gcc
AR=/bin/ar
diff --git a/gcc/config/pa/xm-pa.h b/gcc/config/pa/xm-pa.h
index d7c7d48..231df9e 100644
--- a/gcc/config/pa/xm-pa.h
+++ b/gcc/config/pa/xm-pa.h
@@ -39,7 +39,3 @@ Boston, MA 02111-1307, USA. */
/* HP's compiler has problems with enum bitfields. */
#define ONLY_INT_FIELDS
-
-/* Always claim to use C alloca; this prevents losing if building with
- gcc -fno-builtin ... */
-#define USE_C_ALLOCA
diff --git a/gcc/config/pa/xm-pa64hpux.h b/gcc/config/pa/xm-pa64hpux.h
index 68c80af..3439697 100644
--- a/gcc/config/pa/xm-pa64hpux.h
+++ b/gcc/config/pa/xm-pa64hpux.h
@@ -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. */
-
/* HP-UX is a flavor of System V */
#define USG
@@ -35,7 +34,3 @@ Boston, MA 02111-1307, USA. */
/* HP's compiler has problems with enum bitfields. */
#define ONLY_INT_FIELDS
-
-/* Always claim to use C alloca; this prevents losing if building with
- gcc -fno-builtin ... */
-#define USE_C_ALLOCA
diff --git a/gcc/config/pa/xm-pahpux.h b/gcc/config/pa/xm-pahpux.h
index 651a0ed..9d0d455 100644
--- a/gcc/config/pa/xm-pahpux.h
+++ b/gcc/config/pa/xm-pahpux.h
@@ -35,7 +35,3 @@ Boston, MA 02111-1307, USA. */
/* HP's compiler has problems with enum bitfields. */
#define ONLY_INT_FIELDS
-
-/* Always claim to use C alloca; this prevents losing if building with
- gcc -fno-builtin ... " */
-#define USE_C_ALLOCA
diff --git a/gcc/config/pa/xm-papro.h b/gcc/config/pa/xm-papro.h
index 2f72d29..534d037 100644
--- a/gcc/config/pa/xm-papro.h
+++ b/gcc/config/pa/xm-papro.h
@@ -32,7 +32,3 @@ Boston, MA 02111-1307, USA. */
/* HP's compiler has problems with enum bitfields. */
#define ONLY_INT_FIELDS
-
-/* Always claim to use C alloca; this prevents losing if building with
- gcc -fno-builtin ... */
-#define USE_C_ALLOCA
diff --git a/gcc/config/romp/xm-romp.h b/gcc/config/romp/xm-romp.h
index 822ad23..c12fd3d 100644
--- a/gcc/config/romp/xm-romp.h
+++ b/gcc/config/romp/xm-romp.h
@@ -27,10 +27,9 @@ Boston, MA 02111-1307, USA. */
#define HOST_WORDS_BIG_ENDIAN
-/* If compiled with hc, use the built-in alloca and memcpy.
+/* If compiled with hc, use the built-in memcpy.
These definitions assume hc version 2. */
#ifdef __HIGHC__
-#define alloca _Alloca
#define bcopy(s,d,l) memcpy(d,s,l)
#define FUNCTION_CONVERSION_BUG
#endif
diff --git a/gcc/config/rs6000/x-aix31 b/gcc/config/rs6000/x-aix31
index 9f171fc..311f767 100644
--- a/gcc/config/rs6000/x-aix31
+++ b/gcc/config/rs6000/x-aix31
@@ -1,7 +1,3 @@
-# configuration for IBM rs6000 running aix
-# Show we need to use the C version of ALLOCA
-ALLOCA=alloca.o
-
# For some reason, we need -lm for cc1.
# We need -lld for collect2 (actually this only matters
# for a native compiler, but this is as good a place as any
diff --git a/gcc/config/rs6000/x-aix41 b/gcc/config/rs6000/x-aix41
index 3a2707e3..d573d4d 100644
--- a/gcc/config/rs6000/x-aix41
+++ b/gcc/config/rs6000/x-aix41
@@ -1,8 +1,5 @@
# configuration for IBM RS/6000 running AIX 4.1+
-# Show we need to use the C version of ALLOCA
-ALLOCA=alloca.o
-
# We need -lld for collect2 (actually this only matters
# for a native compiler, but this is as good a place as any
# to define the symbol).
diff --git a/gcc/config/rs6000/x-beos b/gcc/config/rs6000/x-beos
index 37b8cca..16fc937 100644
--- a/gcc/config/rs6000/x-beos
+++ b/gcc/config/rs6000/x-beos
@@ -1,9 +1,2 @@
# configuration for BeOS
INSTALL=install -c
-
-# Show we need to use the C version of ALLOCA
-ALLOCA=alloca.o
-# Use it regardless of whether we are compiling with gcc or not.
-USE_ALLOCA= `echo "${ALLOCA}"`
-USE_HOST_ALLOCA= `echo ${HOST_PREFIX}${HOST_ALLOCA}`
-SUBDIR_USE_ALLOCA = `if [ x$(ALLOCA) != x ]; then echo ../$(ALLOCA); else true; fi`
diff --git a/gcc/config/rs6000/x-lynx b/gcc/config/rs6000/x-lynx
index a1a2a73..341e908 100644
--- a/gcc/config/rs6000/x-lynx
+++ b/gcc/config/rs6000/x-lynx
@@ -5,9 +5,6 @@ OLDCC = /bin/gcc
# /bin/sh is too buggy, so use /bin/bash instead.
SHELL = /bin/bash
-# Show we need to use the C version of ALLOCA
-ALLOCA=alloca.o
-
# configuration for IBM rs6000 running lynx
# For some reason, we need -lm for cc1.
diff --git a/gcc/config/rs6000/x-mach b/gcc/config/rs6000/x-mach
index 64f39a5..dcff838 100644
--- a/gcc/config/rs6000/x-mach
+++ b/gcc/config/rs6000/x-mach
@@ -1,7 +1,4 @@
# configuration for IBM rs6000 running MACH
-# Show we need to use the C version of ALLOCA
-ALLOCA=alloca.o
-
# For some reason, we need -lm for cc1.
CLIB=-lm
diff --git a/gcc/config/rs6000/x-rs6000 b/gcc/config/rs6000/x-rs6000
index 0d8f311..6e553cc 100644
--- a/gcc/config/rs6000/x-rs6000
+++ b/gcc/config/rs6000/x-rs6000
@@ -1,8 +1,5 @@
# configuration for IBM rs6000 running aix
-# Show we need to use the C version of ALLOCA
-ALLOCA=alloca.o
-
# We need -lld for collect2 (actually this only matters
# for a native compiler, but this is as good a place as any
# to define the symbol).
diff --git a/gcc/config/rs6000/x-sysv4 b/gcc/config/rs6000/x-sysv4
index 2a661e3..71eaec6 100644
--- a/gcc/config/rs6000/x-sysv4
+++ b/gcc/config/rs6000/x-sysv4
@@ -1,2 +1 @@
X_CFLAGS=-DSVR4
-ALLOCA=alloca.o
diff --git a/gcc/config/rs6000/xm-beos.h b/gcc/config/rs6000/xm-beos.h
index d96a9aa..caebbcb 100644
--- a/gcc/config/rs6000/xm-beos.h
+++ b/gcc/config/rs6000/xm-beos.h
@@ -31,10 +31,7 @@ Boston, MA 02111-1307, USA. */
#define HOST_WORDS_BIG_ENDIAN
-/* Use the C alloca and use only int bitfields. */
-
-#define USE_C_ALLOCA
-extern void *alloca ();
+/* Use only int bitfields. */
#define ONLY_INT_FIELDS
/* use ANSI/SYSV style byte manipulation routines instead of BSD ones */
@@ -65,3 +62,9 @@ extern void *alloca ();
/* SYSTEM_INCLUDE_DIR is the location for system specific, non-POSIX headers. */
#define SYSTEM_INCLUDE_DIR "/boot/develop/headers/be"
+
+/* This is a temporary hack until the wimpy default 64k stack
+ limit in BeOS is either increased or made user settable somehow.
+ This probably won't happen until after the DR9 release. */
+#undef USE_C_ALLOCA
+#define USE_C_ALLOCA 1
diff --git a/gcc/config/rs6000/xm-rs6000.h b/gcc/config/rs6000/xm-rs6000.h
index d14ffaf..a815a9d 100644
--- a/gcc/config/rs6000/xm-rs6000.h
+++ b/gcc/config/rs6000/xm-rs6000.h
@@ -28,14 +28,8 @@ Boston, MA 02111-1307, USA. */
#define HOST_WORDS_BIG_ENDIAN
-/* If not compiled with GNU C, use the C alloca and use only int bitfields. */
+/* If not compiled with GNU C, use only int bitfields. */
#ifndef __GNUC__
-#define USE_C_ALLOCA
-#if __STDC__
-extern void *alloca ();
-#else
-extern char *alloca ();
-#endif
#define ONLY_INT_FIELDS
#endif
diff --git a/gcc/config/rs6000/xm-sysv4.h b/gcc/config/rs6000/xm-sysv4.h
index d35afed..25aecfe 100644
--- a/gcc/config/rs6000/xm-sysv4.h
+++ b/gcc/config/rs6000/xm-sysv4.h
@@ -34,14 +34,8 @@ Boston, MA 02111-1307, USA. */
#include "xm-linux.h"
#endif
-/* if not compiled with GNU C, use the C alloca and use only int bitfields. */
+/* if not compiled with GNU C, use only int bitfields. */
#ifndef __GNUC__
-#define USE_C_ALLOCA
-#ifdef __STDC__
-extern void *alloca ();
-#else
-extern char *alloca ();
-#endif
#undef ONLY_INT_FIELDS
#define ONLY_INT_FIELDS
#endif
diff --git a/gcc/config/sh/xm-sh.h b/gcc/config/sh/xm-sh.h
index 6802553..9c7bdfd 100644
--- a/gcc/config/sh/xm-sh.h
+++ b/gcc/config/sh/xm-sh.h
@@ -23,8 +23,3 @@ Boston, MA 02111-1307, USA. */
#define HOST_BITS_PER_SHORT 16
#define HOST_BITS_PER_INT 32
#define HOST_BITS_PER_LONG 32
-
-/* If compiled with GNU C, use the built-in alloca. */
-#ifdef __GNUC__
-#define alloca __builtin_alloca
-#endif
diff --git a/gcc/config/sparc/x-sysv4 b/gcc/config/sparc/x-sysv4
index 2a661e3..71eaec6 100644
--- a/gcc/config/sparc/x-sysv4
+++ b/gcc/config/sparc/x-sysv4
@@ -1,2 +1 @@
X_CFLAGS=-DSVR4
-ALLOCA=alloca.o
diff --git a/gcc/config/sparc/xm-linux.h b/gcc/config/sparc/xm-linux.h
index 691c7d1..f348105 100644
--- a/gcc/config/sparc/xm-linux.h
+++ b/gcc/config/sparc/xm-linux.h
@@ -1,5 +1,5 @@
/* Configuration for GCC for SPARC running Linux-based GNU systems.
- Copyright (C) 1996, 1997 Free Software Foundation, Inc.
+ Copyright (C) 1996, 1997, 2001 Free Software Foundation, Inc.
Contributed by Eddie C. Dost (ecd@skynet.be)
This file is part of GNU CC.
@@ -20,7 +20,6 @@ the Free Software Foundation, 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. */
#ifndef inhibit_libc
-#include <alloca.h>
#include <stdlib.h>
#include <string.h>
#endif
diff --git a/gcc/config/sparc/xm-pbd.h b/gcc/config/sparc/xm-pbd.h
index a277aad..3dc4b73 100644
--- a/gcc/config/sparc/xm-pbd.h
+++ b/gcc/config/sparc/xm-pbd.h
@@ -3,7 +3,3 @@
#include "sparc/xm-sparc.h"
#define USG
-
-#ifndef __GNUC__
-#define USE_C_ALLOCA
-#endif
diff --git a/gcc/config/sparc/xm-sol2.h b/gcc/config/sparc/xm-sol2.h
deleted file mode 100644
index 5613b08..0000000
--- a/gcc/config/sparc/xm-sol2.h
+++ /dev/null
@@ -1,4 +0,0 @@
-/* If not compiled with GNU C, include the system's <alloca.h> header. */
-#ifndef __GNUC__
-#include <alloca.h>
-#endif
diff --git a/gcc/config/sparc/xm-sparc.h b/gcc/config/sparc/xm-sparc.h
index 6432457..23cafdc 100644
--- a/gcc/config/sparc/xm-sparc.h
+++ b/gcc/config/sparc/xm-sparc.h
@@ -29,8 +29,3 @@ Boston, MA 02111-1307, USA. */
/* Doubles are stored in memory with the high order word first. This
matters when cross-compiling. */
#define HOST_WORDS_BIG_ENDIAN 1
-
-/* If compiled with Sun CC, the use of alloca requires this #include. */
-#ifndef __GNUC__
-#include "alloca.h"
-#endif
diff --git a/gcc/config/vax/xm-vms.h b/gcc/config/vax/xm-vms.h
index d5af89f..bdba628 100644
--- a/gcc/config/vax/xm-vms.h
+++ b/gcc/config/vax/xm-vms.h
@@ -116,7 +116,6 @@ Boston, MA 02111-1307, USA. */
/* Customizations/kludges for building with DEC's VAX C compiler
rather than GCC. */
-#define USE_C_ALLOCA /* using alloca.c */
#define QSORT_WORKAROUND /* do not use VAXCRTL's qsort */
/* use ANSI/SYSV style byte manipulation routines instead of BSD ones */
@@ -172,14 +171,5 @@ Boston, MA 02111-1307, USA. */
#pragma message disable (undefescap)
#endif
-#if defined(USE_C_ALLOCA) && !defined(alloca)
-/* Declare alloca() using similar logic to that in alloca.c. */
-#ifdef __STDC__
-extern void *alloca(unsigned);
-#else
-extern char *alloca();
-#endif
-#endif
-
#define OBJECT_SUFFIX ".obj"
#define EXECUTABLE_SUFFIX ".exe"
diff --git a/gcc/config/we32k/x-we32k b/gcc/config/we32k/x-we32k
deleted file mode 100644
index 3375d42..0000000
--- a/gcc/config/we32k/x-we32k
+++ /dev/null
@@ -1 +0,0 @@
-ALLOCA=alloca.o
diff --git a/gcc/config/x-interix b/gcc/config/x-interix
index afdfe76..30606a3 100644
--- a/gcc/config/x-interix
+++ b/gcc/config/x-interix
@@ -1,11 +1,6 @@
# These are host overrides
# From config dir
-# Interix doesn't yet have alloca; it's better to use the portable C version for
-# bootstrapping. Do this by defining ALLOCA.
-
-ALLOCA = alloca.o
-
# See all the declarations.
FIXPROTO_DEFINES = -D_XOPEN_SOURCE
diff --git a/gcc/config/x-svr4 b/gcc/config/x-svr4
index 9c70543..ce50fe9 100644
--- a/gcc/config/x-svr4
+++ b/gcc/config/x-svr4
@@ -1,9 +1,2 @@
-# Some versions of SVR4 have an alloca in /usr/ucblib/libucb.a, and if we are
-# careful to link that in after libc we can use it, but since newer versions of
-# SVR4 are dropping libucb, it is better to just use the portable C version for
-# bootstrapping. Do this by defining ALLOCA.
-
-ALLOCA = alloca.o
-
# See all the declarations.
FIXPROTO_DEFINES = -D_XOPEN_SOURCE
diff --git a/gcc/config/xm-alloca.h b/gcc/config/xm-alloca.h
deleted file mode 100644
index 3dbdc37..0000000
--- a/gcc/config/xm-alloca.h
+++ /dev/null
@@ -1,4 +0,0 @@
-/* If not compiled with GNU C, use the portable alloca. */
-#ifndef __GNUC__
-#define USE_C_ALLOCA
-#endif
diff --git a/gcc/config/xm-interix.h b/gcc/config/xm-interix.h
index d3b9b27..4ba9a29 100644
--- a/gcc/config/xm-interix.h
+++ b/gcc/config/xm-interix.h
@@ -31,11 +31,6 @@ Boston, MA 02111-1307, USA. */
#endif
#endif
-/* If not compiled with GNU C, use the portable alloca. */
-#ifndef __GNUC__
-#define USE_C_ALLOCA 1
-#endif
-
/* Our strategy for finding global constructors is a bit different, although
not a lot. */
#define DO_GLOBAL_CTORS_BODY \
diff --git a/gcc/config/xm-openbsd.h b/gcc/config/xm-openbsd.h
index b18e7fe..27ddfc5 100644
--- a/gcc/config/xm-openbsd.h
+++ b/gcc/config/xm-openbsd.h
@@ -27,8 +27,3 @@ Boston, MA 02111-1307, USA. */
problems that may occur with gcc's interpretation. */
#undef POSIX
#define POSIX
-
-/* Ensure we get gnu C's defaults. */
-#ifdef __GNUC__
-#define alloca __builtin_alloca
-#endif