Hi Honza,
On 21/01/15 21:58, Jan Hubicka wrote:
Hi,
these two rather noticeable features are not mentioned.
Honza
Index: changes.html
===================================================================
RCS file: /cvs/gcc/wwwdocs/htdocs/gcc-5/changes.html,v
retrieving revision 1.69
diff -u -r1.69 changes.html
--- changes.html 20 Jan 2015 16:37:54 -0000 1.69
+++ changes.html 21 Jan 2015 21:57:30 -0000
@@ -35,7 +35,15 @@
<ul>
<li>Inter-procedural optimization improvements:
<ul>
- <li>The devirtualization pass was significantly improved by adding
+ <li>New identical code folding pass (controled via
<code>-fipa-icf</code>).
+ Compared to the identical code folding performed by Gold linker this
+ pass does not require function sections. It also performs merging
+ pre-inline so inter-procedural optimizations are aware of the
+ code re-use. On the other hand not all unifications performed
+ by linker are doable by GCC pass; the GCC pass must honnor
s/honnor/honor/
+ aliasing information. During link-time optimization of Firefox,
+ the pass unify about 29000 functions that is 10% overall</li>
I think it should be "unifies about 29000..."
+ <li>Devirtualization pass was significantly improved by adding
better support for speculative devirtualization and dynamic type
detection. About 50% of virtual calls in Firefox are speculatively
devirtualized during link-time optimization.</li>
@@ -72,6 +80,11 @@
</ul></li>
<li>Feedback directed optimization improvements:
<ul>
+ <li>New auto-FDO mode that use profiles collected by low overhead
s/use/uses/
Cheers,
Kyrill
+ profiling tools (perf) instead of more expensive program
+ instrumentation (via <code>-fprofile-generate</code>). SPEC2006
+ benchmarks improve by 4.7% with auto-FDO and by 7.3% with
+ traditional feedback directed optimization.
<li>Profile precision was improved in presence of C++ inline and extern
inline functions.</li>
<li>New <code>gcov-tool</code> to manipulate profiles.</li>