----- Original Message -----
Sent: Monday, October 03, 2005 3:02 AM
Subject: Re: problems with writing a new pass
In file included from /usr/include/stdio.h:831,
from ../../gcc/gcc/tsystem.h:90,
from ../../gcc/gcc/crtstuff.c:62:
/usr/include/bits/stdio.h: In function 'vprintf':
/usr/include/bits/stdio.h:37: internal compiler error:
Segmentation fault
You are getting an error *compiling* vprintf, not *using* it.
Paolo
Thanks for the remind. After debugging for a while, I think it is
an error caused by using *and* compiling: I put my pass as the
first pass using NEXT_PASS in passes.c and use FOR_EACH_BB and
etc, which are constructed after the pass of building CFGs. Then,
during stage2 and 3, the new compiler will incorrectly *use*
uninitialized data structures to *compile* vprintf and cause
segfault.
Then my question is: can the pass manager automatically rearrange
the order of passes based on required and provided properties of
all passes? It can help avoid certain misuses, like the one I
made.
Skyhover