This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [WWWDOCS] Document IPA/LTO/FDO/i386 changes in GCC-4.9


On Mon, 18 Nov 2013, Jan Hubicka wrote:
> there was many changes in this area.  The following are ones I can think 
> of. Please fell free to suggest more changes. We probably should mention 
> Teresa's splitting work once it is complete and new micro-architectures 
> targetd by x86 backend.

Yes, those definitely are good additional changes.

Thanks for taking the time to write these up (apart from the time to
actually hack much of it). :-)

> Index: changes.html
> ===================================================================
> +      <li>Type merging was rewritten. New implementation is significantly faster
> +	  and use less memory. 

"The new implementation"

"uses less memory"

> +      <li>Better partitioning algorithm resulting in less streaming during
> +	  link-time.</li>

"link time"

> +      <li>Early removal of virtual methods reduce size of object files and
> +	  improve link-time memory usage and compile time.</li>

"reduces the size of object files and improves"

> +      <li>Functions are no longer pointlessly renamed.</li>

Readers may struggle a bit with this.  What does it refer to?

> +      <li>Function bodies are now loaded on-demand and released early improving
> +	  overall memory usage at link-time.</li>

"link time"

> +    </ul>
> +    Memory usage of Firefox build with debug enabled was reduced from 15GB to
> +    3.5GB. Link time from 1700 seconds to 350 seconds.

"Memory usage building Firefox" 

Perhaps specify the version number?

If you want to write the second sentence without a verb, I suggest

"; link time..."

> +      <li>New type inheritance analysis module improving devirtualization.
> +	  Devirtualization now take into account anonymous name-spaces and the
> +	  C++11 <code>final</code> keyword.</li>

"takes into account"

> +      <li>Calls that was speculatively made direct are turned back to indirect
> +	  when doing so does not bring any noticeable benefits.</li>

"was" -> "were"

Also this sentence is a bit confusing.  It can be read that turning back
the calls does not bring noticable benefits.

> +      <li>Local aliases are introduced for symbols that are known to be
> +	  semantically equivalent across shared libraries improving dynamic
> +	  linking times.</li>

", improving"

> +      <li>New time profiling determine typical order in which functions are executed.</li>

"determines", and can you break the long line?

> +      <li>New function reordering pass (controlled by
> +	  <code>-freorder-functions</code>) significantly reduces
> +	  startup time of large applications.  Until binutils support is
> + 	  completed, it is effective only with link time optimization.</li>

"A new function reordering..." 

"link-time optimization"

> +    <li>Better inlining of <code>memcpy</code> and <code>memset</code> 
> +	that is avare of value ranges and produce shorter alignment prologues.

"aware"

"produces"

> +      for portions of program optimized for size.</li>

"of programs"

Cheers,
Gerald


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]