https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82364
Richard Biener <rguenth at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Keywords| |needs-bisection Last reconfirmed|2017-10-02 00:00:00 |2018-11-22 --- Comment #5 from Richard Biener <rguenth at gcc dot gnu.org> --- Reconfirmed on x86_64-linux - -m32 -march=i586 is the key: > /usr/bin/time gcc-7 piglit-util-gl-enum-gen.i -S -O -m323.17user 0.03system > 0:03.21elapsed 100%CPU (0avgtext+0avgdata 83788maxresident)k 0inputs+1448outputs (0major+20119minor)pagefaults 0swaps > /usr/bin/time gcc-7 piglit-util-gl-enum-gen.i -S -O -m32 -march=i586 4.85user 0.48system 0:05.34elapsed 99%CPU (0avgtext+0avgdata 1388540maxresident)k 0inputs+1288outputs (0major+389610minor)pagefaults 0swaps > /usr/bin/time gcc-7 piglit-util-gl-enum-gen.i -S -O2 -m32 -march=i586 7.35user 1.89system 0:09.25elapsed 99%CPU (0avgtext+0avgdata 6201368maxresident)k 0inputs+1232outputs (0major+1688989minor)pagefaults 0swaps > /usr/bin/time gcc-7 piglit-util-gl-enum-gen.i -S -O3 -m32 -march=i586 7.51user 1.79system 0:09.30elapsed 99%CPU (0avgtext+0avgdata 6201424maxresident)k 8inputs+1392outputs (0major+1689484minor)pagefaults 0swaps > /usr/bin/time gcc-8 piglit-util-gl-enum-gen.i -S -O3 -m32 -march=i586 2.39user 0.08system 0:02.48elapsed 99%CPU (0avgtext+0avgdata 133140maxresident)k 1632inputs+1552outputs (1major+66249minor)pagefaults 0swaps somehow feels like a memory leak. Well, mem-report shows the following. simplify-rtx.c:403 (simplify_gen_ternary) 15636000: 2.3% 0: 0.0% 0: 0.0% 0: 0.0% 488625 emit-rtl.c:1087 (ensure_regno_capacity) 0: 0.0% 21294000: 8.1% 21299200: 31.7% 9042864: 94.6% 13 rtlanal.c:5564 (canonicalize_condition) 23604360: 3.4% 0: 0.0% 0: 0.0% 0: 0.0% 983515 config/i386/i386.c:22616 (ix86_expand_int_compar 58644264: 8.5% 0: 0.0% 100944: 0.2% 0: 0.0% 2447717 config/i386/i386.c:22617 (ix86_expand_int_compar 58644264: 8.5% 0: 0.0% 100944: 0.2% 0: 0.0% 2447717 config/i386/i386.c:22621 (ix86_expand_int_compar 58644264: 8.5% 0: 0.0% 100944: 0.2% 0: 0.0% 2447717 optabs.c:3863 (prepare_cmp_insn) 58745208: 8.5% 0: 0.0% 0: 0.0% 0: 0.0% 2447717 simplify-rtx.c:419 (simplify_gen_relational) 58745304: 8.5% 0: 0.0% 0: 0.0% 0: 0.0% 2447721 rtl.c:319 (copy_rtx) 64517840: 9.3% 0: 0.0% 24: 0.0% 0: 0.0% 1466370 emit-rtl.c:436 (gen_raw_REG) 58772328: 8.5% 24: 0.0% 23521224: 35.0% 0: 0.0% 3428899 emit-rtl.c:3864 (make_insn_raw) 218936256: 31.6% 0: 0.0% 497152: 0.7% 0: 0.0% 3428647 would be interesting to see what fixed it on the GCC 8 branch. Generated code seems to be similar.