This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: genmatch infinite loop during bootstrap on AIX


On Wed, Oct 29, 2014 at 9:24 AM, Richard Biener
<richard.guenther@gmail.com> wrote:

> Because only genmatch calls functions from libstdc++.  Btw, why
> would genmatch miscompile an empty function or the call to it?

I tried bootstrapping with libstdc++ built without the AIX ld "-G"
flag and that is succeeding.

"-G" produces a shared object for use with SVR4-style runtime linking,
so this version of libstdc++ no longer allows runtime function
interposition, e.g., operator new, although it is not used frequently.
Something about the GCC-produced tail calls is interacting badly with
that feature.

Note that this makes GCC bootstrap on AIX very fragile at the moment
because it depends on how libstdc++ was built in previous releases.  I
can bootstrap with GCC 4.6.3 and 4.8.1 but not with 4.7.3, 4.8.0, nor
4.9.0.  A problematic libstdc++ from earlier releases causes genmatch
to loop in stage 1.

Thanks, David


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]