https://gcc.gnu.org/bugzilla/show_bug.cgi?id=119387
Patrick Palka <ppalka at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |mpolacek at gcc dot gnu.org
Summary|[14/15 Regression] |[14/15 Regression]
|Regression in performance |Regression in performance
|by a factor of 6 when |by a factor of 6 when
|building with debugging |building with debugging
|symbols |symbols since r14-5979
Keywords| |memory-hog
--- Comment #6 from Patrick Palka <ppalka at gcc dot gnu.org> ---
Strangely, it seems to have started with r14-5979 "c++: P2280R4, Using unknown
refs in constant expr [PR106650]".
GCC trunk -ftime-report (with -O2 -g):
callgraph construction : 257.75 ( 66%) 444M ( 5%)
template instantiation : 18.99 ( 5%) 2082M ( 22%)
constant expression evaluation : 35.33 ( 9%) 5799M ( 61%)
TOTAL : 391.71 9484M
GCC trunk -ftime-report (with -O2 -g), r14-5979 reverted:
callgraph construction : 11.57 ( 23%) 444M ( 12%)
template instantiation : 18.66 ( 38%) 2082M ( 54%)
constant expression evaluation : 1.59 ( 3%) 147M ( 4%)
TOTAL : 49.53 3839M
With just -O2 -fsyntax-only, there's also >3x increase in peak memory usage,
2.2GB vs 6.8GB.