This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug c++/37012] numerous stackalign related testsuite failures on i686-apple-darwin9
- From: "howarth at nitro dot med dot uc dot edu" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 4 Aug 2008 00:53:34 -0000
- Subject: [Bug c++/37012] numerous stackalign related testsuite failures on i686-apple-darwin9
- References: <bug-37012-11113@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #14 from howarth at nitro dot med dot uc dot edu 2008-08-04 00:53 -------
The complete make check from the boot strap is still running but the g++
stackalign failures have been reduced down to just...
FAIL: g++.dg/torture/stackalign/eh-alloca-1.C -O3 -g execution test
FAIL: g++.dg/torture/stackalign/eh-vararg-1.C -O3 -g execution test
FAIL: g++.dg/torture/stackalign/eh-vararg-2.C -O3 -g execution test
FAIL: g++.dg/torture/stackalign/throw-1.C -O3 -g execution test
FAIL: g++.dg/torture/stackalign/throw-2.C -O3 -g execution test
FAIL: g++.dg/torture/stackalign/throw-3.C -O3 -g execution test
FAIL: g++.dg/torture/stackalign/eh-alloca-1.C -O3 -g execution test
FAIL: g++.dg/torture/stackalign/eh-vararg-1.C -O3 -g execution test
FAIL: g++.dg/torture/stackalign/eh-vararg-2.C -O3 -g execution test
FAIL: g++.dg/torture/stackalign/throw-1.C -O3 -g execution test
FAIL: g++.dg/torture/stackalign/throw-2.C -O3 -g execution test
FAIL: g++.dg/torture/stackalign/throw-3.C -O3 -g execution test
Without your patch these failed at all optimization levels. I noticed we still
have many
instances of STACK_BOUNDARY / BITS_PER_UNIT in the patched sources in the gcc
subdirectory...
calls.c:#define STACK_BYTES (PREFERRED_STACK_BOUNDARY / BITS_PER_UNIT)
calls.c: & (PREFERRED_STACK_BOUNDARY / BITS_PER_UNIT - 1)));
cfgexpand.c: int align = PREFERRED_STACK_BOUNDARY / BITS_PER_UNIT;
cfgexpand.c: HOST_WIDE_INT align = PREFERRED_STACK_BOUNDARY /
BITS_PER_UNIT;
explow.c: int align = PREFERRED_STACK_BOUNDARY / BITS_PER_UNIT;
explow.c: int align = PREFERRED_STACK_BOUNDARY / BITS_PER_UNIT;
explow.c: % (PREFERRED_STACK_BOUNDARY / BITS_PER_UNIT)));
function.c:#define STACK_BYTES (STACK_BOUNDARY / BITS_PER_UNIT)
function.c: frame_alignment = PREFERRED_STACK_BOUNDARY / BITS_PER_UNIT;
tree-nested.c: size += ((align/BITS_PER_UNIT) - 1) &
-(STACK_BOUNDARY/BITS_PER_UNIT);
Shouldn't these universally be changed to be UNITS_PER_WORD instead?
Jack
ps All the stackalign failures in the gcc section are gone now.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37012