On Wed, Oct 29, 2014 at 9:24 AM, Richard Biener <richard.guent...@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