This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [tree-ssa] SSA->normal shuffle
- From: Andrew MacLeod <amacleod at redhat dot com>
- To: Jeff Law <law at redhat dot com>
- Cc: gcc-patches <gcc-patches at gcc dot gnu dot org>
- Date: 21 Nov 2003 16:22:44 -0500
- Subject: Re: [tree-ssa] SSA->normal shuffle
- References: <200311212112.hALLC5Sn001537@speedy.slc.redhat.com>
On Fri, 2003-11-21 at 16:12, law@redhat.com wrote:
> In message <1069425614.11003.893.camel@p4>, Andrew MacLeod writes:
> >On Fri, 2003-11-21 at 09:35, Andrew MacLeod wrote:
> >
> >> Anwyay, here's the patch. It bootstrapped on x86 and caused no
> >> differences in testruns. Im checking it in momentarily.
> >
> >btw, in case no one has noticed, a make check-gcc on a stage 1 compiler
> >has one less failure than a make check on a boostrapped stage3 compiler.
> >The bootstrapped compiler fails:
> >
> >< FAIL: gcc.dg/20020425-1.c (test for excess errors)
> >---
> >> PASS: gcc.dg/20020425-1.c (test for excess errors)
> >
> >with a segmentation fault I beleive.
> >
> >I dont know how long this has been going on, but I think its been a very
> >long time. I seem to vaguely recall tripping over it in passing a few
> >months ago, but promptly forgot about it.
> Well, this one is dependent on things like how much memory/swap space you
> have. So I doubt it's directly related to your change:
>
Oh, I assumed it wasn't. It does the same thing without my change. Just
thought I would mention it :-)
> /* PR c/2161: parser stack overflow. */
> /* { dg-do compile } */
>
> #define ONE else if (0) { }
> #define TEN ONE ONE ONE ONE ONE ONE ONE ONE ONE ONE
> #define HUN TEN TEN TEN TEN TEN TEN TEN TEN TEN TEN
> #define THOU HUN HUN HUN HUN HUN HUN HUN HUN HUN HUN
>
> void foo()
> {
> if (0) { }
> /* 11,000 else if's. */
> THOU THOU THOU THOU THOU THOU THOU THOU THOU THOU THOU
> }
>
yuck.
Its probably because our bootstrapped compiler is using more stack space
or something on each recursive function call. Or something like that :-)
Andrew