aengelke wrote:

Thanks for checking GCC, I rarely use it for building LLVM. Reducing the number 
of headers seems to be important for GCC, there's certainly some room for 
improvements. Some observations from quick testing and profiling of GCC:

- PCH are much larger than with Clang. Even after reducing the size of 
Support/pch.h, the Support PCH is still 132M (Clang: 24M).
- As a consequence, max-rss also increases strongly (e.g., from 397M to 751M).
- cc1plus system time increases strongly; on a random file, perf indicates >20% 
time spent in handling page faults (2x more than before), probably due to the 
large PCH.
- Parsing time goes down substantially, but, according to perf on cc1plus, most 
of the improvement is negated by instantiate_pending_templates -> 
instantiate_decl, which consumes much more time in the PCH build (on a random 
file, this increases from 5% to 25% with almost identical total compile time).
- -ftime-report is not useful for profiling, it strongly affects execution 
times. I don't know how to get more accurate information on what exactly causes 
GCC to slow down that much.

The warnings seem to only come from executables, most files in libraries are 
not afffected.

https://github.com/llvm/llvm-project/pull/173868
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to