From a35c9ca44f8ee1bb26261d321c2dc1064b942ce7421d51f2dd33eb66d30ab25f Mon Sep 17 00:00:00 2001 From: Richard Biener Date: Wed, 9 Oct 2024 13:06:53 +0000 Subject: [PATCH] - Add gcc14-pr116629.patch to fix ICE with LTO building openvino on aarch64 [boo#1230262] OBS-URL: https://build.opensuse.org/package/show/devel:gcc/gcc14?expand=0&rev=47 --- cross-aarch64-gcc14-bootstrap.spec | 3 +- cross-aarch64-gcc14.spec | 3 +- cross-amdgcn-gcc14.spec | 3 +- cross-arm-gcc14.spec | 3 +- cross-arm-none-gcc14-bootstrap.spec | 3 +- cross-arm-none-gcc14.spec | 3 +- cross-avr-gcc14-bootstrap.spec | 3 +- cross-avr-gcc14.spec | 3 +- cross-bpf-gcc14.spec | 3 +- cross-hppa-gcc14-bootstrap.spec | 3 +- cross-hppa-gcc14.spec | 3 +- cross-m68k-gcc14.spec | 3 +- cross-mips-gcc14.spec | 3 +- cross-nvptx-gcc14.spec | 3 +- cross-ppc64-gcc14.spec | 3 +- cross-ppc64le-gcc14-bootstrap.spec | 3 +- cross-ppc64le-gcc14.spec | 3 +- cross-pru-gcc14-bootstrap.spec | 3 +- cross-pru-gcc14.spec | 3 +- cross-riscv64-elf-gcc14-bootstrap.spec | 3 +- cross-riscv64-elf-gcc14.spec | 3 +- cross-riscv64-gcc14-bootstrap.spec | 3 +- cross-riscv64-gcc14.spec | 3 +- cross-rx-gcc14-bootstrap.spec | 3 +- cross-rx-gcc14.spec | 3 +- cross-s390x-gcc14-bootstrap.spec | 3 +- cross-s390x-gcc14.spec | 3 +- cross-sparc-gcc14.spec | 3 +- cross-sparc64-gcc14.spec | 3 +- cross-x86_64-gcc14.spec | 3 +- gcc.spec.in | 3 +- gcc14-pr116629.patch | 74 ++++++++++++++++++++++++++ gcc14-testresults.spec | 3 +- gcc14.changes | 4 +- gcc14.spec | 3 +- 35 files changed, 143 insertions(+), 34 deletions(-) create mode 100644 gcc14-pr116629.patch diff --git a/cross-aarch64-gcc14-bootstrap.spec b/cross-aarch64-gcc14-bootstrap.spec index 0ca8370..a099bbc 100644 --- a/cross-aarch64-gcc14-bootstrap.spec +++ b/cross-aarch64-gcc14-bootstrap.spec @@ -123,6 +123,7 @@ Patch16: gcc9-reproducible-builds.patch Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch Patch19: gcc11-gdwarf-4-default.patch Patch20: gcc13-pr101523.patch +Patch21: gcc14-pr116629.patch # A set of patches from the RH srpm Patch51: gcc41-ppc32-retaddr.patch # Some patches taken from Debian @@ -320,7 +321,7 @@ ln -s newlib-4.4.0.20231231/newlib . %if %{suse_version} < 1550 %patch -p1 -P 19 %endif -%patch -p1 -P 20 +%patch -p1 -P 20 -P 21 %patch -P 51 %patch -p1 -P 60 -P 61 diff --git a/cross-aarch64-gcc14.spec b/cross-aarch64-gcc14.spec index 4b7ff56..58f8964 100644 --- a/cross-aarch64-gcc14.spec +++ b/cross-aarch64-gcc14.spec @@ -123,6 +123,7 @@ Patch16: gcc9-reproducible-builds.patch Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch Patch19: gcc11-gdwarf-4-default.patch Patch20: gcc13-pr101523.patch +Patch21: gcc14-pr116629.patch # A set of patches from the RH srpm Patch51: gcc41-ppc32-retaddr.patch # Some patches taken from Debian @@ -320,7 +321,7 @@ ln -s newlib-4.4.0.20231231/newlib . %if %{suse_version} < 1550 %patch -p1 -P 19 %endif -%patch -p1 -P 20 +%patch -p1 -P 20 -P 21 %patch -P 51 %patch -p1 -P 60 -P 61 diff --git a/cross-amdgcn-gcc14.spec b/cross-amdgcn-gcc14.spec index f086849..66c8ce1 100644 --- a/cross-amdgcn-gcc14.spec +++ b/cross-amdgcn-gcc14.spec @@ -123,6 +123,7 @@ Patch16: gcc9-reproducible-builds.patch Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch Patch19: gcc11-gdwarf-4-default.patch Patch20: gcc13-pr101523.patch +Patch21: gcc14-pr116629.patch # A set of patches from the RH srpm Patch51: gcc41-ppc32-retaddr.patch # Some patches taken from Debian @@ -320,7 +321,7 @@ ln -s newlib-4.4.0.20231231/newlib . %if %{suse_version} < 1550 %patch -p1 -P 19 %endif -%patch -p1 -P 20 +%patch -p1 -P 20 -P 21 %patch -P 51 %patch -p1 -P 60 -P 61 diff --git a/cross-arm-gcc14.spec b/cross-arm-gcc14.spec index 559e62e..066fc82 100644 --- a/cross-arm-gcc14.spec +++ b/cross-arm-gcc14.spec @@ -123,6 +123,7 @@ Patch16: gcc9-reproducible-builds.patch Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch Patch19: gcc11-gdwarf-4-default.patch Patch20: gcc13-pr101523.patch +Patch21: gcc14-pr116629.patch # A set of patches from the RH srpm Patch51: gcc41-ppc32-retaddr.patch # Some patches taken from Debian @@ -320,7 +321,7 @@ ln -s newlib-4.4.0.20231231/newlib . %if %{suse_version} < 1550 %patch -p1 -P 19 %endif -%patch -p1 -P 20 +%patch -p1 -P 20 -P 21 %patch -P 51 %patch -p1 -P 60 -P 61 diff --git a/cross-arm-none-gcc14-bootstrap.spec b/cross-arm-none-gcc14-bootstrap.spec index b50ad04..6d1a2f6 100644 --- a/cross-arm-none-gcc14-bootstrap.spec +++ b/cross-arm-none-gcc14-bootstrap.spec @@ -124,6 +124,7 @@ Patch16: gcc9-reproducible-builds.patch Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch Patch19: gcc11-gdwarf-4-default.patch Patch20: gcc13-pr101523.patch +Patch21: gcc14-pr116629.patch # A set of patches from the RH srpm Patch51: gcc41-ppc32-retaddr.patch # Some patches taken from Debian @@ -321,7 +322,7 @@ ln -s newlib-4.4.0.20231231/newlib . %if %{suse_version} < 1550 %patch -p1 -P 19 %endif -%patch -p1 -P 20 +%patch -p1 -P 20 -P 21 %patch -P 51 %patch -p1 -P 60 -P 61 diff --git a/cross-arm-none-gcc14.spec b/cross-arm-none-gcc14.spec index c56762e..ca874af 100644 --- a/cross-arm-none-gcc14.spec +++ b/cross-arm-none-gcc14.spec @@ -123,6 +123,7 @@ Patch16: gcc9-reproducible-builds.patch Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch Patch19: gcc11-gdwarf-4-default.patch Patch20: gcc13-pr101523.patch +Patch21: gcc14-pr116629.patch # A set of patches from the RH srpm Patch51: gcc41-ppc32-retaddr.patch # Some patches taken from Debian @@ -320,7 +321,7 @@ ln -s newlib-4.4.0.20231231/newlib . %if %{suse_version} < 1550 %patch -p1 -P 19 %endif -%patch -p1 -P 20 +%patch -p1 -P 20 -P 21 %patch -P 51 %patch -p1 -P 60 -P 61 diff --git a/cross-avr-gcc14-bootstrap.spec b/cross-avr-gcc14-bootstrap.spec index 2542eb8..238e21e 100644 --- a/cross-avr-gcc14-bootstrap.spec +++ b/cross-avr-gcc14-bootstrap.spec @@ -123,6 +123,7 @@ Patch16: gcc9-reproducible-builds.patch Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch Patch19: gcc11-gdwarf-4-default.patch Patch20: gcc13-pr101523.patch +Patch21: gcc14-pr116629.patch # A set of patches from the RH srpm Patch51: gcc41-ppc32-retaddr.patch # Some patches taken from Debian @@ -320,7 +321,7 @@ ln -s newlib-4.4.0.20231231/newlib . %if %{suse_version} < 1550 %patch -p1 -P 19 %endif -%patch -p1 -P 20 +%patch -p1 -P 20 -P 21 %patch -P 51 %patch -p1 -P 60 -P 61 diff --git a/cross-avr-gcc14.spec b/cross-avr-gcc14.spec index 389f816..f1ff4a9 100644 --- a/cross-avr-gcc14.spec +++ b/cross-avr-gcc14.spec @@ -123,6 +123,7 @@ Patch16: gcc9-reproducible-builds.patch Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch Patch19: gcc11-gdwarf-4-default.patch Patch20: gcc13-pr101523.patch +Patch21: gcc14-pr116629.patch # A set of patches from the RH srpm Patch51: gcc41-ppc32-retaddr.patch # Some patches taken from Debian @@ -320,7 +321,7 @@ ln -s newlib-4.4.0.20231231/newlib . %if %{suse_version} < 1550 %patch -p1 -P 19 %endif -%patch -p1 -P 20 +%patch -p1 -P 20 -P 21 %patch -P 51 %patch -p1 -P 60 -P 61 diff --git a/cross-bpf-gcc14.spec b/cross-bpf-gcc14.spec index 1dfe831..68f79fe 100644 --- a/cross-bpf-gcc14.spec +++ b/cross-bpf-gcc14.spec @@ -123,6 +123,7 @@ Patch16: gcc9-reproducible-builds.patch Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch Patch19: gcc11-gdwarf-4-default.patch Patch20: gcc13-pr101523.patch +Patch21: gcc14-pr116629.patch # A set of patches from the RH srpm Patch51: gcc41-ppc32-retaddr.patch # Some patches taken from Debian @@ -320,7 +321,7 @@ ln -s newlib-4.4.0.20231231/newlib . %if %{suse_version} < 1550 %patch -p1 -P 19 %endif -%patch -p1 -P 20 +%patch -p1 -P 20 -P 21 %patch -P 51 %patch -p1 -P 60 -P 61 diff --git a/cross-hppa-gcc14-bootstrap.spec b/cross-hppa-gcc14-bootstrap.spec index 73a5c82..326dd7c 100644 --- a/cross-hppa-gcc14-bootstrap.spec +++ b/cross-hppa-gcc14-bootstrap.spec @@ -123,6 +123,7 @@ Patch16: gcc9-reproducible-builds.patch Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch Patch19: gcc11-gdwarf-4-default.patch Patch20: gcc13-pr101523.patch +Patch21: gcc14-pr116629.patch # A set of patches from the RH srpm Patch51: gcc41-ppc32-retaddr.patch # Some patches taken from Debian @@ -320,7 +321,7 @@ ln -s newlib-4.4.0.20231231/newlib . %if %{suse_version} < 1550 %patch -p1 -P 19 %endif -%patch -p1 -P 20 +%patch -p1 -P 20 -P 21 %patch -P 51 %patch -p1 -P 60 -P 61 diff --git a/cross-hppa-gcc14.spec b/cross-hppa-gcc14.spec index 80a3ffb..7d0f55b 100644 --- a/cross-hppa-gcc14.spec +++ b/cross-hppa-gcc14.spec @@ -123,6 +123,7 @@ Patch16: gcc9-reproducible-builds.patch Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch Patch19: gcc11-gdwarf-4-default.patch Patch20: gcc13-pr101523.patch +Patch21: gcc14-pr116629.patch # A set of patches from the RH srpm Patch51: gcc41-ppc32-retaddr.patch # Some patches taken from Debian @@ -320,7 +321,7 @@ ln -s newlib-4.4.0.20231231/newlib . %if %{suse_version} < 1550 %patch -p1 -P 19 %endif -%patch -p1 -P 20 +%patch -p1 -P 20 -P 21 %patch -P 51 %patch -p1 -P 60 -P 61 diff --git a/cross-m68k-gcc14.spec b/cross-m68k-gcc14.spec index bb483d2..08313a4 100644 --- a/cross-m68k-gcc14.spec +++ b/cross-m68k-gcc14.spec @@ -123,6 +123,7 @@ Patch16: gcc9-reproducible-builds.patch Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch Patch19: gcc11-gdwarf-4-default.patch Patch20: gcc13-pr101523.patch +Patch21: gcc14-pr116629.patch # A set of patches from the RH srpm Patch51: gcc41-ppc32-retaddr.patch # Some patches taken from Debian @@ -320,7 +321,7 @@ ln -s newlib-4.4.0.20231231/newlib . %if %{suse_version} < 1550 %patch -p1 -P 19 %endif -%patch -p1 -P 20 +%patch -p1 -P 20 -P 21 %patch -P 51 %patch -p1 -P 60 -P 61 diff --git a/cross-mips-gcc14.spec b/cross-mips-gcc14.spec index 90fb6ed..6c9a629 100644 --- a/cross-mips-gcc14.spec +++ b/cross-mips-gcc14.spec @@ -123,6 +123,7 @@ Patch16: gcc9-reproducible-builds.patch Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch Patch19: gcc11-gdwarf-4-default.patch Patch20: gcc13-pr101523.patch +Patch21: gcc14-pr116629.patch # A set of patches from the RH srpm Patch51: gcc41-ppc32-retaddr.patch # Some patches taken from Debian @@ -320,7 +321,7 @@ ln -s newlib-4.4.0.20231231/newlib . %if %{suse_version} < 1550 %patch -p1 -P 19 %endif -%patch -p1 -P 20 +%patch -p1 -P 20 -P 21 %patch -P 51 %patch -p1 -P 60 -P 61 diff --git a/cross-nvptx-gcc14.spec b/cross-nvptx-gcc14.spec index f611a34..ce31b3d 100644 --- a/cross-nvptx-gcc14.spec +++ b/cross-nvptx-gcc14.spec @@ -123,6 +123,7 @@ Patch16: gcc9-reproducible-builds.patch Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch Patch19: gcc11-gdwarf-4-default.patch Patch20: gcc13-pr101523.patch +Patch21: gcc14-pr116629.patch # A set of patches from the RH srpm Patch51: gcc41-ppc32-retaddr.patch # Some patches taken from Debian @@ -320,7 +321,7 @@ ln -s newlib-4.4.0.20231231/newlib . %if %{suse_version} < 1550 %patch -p1 -P 19 %endif -%patch -p1 -P 20 +%patch -p1 -P 20 -P 21 %patch -P 51 %patch -p1 -P 60 -P 61 diff --git a/cross-ppc64-gcc14.spec b/cross-ppc64-gcc14.spec index 53548eb..96c7098 100644 --- a/cross-ppc64-gcc14.spec +++ b/cross-ppc64-gcc14.spec @@ -123,6 +123,7 @@ Patch16: gcc9-reproducible-builds.patch Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch Patch19: gcc11-gdwarf-4-default.patch Patch20: gcc13-pr101523.patch +Patch21: gcc14-pr116629.patch # A set of patches from the RH srpm Patch51: gcc41-ppc32-retaddr.patch # Some patches taken from Debian @@ -320,7 +321,7 @@ ln -s newlib-4.4.0.20231231/newlib . %if %{suse_version} < 1550 %patch -p1 -P 19 %endif -%patch -p1 -P 20 +%patch -p1 -P 20 -P 21 %patch -P 51 %patch -p1 -P 60 -P 61 diff --git a/cross-ppc64le-gcc14-bootstrap.spec b/cross-ppc64le-gcc14-bootstrap.spec index facf01b..8e0b8a3 100644 --- a/cross-ppc64le-gcc14-bootstrap.spec +++ b/cross-ppc64le-gcc14-bootstrap.spec @@ -123,6 +123,7 @@ Patch16: gcc9-reproducible-builds.patch Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch Patch19: gcc11-gdwarf-4-default.patch Patch20: gcc13-pr101523.patch +Patch21: gcc14-pr116629.patch # A set of patches from the RH srpm Patch51: gcc41-ppc32-retaddr.patch # Some patches taken from Debian @@ -320,7 +321,7 @@ ln -s newlib-4.4.0.20231231/newlib . %if %{suse_version} < 1550 %patch -p1 -P 19 %endif -%patch -p1 -P 20 +%patch -p1 -P 20 -P 21 %patch -P 51 %patch -p1 -P 60 -P 61 diff --git a/cross-ppc64le-gcc14.spec b/cross-ppc64le-gcc14.spec index 5247eb1..10a8e2d 100644 --- a/cross-ppc64le-gcc14.spec +++ b/cross-ppc64le-gcc14.spec @@ -123,6 +123,7 @@ Patch16: gcc9-reproducible-builds.patch Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch Patch19: gcc11-gdwarf-4-default.patch Patch20: gcc13-pr101523.patch +Patch21: gcc14-pr116629.patch # A set of patches from the RH srpm Patch51: gcc41-ppc32-retaddr.patch # Some patches taken from Debian @@ -320,7 +321,7 @@ ln -s newlib-4.4.0.20231231/newlib . %if %{suse_version} < 1550 %patch -p1 -P 19 %endif -%patch -p1 -P 20 +%patch -p1 -P 20 -P 21 %patch -P 51 %patch -p1 -P 60 -P 61 diff --git a/cross-pru-gcc14-bootstrap.spec b/cross-pru-gcc14-bootstrap.spec index 242733c..77b7663 100644 --- a/cross-pru-gcc14-bootstrap.spec +++ b/cross-pru-gcc14-bootstrap.spec @@ -124,6 +124,7 @@ Patch16: gcc9-reproducible-builds.patch Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch Patch19: gcc11-gdwarf-4-default.patch Patch20: gcc13-pr101523.patch +Patch21: gcc14-pr116629.patch # A set of patches from the RH srpm Patch51: gcc41-ppc32-retaddr.patch # Some patches taken from Debian @@ -321,7 +322,7 @@ ln -s newlib-4.4.0.20231231/newlib . %if %{suse_version} < 1550 %patch -p1 -P 19 %endif -%patch -p1 -P 20 +%patch -p1 -P 20 -P 21 %patch -P 51 %patch -p1 -P 60 -P 61 diff --git a/cross-pru-gcc14.spec b/cross-pru-gcc14.spec index 07f909d..3c5edb9 100644 --- a/cross-pru-gcc14.spec +++ b/cross-pru-gcc14.spec @@ -123,6 +123,7 @@ Patch16: gcc9-reproducible-builds.patch Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch Patch19: gcc11-gdwarf-4-default.patch Patch20: gcc13-pr101523.patch +Patch21: gcc14-pr116629.patch # A set of patches from the RH srpm Patch51: gcc41-ppc32-retaddr.patch # Some patches taken from Debian @@ -320,7 +321,7 @@ ln -s newlib-4.4.0.20231231/newlib . %if %{suse_version} < 1550 %patch -p1 -P 19 %endif -%patch -p1 -P 20 +%patch -p1 -P 20 -P 21 %patch -P 51 %patch -p1 -P 60 -P 61 diff --git a/cross-riscv64-elf-gcc14-bootstrap.spec b/cross-riscv64-elf-gcc14-bootstrap.spec index eb8eb4b..fb2f5bc 100644 --- a/cross-riscv64-elf-gcc14-bootstrap.spec +++ b/cross-riscv64-elf-gcc14-bootstrap.spec @@ -124,6 +124,7 @@ Patch16: gcc9-reproducible-builds.patch Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch Patch19: gcc11-gdwarf-4-default.patch Patch20: gcc13-pr101523.patch +Patch21: gcc14-pr116629.patch # A set of patches from the RH srpm Patch51: gcc41-ppc32-retaddr.patch # Some patches taken from Debian @@ -321,7 +322,7 @@ ln -s newlib-4.4.0.20231231/newlib . %if %{suse_version} < 1550 %patch -p1 -P 19 %endif -%patch -p1 -P 20 +%patch -p1 -P 20 -P 21 %patch -P 51 %patch -p1 -P 60 -P 61 diff --git a/cross-riscv64-elf-gcc14.spec b/cross-riscv64-elf-gcc14.spec index 48f56b7..a506ffa 100644 --- a/cross-riscv64-elf-gcc14.spec +++ b/cross-riscv64-elf-gcc14.spec @@ -123,6 +123,7 @@ Patch16: gcc9-reproducible-builds.patch Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch Patch19: gcc11-gdwarf-4-default.patch Patch20: gcc13-pr101523.patch +Patch21: gcc14-pr116629.patch # A set of patches from the RH srpm Patch51: gcc41-ppc32-retaddr.patch # Some patches taken from Debian @@ -320,7 +321,7 @@ ln -s newlib-4.4.0.20231231/newlib . %if %{suse_version} < 1550 %patch -p1 -P 19 %endif -%patch -p1 -P 20 +%patch -p1 -P 20 -P 21 %patch -P 51 %patch -p1 -P 60 -P 61 diff --git a/cross-riscv64-gcc14-bootstrap.spec b/cross-riscv64-gcc14-bootstrap.spec index cf37503..dc47983 100644 --- a/cross-riscv64-gcc14-bootstrap.spec +++ b/cross-riscv64-gcc14-bootstrap.spec @@ -123,6 +123,7 @@ Patch16: gcc9-reproducible-builds.patch Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch Patch19: gcc11-gdwarf-4-default.patch Patch20: gcc13-pr101523.patch +Patch21: gcc14-pr116629.patch # A set of patches from the RH srpm Patch51: gcc41-ppc32-retaddr.patch # Some patches taken from Debian @@ -320,7 +321,7 @@ ln -s newlib-4.4.0.20231231/newlib . %if %{suse_version} < 1550 %patch -p1 -P 19 %endif -%patch -p1 -P 20 +%patch -p1 -P 20 -P 21 %patch -P 51 %patch -p1 -P 60 -P 61 diff --git a/cross-riscv64-gcc14.spec b/cross-riscv64-gcc14.spec index a591007..08dc409 100644 --- a/cross-riscv64-gcc14.spec +++ b/cross-riscv64-gcc14.spec @@ -123,6 +123,7 @@ Patch16: gcc9-reproducible-builds.patch Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch Patch19: gcc11-gdwarf-4-default.patch Patch20: gcc13-pr101523.patch +Patch21: gcc14-pr116629.patch # A set of patches from the RH srpm Patch51: gcc41-ppc32-retaddr.patch # Some patches taken from Debian @@ -320,7 +321,7 @@ ln -s newlib-4.4.0.20231231/newlib . %if %{suse_version} < 1550 %patch -p1 -P 19 %endif -%patch -p1 -P 20 +%patch -p1 -P 20 -P 21 %patch -P 51 %patch -p1 -P 60 -P 61 diff --git a/cross-rx-gcc14-bootstrap.spec b/cross-rx-gcc14-bootstrap.spec index c110bf7..17da166 100644 --- a/cross-rx-gcc14-bootstrap.spec +++ b/cross-rx-gcc14-bootstrap.spec @@ -124,6 +124,7 @@ Patch16: gcc9-reproducible-builds.patch Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch Patch19: gcc11-gdwarf-4-default.patch Patch20: gcc13-pr101523.patch +Patch21: gcc14-pr116629.patch # A set of patches from the RH srpm Patch51: gcc41-ppc32-retaddr.patch # Some patches taken from Debian @@ -321,7 +322,7 @@ ln -s newlib-4.4.0.20231231/newlib . %if %{suse_version} < 1550 %patch -p1 -P 19 %endif -%patch -p1 -P 20 +%patch -p1 -P 20 -P 21 %patch -P 51 %patch -p1 -P 60 -P 61 diff --git a/cross-rx-gcc14.spec b/cross-rx-gcc14.spec index 641cd11..df61a53 100644 --- a/cross-rx-gcc14.spec +++ b/cross-rx-gcc14.spec @@ -123,6 +123,7 @@ Patch16: gcc9-reproducible-builds.patch Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch Patch19: gcc11-gdwarf-4-default.patch Patch20: gcc13-pr101523.patch +Patch21: gcc14-pr116629.patch # A set of patches from the RH srpm Patch51: gcc41-ppc32-retaddr.patch # Some patches taken from Debian @@ -320,7 +321,7 @@ ln -s newlib-4.4.0.20231231/newlib . %if %{suse_version} < 1550 %patch -p1 -P 19 %endif -%patch -p1 -P 20 +%patch -p1 -P 20 -P 21 %patch -P 51 %patch -p1 -P 60 -P 61 diff --git a/cross-s390x-gcc14-bootstrap.spec b/cross-s390x-gcc14-bootstrap.spec index c4ef820..b9c2451 100644 --- a/cross-s390x-gcc14-bootstrap.spec +++ b/cross-s390x-gcc14-bootstrap.spec @@ -123,6 +123,7 @@ Patch16: gcc9-reproducible-builds.patch Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch Patch19: gcc11-gdwarf-4-default.patch Patch20: gcc13-pr101523.patch +Patch21: gcc14-pr116629.patch # A set of patches from the RH srpm Patch51: gcc41-ppc32-retaddr.patch # Some patches taken from Debian @@ -320,7 +321,7 @@ ln -s newlib-4.4.0.20231231/newlib . %if %{suse_version} < 1550 %patch -p1 -P 19 %endif -%patch -p1 -P 20 +%patch -p1 -P 20 -P 21 %patch -P 51 %patch -p1 -P 60 -P 61 diff --git a/cross-s390x-gcc14.spec b/cross-s390x-gcc14.spec index 7fc5e3d..613a2d0 100644 --- a/cross-s390x-gcc14.spec +++ b/cross-s390x-gcc14.spec @@ -123,6 +123,7 @@ Patch16: gcc9-reproducible-builds.patch Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch Patch19: gcc11-gdwarf-4-default.patch Patch20: gcc13-pr101523.patch +Patch21: gcc14-pr116629.patch # A set of patches from the RH srpm Patch51: gcc41-ppc32-retaddr.patch # Some patches taken from Debian @@ -320,7 +321,7 @@ ln -s newlib-4.4.0.20231231/newlib . %if %{suse_version} < 1550 %patch -p1 -P 19 %endif -%patch -p1 -P 20 +%patch -p1 -P 20 -P 21 %patch -P 51 %patch -p1 -P 60 -P 61 diff --git a/cross-sparc-gcc14.spec b/cross-sparc-gcc14.spec index 7782f94..988d601 100644 --- a/cross-sparc-gcc14.spec +++ b/cross-sparc-gcc14.spec @@ -123,6 +123,7 @@ Patch16: gcc9-reproducible-builds.patch Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch Patch19: gcc11-gdwarf-4-default.patch Patch20: gcc13-pr101523.patch +Patch21: gcc14-pr116629.patch # A set of patches from the RH srpm Patch51: gcc41-ppc32-retaddr.patch # Some patches taken from Debian @@ -320,7 +321,7 @@ ln -s newlib-4.4.0.20231231/newlib . %if %{suse_version} < 1550 %patch -p1 -P 19 %endif -%patch -p1 -P 20 +%patch -p1 -P 20 -P 21 %patch -P 51 %patch -p1 -P 60 -P 61 diff --git a/cross-sparc64-gcc14.spec b/cross-sparc64-gcc14.spec index a392436..c3e61f6 100644 --- a/cross-sparc64-gcc14.spec +++ b/cross-sparc64-gcc14.spec @@ -123,6 +123,7 @@ Patch16: gcc9-reproducible-builds.patch Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch Patch19: gcc11-gdwarf-4-default.patch Patch20: gcc13-pr101523.patch +Patch21: gcc14-pr116629.patch # A set of patches from the RH srpm Patch51: gcc41-ppc32-retaddr.patch # Some patches taken from Debian @@ -320,7 +321,7 @@ ln -s newlib-4.4.0.20231231/newlib . %if %{suse_version} < 1550 %patch -p1 -P 19 %endif -%patch -p1 -P 20 +%patch -p1 -P 20 -P 21 %patch -P 51 %patch -p1 -P 60 -P 61 diff --git a/cross-x86_64-gcc14.spec b/cross-x86_64-gcc14.spec index fd0bfb9..a742b5e 100644 --- a/cross-x86_64-gcc14.spec +++ b/cross-x86_64-gcc14.spec @@ -123,6 +123,7 @@ Patch16: gcc9-reproducible-builds.patch Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch Patch19: gcc11-gdwarf-4-default.patch Patch20: gcc13-pr101523.patch +Patch21: gcc14-pr116629.patch # A set of patches from the RH srpm Patch51: gcc41-ppc32-retaddr.patch # Some patches taken from Debian @@ -320,7 +321,7 @@ ln -s newlib-4.4.0.20231231/newlib . %if %{suse_version} < 1550 %patch -p1 -P 19 %endif -%patch -p1 -P 20 +%patch -p1 -P 20 -P 21 %patch -P 51 %patch -p1 -P 60 -P 61 diff --git a/gcc.spec.in b/gcc.spec.in index 139f037..2260735 100644 --- a/gcc.spec.in +++ b/gcc.spec.in @@ -366,6 +366,7 @@ Patch16: gcc9-reproducible-builds.patch Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch Patch19: gcc11-gdwarf-4-default.patch Patch20: gcc13-pr101523.patch +Patch21: gcc14-pr116629.patch # A set of patches from the RH srpm Patch51: gcc41-ppc32-retaddr.patch # Some patches taken from Debian @@ -1336,7 +1337,7 @@ ln -s newlib-4.4.0.20231231/newlib . %if %{suse_version} < 1550 %patch -p1 -P 19 %endif -%patch -p1 -P 20 +%patch -p1 -P 20 -P 21 %patch -P 51 %patch -p1 -P 60 -P 61 diff --git a/gcc14-pr116629.patch b/gcc14-pr116629.patch new file mode 100644 index 0000000..d76b390 --- /dev/null +++ b/gcc14-pr116629.patch @@ -0,0 +1,74 @@ +From 9d45efe523ffb2d2fc1350aeaba9f1cfe9f58815 Mon Sep 17 00:00:00 2001 +From: Richard Biener +Date: Wed, 9 Oct 2024 13:57:36 +0100 +Subject: [PATCH] aarch64: Fix SVE ACLE gimple folds for C++ LTO [PR116629] +To: gcc-patches@gcc.gnu.org + +From: Richard Sandiford + +The SVE ACLE code has two ways of handling overloaded functions. +One, used by C, is to define a single dummy function for each unique +overloaded name, with resolve_overloaded_builtin then resolving calls +to real non-overloaded functions. The other, used by C++, is to +define a separate function for each individual overload. + +The builtins harness assigns integer function codes programmatically. +However, LTO requires it to use the same assignment for every +translation unit, regardless of language. This means that C++ TUs +need to create (unused) slots for the C overloads and that C TUs +need to create (unused) slots for the C++ overloads. + +In many ways, it doesn't matter whether the LTO frontend itself +uses the C approach or the C++ approach to defining overloaded +functions, since the LTO frontend never has to resolve source-level +overloading. However, the C++ approach of defining a separate +function for each overload means that C++ calls never need to +be redirected to a different function. Calls to an overload +can appear in the LTO dump and survive until expand. In contrast, +calls to C's dummy overload functions are resolved by the front +end and never survive to LTO (or expand). + +Some optimisations work by moving between sibling functions, such as _m +to _x. If the source function is an overload, the expected destination +function is too. The LTO frontend needs to define C++ overloads if it +wants to do this optimisation properly for C++. + +The PR is about a tree checking failure caused by trying to use a +stubbed-out C++ overload in LTO. Dealing with that by detecting the +stub (rather than changing which overloads are defined) would have +turned this from an ice-on-valid to a missed optimisation. + +In future, it would probably make sense to redirect overloads to +non-overloaded functions during gimple folding, in case that exposes +more CSE opportunities. But it'd probably be of limited benefit, since +it should be rare for code to mix overloaded and non-overloaded uses of +the same operation. It also wouldn't be suitable for backports. + +gcc/ + PR target/116629 + * config/aarch64/aarch64-sve-builtins.cc + (function_builder::function_builder): Use direct overloads for LTO. + +gcc/testsuite/ + PR target/116629 + * gcc.target/aarch64/sve/acle/general/pr106326_2.c: New test. +--- + gcc/config/aarch64/aarch64-sve-builtins.cc | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/gcc/config/aarch64/aarch64-sve-builtins.cc b/gcc/config/aarch64/aarch64-sve-builtins.cc +index e0458f7c1f6..afc0c36e620 100644 +--- a/gcc/config/aarch64/aarch64-sve-builtins.cc ++++ b/gcc/config/aarch64/aarch64-sve-builtins.cc +@@ -1259,7 +1259,7 @@ function_builder::function_builder (handle_pragma_index pragma_index, + bool function_nulls) + { + m_overload_type = build_function_type (void_type_node, void_list_node); +- m_direct_overloads = lang_GNU_CXX (); ++ m_direct_overloads = lang_GNU_CXX () || in_lto_p; + + if (initial_indexes[pragma_index] == 0) + { +-- +2.43.0 + diff --git a/gcc14-testresults.spec b/gcc14-testresults.spec index ffec089..f046e61 100644 --- a/gcc14-testresults.spec +++ b/gcc14-testresults.spec @@ -382,6 +382,7 @@ Patch16: gcc9-reproducible-builds.patch Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch Patch19: gcc11-gdwarf-4-default.patch Patch20: gcc13-pr101523.patch +Patch21: gcc14-pr116629.patch # A set of patches from the RH srpm Patch51: gcc41-ppc32-retaddr.patch # Some patches taken from Debian @@ -513,7 +514,7 @@ ln -s newlib-4.4.0.20231231/newlib . %if %{suse_version} < 1550 %patch -p1 -P 19 %endif -%patch -p1 -P 20 +%patch -p1 -P 20 -P 21 %patch -P 51 %patch -p1 -P 60 -P 61 diff --git a/gcc14.changes b/gcc14.changes index 4fdd5f4..77d0cac 100644 --- a/gcc14.changes +++ b/gcc14.changes @@ -1,8 +1,10 @@ ------------------------------------------------------------------- -Mon Oct 7 07:12:28 UTC 2024 - Richard Biener +Wed Oct 9 13:01:41 UTC 2024 - Richard Biener - Update to gcc-14 branch head, 4af44f2cf7d281f3e4f3957ef, git10750 * includes libstdc++6 fix for parsing tzdata 2024b [gcc#116657] +- Add gcc14-pr116629.patch to fix ICE with LTO building openvino + on aarch64 [boo#1230262] ------------------------------------------------------------------- Thu Aug 22 10:37:05 UTC 2024 - Richard Biener diff --git a/gcc14.spec b/gcc14.spec index 1627aa4..8e2a00f 100644 --- a/gcc14.spec +++ b/gcc14.spec @@ -361,6 +361,7 @@ Patch16: gcc9-reproducible-builds.patch Patch17: gcc9-reproducible-builds-buildid-for-checksum.patch Patch19: gcc11-gdwarf-4-default.patch Patch20: gcc13-pr101523.patch +Patch21: gcc14-pr116629.patch # A set of patches from the RH srpm Patch51: gcc41-ppc32-retaddr.patch # Some patches taken from Debian @@ -2362,7 +2363,7 @@ ln -s newlib-4.4.0.20231231/newlib . %if %{suse_version} < 1550 %patch -p1 -P 19 %endif -%patch -p1 -P 20 +%patch -p1 -P 20 -P 21 %patch -P 51 %patch -p1 -P 60 -P 61