On 08/02/17 13:11 +0100, Marek Skalický wrote:
Marek Polacek píše v Út 07. 02. 2017 v 22:32 +0100:
> It's been a tradition now that every January we rebuild all the
> Fedora packages
> with the upcoming GCC, to reveal as many bugs as possible before we
> release
> the new version. This year is no different.
>
> There were 18811 packages overall (last year we had 17741 packages).
> 17263 built fine with the new GCC (mostly gcc-7.0.0-0.1.fc26.src.rpm
> but I also
> used a newer version from rawhide). 1350 failed with both GCC 6 and
> GCC 7,
> so I ignored these. This left us with ~198 packages that had to be
> analyzed,
> a number which, fortunately, was smaller than last year, when we'd
> had 577 FTBFS to
> investigate.
MongoDB is not failing in your rebuild. However latest minor upgrade
(v3.4.2) with gcc 7 is failing.
I've figured out, that is optimization issue (with -O0 it is fine, with
-01 it is failing) and it is ONLY ON ppc64le (other architectures are
fine).
I know which file is cause this issue, but I can't figure out with
which optimization. I get what changes between O0 and O1 in output of
'gcc -O0/1 -Q --help=optimizers' and compiled with -O0 and flags of
individual optimizations (which are added by O1), but failure does not
appear.
Because that doesn't work, see
https://gcc.gnu.org/wiki/FAQ#optimization-options
If you use -O0 then there is ***no*** optimization. At all. None. The
optimizers aren't used, so it doesn't matter which optimizers you
enable with -fxxx flags, none of them gets used.
If you want to narrow down which flag causes the problem you need to
enable optimization (so at least -O1 or -Os or -Og) and then disable
individual optimizations.
i.e. instead of starting with -O0 and adding -faaa and -fbbb, start
with -O1 and use -fno-aaa and -fno-bbb.
What else differs in -O1? How should I debug it?
https://gcc.gnu.org/wiki/FAQ#misoptimization