From: "Sam James" <sam@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: app-arch/xz-utils/files/, app-arch/xz-utils/
Date: Mon, 4 Mar 2024 10:05:48 +0000 (UTC) [thread overview]
Message-ID: <1709546737.97ebdf452e739583cb3f1d5cbcff6bb145811e2a.sam@gentoo> (raw)
commit: 97ebdf452e739583cb3f1d5cbcff6bb145811e2a
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Mon Mar 4 10:03:49 2024 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Mar 4 10:05:37 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=97ebdf45
app-arch/xz-utils: workaround USE=pgo build failure
Workaround a build failure with USE=pgo by disabling instrumentation of the
crc{32,64} IFUNC resolvers.
No revbump as it shouldn't affect runtime at all - instrumentation would kill
it immediately if at all, it's not an issue from the profiled binaries, just
the instrumentation to profile them.
Bug: https://gcc.gnu.org/PR114115
Closes: https://bugs.gentoo.org/925415
Signed-off-by: Sam James <sam <AT> gentoo.org>
.../xz-utils-5.6.0-ifunc-crc-workaround.patch | 27 ++++++++++++++++++++++
app-arch/xz-utils/xz-utils-5.6.0-r1.ebuild | 1 +
2 files changed, 28 insertions(+)
diff --git a/app-arch/xz-utils/files/xz-utils-5.6.0-ifunc-crc-workaround.patch b/app-arch/xz-utils/files/xz-utils-5.6.0-ifunc-crc-workaround.patch
new file mode 100644
index 000000000000..e793aac56a78
--- /dev/null
+++ b/app-arch/xz-utils/files/xz-utils-5.6.0-ifunc-crc-workaround.patch
@@ -0,0 +1,27 @@
+https://bugs.gentoo.org/925415
+https://gcc.gnu.org/PR114115
+
+Workaround a build failure with USE=pgo by disabling instrumentation of the
+crc{32,64} IFUNC resolvers.
+--- a/src/liblzma/check/crc32_fast.c
++++ b/src/liblzma/check/crc32_fast.c
+@@ -135,7 +135,7 @@ typedef uint32_t (*crc32_func_type)(
+ // This resolver is shared between all three dispatch methods. It serves as
+ // the ifunc resolver if ifunc is supported, otherwise it is called as a
+ // regular function by the constructor or first call resolution methods.
+-static crc32_func_type
++static __attribute__((no_profile_instrument_function)) crc32_func_type
+ crc32_resolve(void)
+ {
+ return is_arch_extension_supported()
+--- a/src/liblzma/check/crc64_fast.c
++++ b/src/liblzma/check/crc64_fast.c
+@@ -98,7 +98,7 @@ typedef uint64_t (*crc64_func_type)(
+ # pragma GCC diagnostic ignored "-Wunused-function"
+ #endif
+
+-static crc64_func_type
++static __attribute__((no_profile_instrument_function)) crc64_func_type
+ crc64_resolve(void)
+ {
+ return is_arch_extension_supported()
diff --git a/app-arch/xz-utils/xz-utils-5.6.0-r1.ebuild b/app-arch/xz-utils/xz-utils-5.6.0-r1.ebuild
index 26708cb6aea1..7260487c61d5 100644
--- a/app-arch/xz-utils/xz-utils-5.6.0-r1.ebuild
+++ b/app-arch/xz-utils/xz-utils-5.6.0-r1.ebuild
@@ -55,6 +55,7 @@ fi
PATCHES=(
"${FILESDIR}"/${P}-logging-verbosity-threads-auto.patch
+ "${FILESDIR}"/${PN}-5.6.0-ifunc-crc-workaround.patch
)
src_prepare() {
next reply other threads:[~2024-03-04 10:05 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-03-04 10:05 Sam James [this message]
-- strict thread matches above, loose matches on Subject: below --
2023-12-28 4:04 [gentoo-commits] repo/gentoo:master commit in: app-arch/xz-utils/files/, app-arch/xz-utils/ Sam James
2022-04-07 18:11 Sam James
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1709546737.97ebdf452e739583cb3f1d5cbcff6bb145811e2a.sam@gentoo \
--to=sam@gentoo.org \
--cc=gentoo-commits@lists.gentoo.org \
--cc=gentoo-dev@lists.gentoo.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox