genmatch infinite loop during bootstrap on AIX

Richard Biener rguenther@suse.de
Mon Oct 27 20:13:00 GMT 2014


On October 27, 2014 8:13:09 PM CET, David Edelsohn <dje.gcc@gmail.com> wrote:
>On Mon, Oct 27, 2014 at 2:37 AM, Richard Biener
><richard.guenther@gmail.com> wrote:
>> On October 27, 2014 1:49:54 AM CET, David Edelsohn
><dje.gcc@gmail.com> wrote:
>>>Richi,
>>>
>>>Does genmatch rely on static constructors or implicitly rely on the
>>>order of static constructors? Sometimes those cause problems on AIX.
>>
>> No, it doesn't.
>>
>>>Bootstrap on AIX succeeds prior to r216631, e.g., r216624.  It works
>>>after your commit r216619 to correct Makefile.in, or prior to that by
>>>manually editing Makefile.in to add LIBICONV and LIBINTL.
>>
>> OK, so this would mean that r216631 causes a miscompile for you.
>Though that does not match up with you seeing this happening during
>stage1...
>>
>> Bah.
>>
>> The place where it is looping is using std::map <std::string,
>unsigned>.
>>
>> Does -static-libstdc++ work for you host compilers?
>>
>> Can you try emptying gcc/match.pd for a non-working rev.?
>
>I am trying a bootstrap with an empty match.pd as a short-term
>work-around to allow me to continue bootstrapping and testing GCC
>trunk on AIX while we debug this.

Not sure if you will be very successful with this :/  I've requested access to the compile-farm so I cab reproduce it. The ppc-linux bootstrap went fine for me.

The stage1 issue must be either host-compiler related or a build machinery issue. I suspect the stage2 issue to be a miscompile of the stage1 libstdc++ or of stage2 genmatch.

Richard.

>- David




More information about the Gcc-patches mailing list