https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98863
--- Comment #43 from Richard Biener <rguenth at gcc dot gnu.org> --- So module_configure.fppized.f90 is one of the interesting ones (IIRC lot of small init loops), module_first_rk_step_part1.fppized.f90 is the one with most obvious DF and fwprop participation, that one also has complete unrolling. /home/rguenther/install/gcc-11.0/usr/local/bin/gfortran -c -o start_em.fppized.o -I. -I./netcdf/include -I./inc -Ofast -march=znver2 -ftime-report -std=legacy -fconvert=big-endian -fno-openmp -g0 start_em.fppized.f90 df reaching defs : 0.96 ( 3%) 0.02 ( 3%) 0.94 ( 3%) 0 ( 0%) df live regs : 1.15 ( 4%) 0.00 ( 0%) 1.13 ( 4%) 0 ( 0%) df live&initialized regs : 1.08 ( 4%) 0.01 ( 2%) 1.18 ( 4%) 0 ( 0%) tree forward propagate : 0.09 ( 0%) 0.01 ( 2%) 0.08 ( 0%) 2217k ( 0%) complete unrolling : 1.00 ( 3%) 0.02 ( 3%) 1.01 ( 3%) 56M ( 12%) forward prop : 0.93 ( 3%) 0.18 ( 29%) 1.10 ( 4%) 388k ( 0%) TOTAL : 30.60 0.62 31.23 492M /home/rguenther/install/gcc-11.0/usr/local/bin/gfortran -c -o module_advect_em.fppized.o -I. -I./netcdf/include -I./inc -Ofast -march=znver2 -ftime-report -std=legacy -fconvert=big-endian -fno-openmp -g0 module_advect_em.fppized.f90 df reaching defs : 0.28 ( 1%) 0.00 ( 0%) 0.30 ( 1%) 0 ( 0%) df live regs : 1.45 ( 5%) 0.00 ( 0%) 1.35 ( 4%) 0 ( 0%) df live&initialized regs : 0.54 ( 2%) 0.00 ( 0%) 0.64 ( 2%) 0 ( 0%) tree forward propagate : 0.08 ( 0%) 0.00 ( 0%) 0.13 ( 0%) 2824k ( 0%) complete unrolling : 0.99 ( 3%) 0.03 ( 9%) 1.05 ( 3%) 78M ( 8%) forward prop : 0.24 ( 1%) 0.00 ( 0%) 0.20 ( 1%) 1270k ( 0%) TOTAL : 31.59 0.34 31.96 974M /home/rguenther/install/gcc-11.0/usr/local/bin/gfortran -c -o module_first_rk_step_part1.fppized.o -I. -I./netcdf/include -I./inc -Ofast -march=znver2 -ftime-report -std=legacy -fconvert=big-endian -fno-openmp -g0 module_first_rk_step_part1.fppized.f90 df reaching defs : 2.69 ( 4%) 0.04 ( 3%) 2.81 ( 5%) 0 ( 0%) df live regs : 1.76 ( 3%) 0.01 ( 1%) 1.71 ( 3%) 0 ( 0%) df live&initialized regs : 1.57 ( 3%) 0.01 ( 1%) 1.58 ( 3%) 0 ( 0%) tree forward propagate : 0.20 ( 0%) 0.02 ( 2%) 0.19 ( 0%) 4095k ( 0%) complete unrolling : 3.25 ( 5%) 0.04 ( 3%) 3.27 ( 5%) 94M ( 11%) forward prop : 2.79 ( 5%) 0.38 ( 30%) 3.16 ( 5%) 765k ( 0%) TOTAL : 60.41 1.27 61.72 873M /home/rguenther/install/gcc-11.0/usr/local/bin/gfortran -c -o solve_em.fppized.o -I. -I./netcdf/include -I./inc -Ofast -march=znver2 -ftime-report -std=legacy -fconvert=big-endian -fno-openmp -g0 solve_em.fppized.f90 df reaching defs : 1.57 ( 5%) 0.01 ( 2%) 1.50 ( 5%) 0 ( 0%) df live regs : 2.22 ( 7%) 0.01 ( 2%) 2.24 ( 7%) 0 ( 0%) df live&initialized regs : 2.83 ( 9%) 0.01 ( 2%) 2.81 ( 9%) 0 ( 0%) tree forward propagate : 0.15 ( 0%) 0.00 ( 0%) 0.15 ( 0%) 2644k ( 0%) complete unrolling : 1.11 ( 4%) 0.02 ( 4%) 1.12 ( 4%) 86M ( 14%) forward prop : 0.75 ( 2%) 0.08 ( 14%) 0.84 ( 3%) 495k ( 0%) TOTAL : 31.21 0.57 31.80 629M In the end LTO makes the case unique still ... And then there's of course one other frequently reported bug: /home/rguenther/install/gcc-11.0/usr/local/bin/gfortran -c -o module_alloc_space_2.fppized.o -I. -I./netcdf/include -I./inc -Ofast -march=znver2 -ftime-report -std=legacy -fconvert=big-endian -fno-openmp -g0 module_alloc_space_2.fppized.f90 load CSE after reload : 10.18 ( 37%) 0.00 ( 0%) 10.19 ( 37%) 14k ( 0%) TOTAL : 27.28 0.33 27.63 333M