https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80960
--- Comment #9 from Richard Biener <rguenth at gcc dot gnu.org> --- With --param max-combine-insns=2 compile-time and memory use at -O1 shrinks considerably for me (still too high IMHO). -O1 --param max-combine-insns=2: 70.48user 0.63system 1:11.12elapsed 99%CPU (0avgtext+0avgdata 2385992maxresident)k -O1: 167.06user 0.96system 2:48.04elapsed 99%CPU (0avgtext+0avgdata 3401780maxresident)k RTL expansion shows the biggest BB having ~70000 instructions. with limiting to 2 insn combinations -ftime-report shows alias stmt walking : 10.89 (16%) usr 0.10 (12%) sys 10.97 (15%) wall 3 kB ( 0%) ggc dead store elim2 : 9.69 (14%) usr 0.10 (12%) sys 9.77 (14%) wall 1828350 kB (57%) ggc combiner : 14.93 (21%) usr 0.37 (43%) sys 15.29 (22%) wall 1155538 kB (36%) ggc integrated RA : 8.84 (13%) usr 0.03 ( 3%) sys 8.87 (12%) wall 34845 kB ( 1%) ggc LRA hard reg assignment : 14.80 (21%) usr 0.07 ( 8%) sys 14.91 (21%) wall 0 kB ( 0%) ggc TOTAL : 70.16 0.86 71.04 3181288 kB so it's still doing sth (as expected).