https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63622
--- Comment #7 from Dominique d'Humieres <dominiq at lps dot ens.fr> --- > That looks like duplicate of PR63580. I hope the PR will be fixed today. It looks like: I have bootstrapped r216914 with the patches in comment 3 and in PR3580 comment 4. However I have several regressions in the test suite: === acats tests === FAIL: c760002 FAIL: c761002 FAIL: cc1224a FAIL: cc3007a FAIL: cc3007b FAIL: g++.dg/ipa/ipa-icf-4.C -std=gnu++11 scan-ipa-dump icf "Varpool alias has been created" FAIL: g++.dg/ipa/ipa-icf-4.C -std=gnu++1y scan-ipa-dump icf "Varpool alias has been created" FAIL: g++.dg/ipa/ipa-icf-4.C -std=gnu++98 scan-ipa-dump icf "Varpool alias has been created" FAIL: gcc.dg/torture/builtin-noret-1.c -O2 (internal compiler error) FAIL: gcc.dg/torture/builtin-noret-1.c -O2 (test for excess errors) FAIL: gcc.dg/torture/builtin-noret-1.c -O2 -flto (internal compiler error) FAIL: gcc.dg/torture/builtin-noret-1.c -O2 -flto (test for excess errors) FAIL: gcc.dg/torture/builtin-noret-1.c -O2 -flto -flto-partition=none (internal compiler error) FAIL: gcc.dg/torture/builtin-noret-1.c -O2 -flto -flto-partition=none (test for excess errors) FAIL: gcc.dg/torture/builtin-noret-1.c -O3 -fomit-frame-pointer (internal compiler error) FAIL: gcc.dg/torture/builtin-noret-1.c -O3 -fomit-frame-pointer (test for excess errors) FAIL: gcc.dg/torture/builtin-noret-1.c -O3 -g (internal compiler error) FAIL: gcc.dg/torture/builtin-noret-1.c -O3 -g (test for excess errors) FAIL: gcc.dg/torture/builtin-noret-1.c -Os (internal compiler error) FAIL: gcc.dg/torture/builtin-noret-1.c -Os (test for excess errors) FAIL: gcc.dg/torture/builtin-noret-2.c -O2 (internal compiler error) FAIL: gcc.dg/torture/builtin-noret-2.c -O2 (test for excess errors) FAIL: gcc.dg/torture/builtin-noret-2.c -O2 -flto (internal compiler error) FAIL: gcc.dg/torture/builtin-noret-2.c -O2 -flto (test for excess errors) FAIL: gcc.dg/torture/builtin-noret-2.c -O2 -flto -flto-partition=none (internal compiler error) FAIL: gcc.dg/torture/builtin-noret-2.c -O2 -flto -flto-partition=none (test for excess errors) FAIL: gcc.dg/torture/builtin-noret-2.c -O3 -fomit-frame-pointer (internal compiler error) FAIL: gcc.dg/torture/builtin-noret-2.c -O3 -fomit-frame-pointer (test for excess errors) FAIL: gcc.dg/torture/builtin-noret-2.c -O3 -g (internal compiler error) FAIL: gcc.dg/torture/builtin-noret-2.c -O3 -g (test for excess errors) FAIL: gcc.dg/torture/builtin-noret-2.c -Os (internal compiler error) FAIL: gcc.dg/torture/builtin-noret-2.c -Os (test for excess errors) -m32 only FAIL: gfortran.dg/assumed_rank_10.f90 -O3 -fomit-frame-pointer -funroll-all-loops -finline-functions execution test FAIL: gfortran.dg/assumed_rank_10.f90 -O3 -fomit-frame-pointer -funroll-loops execution test FAIL: gfortran.dg/assumed_rank_8.f90 -O2 execution test FAIL: gfortran.dg/assumed_rank_8.f90 -O3 -fomit-frame-pointer execution test FAIL: gfortran.dg/assumed_rank_8.f90 -O3 -fomit-frame-pointer -funroll-all-loops -finline-functions execution test FAIL: gfortran.dg/assumed_rank_8.f90 -O3 -fomit-frame-pointer -funroll-loops execution test FAIL: gfortran.dg/assumed_rank_8.f90 -O3 -g execution test FAIL: gfortran.dg/assumed_rank_8.f90 -Os execution test FAIL: gfortran.dg/assumed_rank_9.f90 -O2 execution test FAIL: gfortran.dg/assumed_rank_9.f90 -O3 -fomit-frame-pointer execution test FAIL: gfortran.dg/assumed_rank_9.f90 -O3 -fomit-frame-pointer -funroll-all-loops -finline-functions execution test FAIL: gfortran.dg/assumed_rank_9.f90 -O3 -fomit-frame-pointer -funroll-loops execution test FAIL: gfortran.dg/assumed_rank_9.f90 -O3 -g execution test FAIL: gfortran.dg/assumed_rank_9.f90 -Os execution test All the failures I have tested disappear if I use -fno-ipa-icf.