http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45375
--- Comment #147 from Jan Hubicka <hubicka at ucw dot cz> 2012-12-02 09:23:09 UTC --- > > http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45375 > > --- Comment #146 from Markus Trippelsdorf <markus at trippelsdorf dot de> > 2012-12-02 07:36:02 UTC --- > (In reply to comment #145) > > > > > > http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45375 > > > > > > --- Comment #144 from Markus Trippelsdorf <markus at trippelsdorf dot de> > > > 2012-12-01 12:39:30 UTC --- > > > It looks like there is a LTO code-size regression on trunk: > > > (size of libxul.so, build without elfhack): > > > > > > gcc lto/pgo : size: 42204584 | Kraken bench: 2723.9ms +/- 0.9% > > > > About LTO+PGO please be sure that you have the Teresa's fix from this > > Friday in > > your tree. > > Yes, my tree already included this fix and also the fix from bug 55551. Please try to reduce HOT_BB_COUNT_WS_PERMILLE to 990. I also see some regressions on some SPEC benchmarks (such as GCC) and this helps. If it doesn't it would be nice to know what value is needed for comparable size. > > > > gcc : size: 34072808 | Kraken bench: 2804.3ms +/- 1.6% > > > > Is LTO w/o PGO bigger than previous builds? > > Couldn't tell, because it doesn't link: > > /usr/lib/gcc/x86_64-pc-linux-gnu/4.8.0/../../../../x86_64-pc-linux-gnu/bin/ld: > warning: hidden symbol 'pixman_add_triangles' in > /var/tmp/moz-build-dir/toolkit/library/../../gfx/cairo/libpixman/src/pixman-trap.o > is referenced by DSO /usr/lib64/libcairo.so > /usr/lib/gcc/x86_64-pc-linux-gnu/4.8.0/../../../../x86_64-pc-linux-gnu/bin/ld: > error: /tmp/cc0oq4BG.ltrans1.ltrans.o: requires dynamic R_X86_64_PC32 reloc > against '_ZN12SkAnnotationC1ER23SkFlattenableReadBuffer' which may overflow at > runtime; recompile with -fPIC > /tmp/cc0oq4BG.ltrans0.ltrans.o:cc0oq4BG.ltrans0.o:function SharedStub: error: > undefined reference to 'PrepareAndDispatch' > /tmp/cc0oq4BG.ltrans1.ltrans.o:cc0oq4BG.ltrans1.o:function > SkAnnotation::CreateProc(SkFlattenableReadBuffer&) [clone > .local.7828.1055099]: > error: undefined reference to > 'SkAnnotation::SkAnnotation(SkFlattenableReadBuffer&)' > collect2: error: ld returned 1 exit status > > The undefined reference to PrepareAndDispatch is easily fixed by > an __attribute__ ((used)). > Do you have an idea on how to fix the > SkAnnotation::SkAnnotation(SkFlattenableReadBuffer&) issue? Hmm, I remember seeing this one, too. I will check. Honza