This is the mail archive of the
mailing list for the GCC project.
Re: Can't bootstrap gcc cvs HEAD 20031008 sparc-linux: gcc/function.c:5525: parse error before `int'
- From: Christian Joensson <christian at j-son dot org>
- To: Carlo Wood <carlo at alinoe dot com>
- Cc: geoffk at apple dot com, gcc <gcc at gcc dot gnu dot org>
- Date: Wed, 8 Oct 2003 15:53:10 +0200
- Subject: Re: Can't bootstrap gcc cvs HEAD 20031008 sparc-linux: gcc/function.c:5525: parse error before `int'
- References: <20031008150722.A13656@fw.j-son.org> <20031008133120.GA25364@alinoe.com>
On Wed, Oct 08, 2003 at 03:31:20PM +0200, Carlo Wood wrote:
> I wonder what SPARC_STACK_BOUNDARY_HACK is defined to.
a simple `find . -name '*' | xargs grep -l SPARC_STACK_BOUNDARY_HACK'
in the gcc src tree gives:
and in the gcc/ChangeLog we see that it's been tampered with recently,
http://gcc.gnu.org/ml/gcc-cvs/2003-10/msg00257.html, by geoffk.
Reading in the gcc/config/sparc/sparc.h we see that there is a problem
for SPARC32 systems...
/* Boundary (in *bits*) on which stack pointer should be aligned. */
/* FIXME, this is wrong when TARGET_ARCH64 and TARGET_STACK_BIAS, because
then sp+2047 is 128-bit aligned so sp is really only byte-aligned. */
#define STACK_BOUNDARY (TARGET_ARCH64 ? 128 : 64)
/* Temporary hack until the FIXME above is fixed. This macro is used
only in pad_to_arg_alignment in function.c; see the comment there
for details about what it does. */
#define SPARC_STACK_BOUNDARY_HACK (TARGET_ARCH64 && TARGET_STACK_BIAS)