summaryrefslogtreecommitdiff
path: root/sys-devel
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2025-03-04 01:46:23 +0000
committerV3n3RiX <venerix@koprulu.sector>2025-03-04 01:46:23 +0000
commitd13006cca857323814c09f5123b87c1a005bba74 (patch)
treeca4a24c0b40356fb7efce3e245882a9e87b5db3c /sys-devel
parenteab7afdf0fe1454220af1a74c5556855a937a819 (diff)
gentoo auto-resync : 04:03:2025 - 01:46:22next
Diffstat (limited to 'sys-devel')
-rw-r--r--sys-devel/Manifest.gzbin6221 -> 6220 bytes
-rw-r--r--sys-devel/gcc/Manifest3
-rw-r--r--sys-devel/gcc/files/gcc-15.0.1_pre20250302-firefox-ice.patch99
-rw-r--r--sys-devel/gcc/files/gcc-15.0.1_pre20250302-firefox-pgo-ice.patch58
-rw-r--r--sys-devel/gcc/gcc-15.0.1_pre20250302-r1.ebuild54
5 files changed, 214 insertions, 0 deletions
diff --git a/sys-devel/Manifest.gz b/sys-devel/Manifest.gz
index fb10a9b469c7..def7fe4d7630 100644
--- a/sys-devel/Manifest.gz
+++ b/sys-devel/Manifest.gz
Binary files differ
diff --git a/sys-devel/gcc/Manifest b/sys-devel/gcc/Manifest
index 833c3e6741c1..0c8507ac5c80 100644
--- a/sys-devel/gcc/Manifest
+++ b/sys-devel/gcc/Manifest
@@ -1,6 +1,8 @@
AUX gcc-13-fix-cross-fixincludes.patch 883 BLAKE2B 1ae33195320754c55f42e1206bcfdf98914af5190df5939a4c7b072a2bc25216c354ea5d76f5171e1b8a150ca7764bdf57cea1bc137c237a5e8bb44713885f1b SHA512 ca9625001f0a10826d75691fdba35ca5783ed2f80e605b935785f8dc7591b0e650dca28bf1fc7e688e27547dddc7ab38232459b4f1865ed10a148978d0e09703
AUX gcc-14.2.1_p20241221-arm-Revert-arm-MVE-intrinsics-Fix-support-for-predicate-.patch 5160 BLAKE2B f229bc58851d348a67d636d65878166479f2eb735dddc6368e21c2cc5b1c2b8660b1c87024c1637a25a9acf609662823337307f21fe9a51fe9cbfc6fdcbb0a16 SHA512 c62e991b826cee7258abfa3f1305fc33b8b0e0dce2aaa1ae5a753b547126d9dde6632894eb72e46c6c78c9777029a7593a4f9afbb6a3ac6d831c63ea0c19decd
AUX gcc-15.0.1_pre20250223-c-Fix-range-for-with-PMFs-PR118923.patch 7059 BLAKE2B 20118efd091888c495b25a1fc9372931a328336fe94fd43c084419557c44b054859ff98283e66cc59d633a3402c9b7260fe84344502c3e5a42f234cd51afaf5f SHA512 1b19210be96e337abf1cd2cc6879f7e418aadaa098314013b80c0adf767ad9bb7923aee72bca25d148482f1779550bf70f280adeac1538963fb8ded51365c172
+AUX gcc-15.0.1_pre20250302-firefox-ice.patch 3245 BLAKE2B 10d80ae54ca2dc82d1fa16db1bd49339aae3477ecf812ba6015396c1a23a85c47426ebed7dcc3e9bd4296917ab082e92cfc5ae1e28f4a98ce9065c4aefdb0aea SHA512 6d7d6385bb6bb6303d4f863f4ae9729d719bc46caa88025bda1e5798875688357f3446374c7e0fbd7225ce2eae70cb1ce177252ba4a20dfa18dcf20b0e3c7e85
+AUX gcc-15.0.1_pre20250302-firefox-pgo-ice.patch 1993 BLAKE2B ea3be0d39bb52f49f96f541205676438182ebb1aaee96aa34c145ea1a301adf3f6f38902910cc8d36daff64a9d1c1462ecd881cdee703e7a50a64b000377cbd6 SHA512 552199c7f1f8d27644b0a4b0efbb24bb57c30405ce4d9d461beb5d3a7b3ef186d5fa5e8fd8a6559c0c965ecc2d8318d33a3c657b0dd66694b6e0fbd866da6ca3
AUX gcc-configure-texinfo.patch 341 BLAKE2B d2ea3b2ea08f5d3a498ba27d0fb95e325097e2104e55caa28b66515cb48662649140d90b639369aedc54b2b1178fa4b49cda442f5f504e09d88a2efa45a5057c SHA512 e8d34c5077409df5495cf0c5fbf5e77f841c5698108fa6a5fde33eb28202c685603bdefd8368918e55f30c4b995e895d71d64c715c1ec2b017e09eb2c54c09ff
DIST gcc-10.5.0-musl-patches-2.tar.xz 3452 BLAKE2B 5387e516d07d81477b3f39b8b3bd986bf861d32cd25dc5481c97bd3620d00c918c5661e86857f66dbf28a655401a53e43417f638c443e44cbfdbf5e950caac4d SHA512 86f2ce31cc4fc4fb5a6043fb527bf822d895e1a6220652024f78a1cbd5a962edb6be8dc5f43c32053e075f39bb2350ea8f14e7d57e0473dd2933a7b44676bde5
DIST gcc-10.5.0-patches-6.tar.xz 18208 BLAKE2B 4cac3340108fb378c76ad62b728429f3c97f348d178744e7536575f3576ca8aa682b878b7df3b1c162dccae64a3cb56c66d8d60eae323e1ece2de4278084fdbd SHA512 9d6c84325fbc118cee01347468ce729c278e5b026b16da945fe54050726e26f86a46ee7b71a01a47cf927b70bfcce459c49a6bc4fb93dcfaa047c76d4c5bc5bc
@@ -57,6 +59,7 @@ EBUILD gcc-14.3.9999.ebuild 1410 BLAKE2B 0f77f0e17b7bf3d617ed4feec61406108d92e9a
EBUILD gcc-15.0.1_pre20250216.ebuild 1360 BLAKE2B 4212d360f6f9ca7db4090606330079f41f1c9610d32b6baccb64a1d20b39ee16c4517e90040a4fd1cf089cb0195543d57124a73452d8128cfbfef2b651732f53 SHA512 7286c47637b84199caf031fadf163893a8abb0d7533ac2a4759fac3e9d81936ff45b7c15afa8b53174e5e6b38b6a4821a11daa0a27c658ca41aa47393008ece5
EBUILD gcc-15.0.1_pre20250223-r1.ebuild 1427 BLAKE2B f96bc8e59d6194d6141d073edd11d343cd97fb7637973f36807171cc6ac0c6e5925f26874810d3a92ab190976bc5df7cbb1c87b175c014ec1a0287c04d74c8bc SHA512 0d6668d0b13f57c14b659c169f9d5959d84c537857f257c1df89a73704542c11fec08c5cc318fb45d3173d44c141bdc54897bc68e3b6fda5bbda33670ec7a73c
EBUILD gcc-15.0.1_pre20250223.ebuild 1360 BLAKE2B 4212d360f6f9ca7db4090606330079f41f1c9610d32b6baccb64a1d20b39ee16c4517e90040a4fd1cf089cb0195543d57124a73452d8128cfbfef2b651732f53 SHA512 7286c47637b84199caf031fadf163893a8abb0d7533ac2a4759fac3e9d81936ff45b7c15afa8b53174e5e6b38b6a4821a11daa0a27c658ca41aa47393008ece5
+EBUILD gcc-15.0.1_pre20250302-r1.ebuild 1453 BLAKE2B 1aa3e59f6d87fe4701f6ae8338563f6d943f7cb72ef09bf513a80365c4799990595047477c8f421349140ced67e558a916c49ba57526aeb0dc003b33cde5a9b2 SHA512 fcd694696536a3a581165505bdca7c57778c471725dc41f5af7b9faf83962d8e962aa37c21467b147ec98f4f51bfbef9d897c8dff86b41eb7809bce06d51da37
EBUILD gcc-15.0.1_pre20250302.ebuild 1359 BLAKE2B 0e4dcef21ac4b8541a43eb8fad28c3cafddbc91b186f8d5f3ed67e42c3c34f8614234d203b0e80f314f9454b1132c30e5b1f79b08a4f4b34c061839e911b8b7e SHA512 4b5f3b8b0df693d95204b8983d3c51a07a286ef0d0b56e9a1b3d9bfa37a4e8559fa7133eae15a101c70e5b9783dc7c81d8d72437366ae08b2e4d62732db9de2e
EBUILD gcc-15.0.9999.ebuild 1332 BLAKE2B 6f17f77603522bac72d4d57094cc086263a9bfe6273c04d91b169ebc23d78fa2943c0950d4a40fe846d9d92648e54ca54ad1cecd5446ed5710062f9dca569b4b SHA512 4e4a673229a36dee68238e10efb2d9e0ff1c530411395e5230bbf567c92342a4b79d0ecb0ec91573c52fd8b5efd5cf6d20e612971848c9529378e0c42c0e213d
EBUILD gcc-8.5.0-r2.ebuild 549 BLAKE2B 2856372670c76fbe54778c0532815e3510b01b1c8aad99acc3e9183bf6829251952e29887340895625c1e421e19302430ae1a0a8dddcd8470bd71cc221f0b6b0 SHA512 559ba0dbdc7542b6af5d101f19a5b3c9eab38b9996c26330834ffa924fd8c792988f223b492e6ac84255eccbc4af762be50c2d60e84ca24b7a9ebba134608c6d
diff --git a/sys-devel/gcc/files/gcc-15.0.1_pre20250302-firefox-ice.patch b/sys-devel/gcc/files/gcc-15.0.1_pre20250302-firefox-ice.patch
new file mode 100644
index 000000000000..6fbc91e926b1
--- /dev/null
+++ b/sys-devel/gcc/files/gcc-15.0.1_pre20250302-firefox-ice.patch
@@ -0,0 +1,99 @@
+https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=f22e89167b3abfbf6d67f42fc4d689d8ffdc1810
+https://gcc.gnu.org/PR119067
+
+From f22e89167b3abfbf6d67f42fc4d689d8ffdc1810 Mon Sep 17 00:00:00 2001
+From: Richard Biener <rguenther@suse.de>
+Date: Mon, 3 Mar 2025 09:54:15 +0100
+Subject: [PATCH] ipa/119067 - bogus TYPE_PRECISION check on VECTOR_TYPE
+
+odr_types_equivalent_p can end up using TYPE_PRECISION on vector
+types which is a no-go. The following instead uses TYPE_VECTOR_SUBPARTS
+for vector types so we also end up comparing the number of vector elements.
+
+ PR ipa/119067
+ * ipa-devirt.cc (odr_types_equivalent_p): Check
+ TYPE_VECTOR_SUBPARTS for vectors.
+
+ * g++.dg/lto/pr119067_0.C: New testcase.
+ * g++.dg/lto/pr119067_1.C: Likewise.
+---
+ gcc/ipa-devirt.cc | 10 +++++++++-
+ gcc/testsuite/g++.dg/lto/pr119067_0.C | 22 ++++++++++++++++++++++
+ gcc/testsuite/g++.dg/lto/pr119067_1.C | 10 ++++++++++
+ 3 files changed, 41 insertions(+), 1 deletion(-)
+ create mode 100644 gcc/testsuite/g++.dg/lto/pr119067_0.C
+ create mode 100644 gcc/testsuite/g++.dg/lto/pr119067_1.C
+
+diff --git a/gcc/ipa-devirt.cc b/gcc/ipa-devirt.cc
+index c31658f57ef2..532e25e87c60 100644
+--- a/gcc/ipa-devirt.cc
++++ b/gcc/ipa-devirt.cc
+@@ -1259,13 +1259,21 @@ odr_types_equivalent_p (tree t1, tree t2, bool warn, bool *warned,
+ || TREE_CODE (t1) == OFFSET_TYPE
+ || POINTER_TYPE_P (t1))
+ {
+- if (TYPE_PRECISION (t1) != TYPE_PRECISION (t2))
++ if (!VECTOR_TYPE_P (t1) && TYPE_PRECISION (t1) != TYPE_PRECISION (t2))
+ {
+ warn_odr (t1, t2, NULL, NULL, warn, warned,
+ G_("a type with different precision is defined "
+ "in another translation unit"));
+ return false;
+ }
++ if (VECTOR_TYPE_P (t1)
++ && maybe_ne (TYPE_VECTOR_SUBPARTS (t1), TYPE_VECTOR_SUBPARTS (t2)))
++ {
++ warn_odr (t1, t2, NULL, NULL, warn, warned,
++ G_("a vector type with different number of elements "
++ "is defined in another translation unit"));
++ return false;
++ }
+ if (TYPE_UNSIGNED (t1) != TYPE_UNSIGNED (t2))
+ {
+ warn_odr (t1, t2, NULL, NULL, warn, warned,
+diff --git a/gcc/testsuite/g++.dg/lto/pr119067_0.C b/gcc/testsuite/g++.dg/lto/pr119067_0.C
+new file mode 100644
+index 000000000000..e0f813ceffed
+--- /dev/null
++++ b/gcc/testsuite/g++.dg/lto/pr119067_0.C
+@@ -0,0 +1,22 @@
++/* { dg-lto-do link } */
++/* { dg-skip-if "" { ! { x86_64-*-* i?86-*-* } } } */
++/* { dg-require-effective-target avx2 } */
++/* { dg-require-effective-target shared } */
++/* { dg-lto-options { { -O2 -fPIC -flto } } } */
++/* { dg-extra-ld-options { -shared } } */
++
++#pragma GCC push_options
++#pragma GCC target("avx2")
++typedef char __v32qi __attribute__ ((__vector_size__ (32)));
++struct ff
++{
++ __v32qi t;
++};
++__v32qi g(struct ff a);
++
++__v32qi h(__v32qi a)
++{
++ struct ff t = {a};
++ return g(t);
++}
++#pragma GCC pop_options
+diff --git a/gcc/testsuite/g++.dg/lto/pr119067_1.C b/gcc/testsuite/g++.dg/lto/pr119067_1.C
+new file mode 100644
+index 000000000000..d8e2935fa24d
+--- /dev/null
++++ b/gcc/testsuite/g++.dg/lto/pr119067_1.C
+@@ -0,0 +1,10 @@
++/* { dg-options "-mavx2" } */
++
++typedef char __v32qi __attribute__ ((__vector_size__ (32)));
++struct ff
++{
++ __v32qi t;
++};
++__v32qi g(struct ff a) {
++ return a.t;
++}
+--
+2.43.5
diff --git a/sys-devel/gcc/files/gcc-15.0.1_pre20250302-firefox-pgo-ice.patch b/sys-devel/gcc/files/gcc-15.0.1_pre20250302-firefox-pgo-ice.patch
new file mode 100644
index 000000000000..9486b69147d3
--- /dev/null
+++ b/sys-devel/gcc/files/gcc-15.0.1_pre20250302-firefox-pgo-ice.patch
@@ -0,0 +1,58 @@
+https://inbox.sourceware.org/gcc-patches/ri6bjui45il.fsf@virgil.suse.cz/
+
+From 833d679c3c071b78dfb22015fe03d2cecfd650ec Mon Sep 17 00:00:00 2001
+Message-ID: <833d679c3c071b78dfb22015fe03d2cecfd650ec.1741019831.git.sam@gentoo.org>
+From: Martin Jambor <mjambor@suse.cz>
+Date: Mon, 3 Mar 2025 14:18:10 +0100
+Subject: [PATCH] ipa-cp: Avoid ICE when redistributing nodes among edges to
+ recursive clones (PR 118318)
+
+Hi,
+
+PR 118318 reported an ICE during PGO build of Firefox when IPA-CP, in
+the final stages of update_counts_for_self_gen_clones where it
+attempts to guess how to distribute profile count among clones created
+for recursive edges and the various edges that are created in the
+process. If one such edge has profile count of kind GUESSED_GLOBAL0,
+the compatibility check in the operator+ will lead to an ICE. After
+discussing the situation with Honza, we concluded that there is little
+more we can do other than check for this situation before touching the
+edge count, so this is what this patch does.
+
+Bootstrapped and LTO-profile-bootstrapped and tested on x86_64. OK for
+master? (Should I then backport this to active release branches? I
+guess it would make sense.)
+
+Thanks,
+
+Martin
+
+gcc/ChangeLog:
+
+2025-02-28 Martin Jambor <mjambor@suse.cz>
+
+PR ipa/118318
+ * ipa-cp.cc (adjust_clone_incoming_counts): Add a compatible_p check.
+---
+ gcc/ipa-cp.cc | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/gcc/ipa-cp.cc b/gcc/ipa-cp.cc
+index 3c994f24f540..264568989a96 100644
+--- a/gcc/ipa-cp.cc
++++ b/gcc/ipa-cp.cc
+@@ -4638,7 +4638,8 @@ adjust_clone_incoming_counts (cgraph_node *node,
+ cs->count = cs->count.combine_with_ipa_count (sum);
+ }
+ else if (!desc->processed_edges->contains (cs)
+- && cs->caller->clone_of == desc->orig)
++ && cs->caller->clone_of == desc->orig
++ && cs->count.compatible_p (desc->count))
+ {
+ cs->count += desc->count;
+ if (dump_file)
+
+base-commit: f1c30c6213fb228f1e8b5973d10c868b834a4acd
+--
+2.48.1
+
diff --git a/sys-devel/gcc/gcc-15.0.1_pre20250302-r1.ebuild b/sys-devel/gcc/gcc-15.0.1_pre20250302-r1.ebuild
new file mode 100644
index 000000000000..290862949c1d
--- /dev/null
+++ b/sys-devel/gcc/gcc-15.0.1_pre20250302-r1.ebuild
@@ -0,0 +1,54 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+TOOLCHAIN_PATCH_DEV="sam"
+TOOLCHAIN_HAS_TESTS=1
+PATCH_GCC_VER="15.0.0"
+PATCH_VER="46"
+MUSL_VER="2"
+MUSL_GCC_VER="15.0.0"
+PYTHON_COMPAT=( python3_{10..12} )
+
+if [[ -n ${TOOLCHAIN_GCC_RC} ]] ; then
+ # Cheesy hack for RCs
+ MY_PV=$(ver_cut 1).$((($(ver_cut 2) + 1))).$((($(ver_cut 3) - 1)))-RC-$(ver_cut 5)
+ MY_P=${PN}-${MY_PV}
+ GCC_TARBALL_SRC_URI="mirror://gcc/snapshots/${MY_PV}/${MY_P}.tar.xz"
+ TOOLCHAIN_SET_S=no
+ S="${WORKDIR}"/${MY_P}
+fi
+
+inherit toolchain
+
+if tc_is_live ; then
+ # Needs to be after inherit (for now?), bug #830908
+ EGIT_BRANCH=master
+elif [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then
+ # Don't keyword live ebuilds
+ #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+ :;
+fi
+
+if [[ ${CATEGORY} != cross-* ]] ; then
+ # Technically only if USE=hardened *too* right now, but no point in complicating it further.
+ # If GCC is enabling CET by default, we need glibc to be built with support for it.
+ # bug #830454
+ RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )"
+ DEPEND="${RDEPEND}"
+fi
+
+src_prepare() {
+ local p upstreamed_patches=(
+ # add them here
+ )
+ for p in "${upstreamed_patches[@]}"; do
+ rm -v "${WORKDIR}/patch/${p}" || die
+ done
+
+ toolchain_src_prepare
+ eapply "${FILESDIR}"/${P}-firefox-ice.patch
+ eapply "${FILESDIR}"/${P}-firefox-pgo-ice.patch
+ eapply_user
+}