https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80960
--- Comment #14 from rguenther at suse dot de <rguenther at suse dot de> --- On Sun, 31 Mar 2019, tkoenig at gcc dot gnu.org wrote: > https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80960 > > --- Comment #13 from Thomas Koenig <tkoenig at gcc dot gnu.org> --- > With -O2, the combiner takes up quite a lot of time: > > $ time gfortran -ftime-report -g0 -O2 -fdefault-integer-8 -c fe_objective.f90 > > alias stmt walking : 15.75 ( 4%) 0.11 ( 5%) 15.89 ( > 4%) > 2 kB ( 0%) > dead store elim2 : 10.49 ( 2%) 0.33 ( 16%) 10.82 ( > 3%) > 1578727 kB ( 35%) > combiner : 346.20 ( 81%) 0.89 ( 44%) 347.17 ( > 81%) > 2701135 kB ( 60%) > TOTAL : 428.68 2.01 430.83 > > 4504484 kB > > With -O1, this now has as biggest consumers of cycles > > alias stmt walking : 11.80 ( 31%) 0.04 ( 13%) 11.78 ( > 31%) > 2 kB ( 0%) > integrated RA : 5.61 ( 15%) 0.06 ( 20%) 5.67 ( > 15%) > 34896 kB ( 10%) > LRA hard reg assignment : 4.69 ( 12%) 0.00 ( 0%) 4.69 ( > 12%) > 0 kB ( 0%) > TOTAL : 37.68 0.30 38.00 > > 364905 kB > > > which does not look too bad (and memory consumption has remained constant). > > Note that this is with checking enabled. You can mitigate enabled checking somewhat with -fno-checking.