> > You mean this one:
> >
> > subl $RESERVED_C_STACK_BYTES + 4*SIZEOF_LONG,%esp
> >
> > subracting from %esp caused the program to exit? Surely not!
>
> Specifically, anything after the subl <large number>,%esp
> did not happen. Perhaps causing an uncaught page fault?
> (I dont think that the subl immediately forces the exit,
> I presume though, that any attempt to reference through
> %esp is causing the problem)
Aha! *slaps forehead* It's just dawned on me, and Julian & I verified that
the problem is indeed this:
RESERVED_C_STACK_BYTES has recently increased to about 8k (2 pages), and
while this works on sane^H^H^H^H Unix-like operating systems apparently the
NT page faulter only lets you grow the stack a page at a time. And alloca()
probably writes to each page in turn to get around the restriction.
Ok, I've now committed a fix for this. Thanks for tracking it down.
Cheers,
Simon