- 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
This commit is contained in:
Richard Biener 2024-10-09 13:06:53 +00:00 committed by Git OBS Bridge
parent 05953b7b26
commit a35c9ca44f
35 changed files with 143 additions and 34 deletions

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

74
gcc14-pr116629.patch Normal file
View File

@ -0,0 +1,74 @@
From 9d45efe523ffb2d2fc1350aeaba9f1cfe9f58815 Mon Sep 17 00:00:00 2001
From: Richard Biener <rguenther@suse.de>
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 <richard.sandiford@arm.com>
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

View File

@ -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

View File

@ -1,8 +1,10 @@
-------------------------------------------------------------------
Mon Oct 7 07:12:28 UTC 2024 - Richard Biener <rguenther@suse.com>
Wed Oct 9 13:01:41 UTC 2024 - Richard Biener <rguenther@suse.com>
- 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 <rguenther@suse.com>

View File

@ -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