Message ID | 20250108033627.2889555-1-raj.khem@gmail.com |
---|---|
State | New |
Headers | show |
Series | glibc: Revert clang float128 patch | expand |
ignore this one patch please. On Tue, Jan 7, 2025 at 7:36 PM Khem Raj <raj.khem@gmail.com> wrote: > > Signed-off-by: Khem Raj <raj.khem@gmail.com> > --- > ...e-__HAVE_FLOAT128-for-Clang-and-use-.patch | 87 +++++++++++++++++++ > meta/recipes-core/glibc/glibc_2.41.bb | 1 + > 2 files changed, 88 insertions(+) > create mode 100644 meta/recipes-core/glibc/glibc/0001-Revert-x86-Define-__HAVE_FLOAT128-for-Clang-and-use-.patch > > diff --git a/meta/recipes-core/glibc/glibc/0001-Revert-x86-Define-__HAVE_FLOAT128-for-Clang-and-use-.patch b/meta/recipes-core/glibc/glibc/0001-Revert-x86-Define-__HAVE_FLOAT128-for-Clang-and-use-.patch > new file mode 100644 > index 00000000000..88823cb95bc > --- /dev/null > +++ b/meta/recipes-core/glibc/glibc/0001-Revert-x86-Define-__HAVE_FLOAT128-for-Clang-and-use-.patch > @@ -0,0 +1,87 @@ > +From b662179d7c679e423b8595e0509253688544a4fd Mon Sep 17 00:00:00 2001 > +From: Khem Raj <raj.khem@gmail.com> > +Date: Thu, 26 Dec 2024 18:59:26 -0800 > +Subject: [PATCH] Revert "x86: Define __HAVE_FLOAT128 for Clang and use > + __builtin_*f128 code path" > + > +This reverts commit d773aff467840f5ed305e40c180466e90bd88183. > + > +Upstream-Status: Pending > +Signed-off-by: Khem Raj <raj.khem@gmail.com> > +--- > + sysdeps/x86/bits/floatn.h | 24 ++++++++---------------- > + 1 file changed, 8 insertions(+), 16 deletions(-) > + > +diff --git a/sysdeps/x86/bits/floatn.h b/sysdeps/x86/bits/floatn.h > +index ba030d270a..e661abaea4 100644 > +--- a/sysdeps/x86/bits/floatn.h > ++++ b/sysdeps/x86/bits/floatn.h > +@@ -28,8 +28,7 @@ > + support, for x86_64 and x86. */ > + #if (defined __x86_64__ \ > + ? __GNUC_PREREQ (4, 3) \ > +- : (defined __GNU__ ? __GNUC_PREREQ (4, 5) : __GNUC_PREREQ (4, 4))) \ > +- || __glibc_clang_prereq (3, 4) > ++ : (defined __GNU__ ? __GNUC_PREREQ (4, 5) : __GNUC_PREREQ (4, 4))) > + # define __HAVE_FLOAT128 1 > + #else > + # define __HAVE_FLOAT128 0 > +@@ -59,9 +58,7 @@ > + /* Defined to concatenate the literal suffix to be used with _Float128 > + types, if __HAVE_FLOAT128 is 1. */ > + # if __HAVE_FLOAT128 > +-# if !__GNUC_PREREQ (7, 0) \ > +- || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) \ > +- || defined __clang__ > ++# if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) > + /* The literal suffix f128 exists only since GCC 7.0. */ > + # define __f128(x) x##q > + # else > +@@ -71,9 +68,7 @@ > + > + /* Defined to a complex binary128 type if __HAVE_FLOAT128 is 1. */ > + # if __HAVE_FLOAT128 > +-# if !__GNUC_PREREQ (7, 0) \ > +- || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) \ > +- || defined __clang__ > ++# if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) > + /* Add a typedef for older GCC compilers which don't natively support > + _Complex _Float128. */ > + typedef _Complex float __cfloat128 __attribute__ ((__mode__ (__TC__))); > +@@ -87,14 +82,12 @@ typedef _Complex float __cfloat128 __attribute__ ((__mode__ (__TC__))); > + # if __HAVE_FLOAT128 > + > + /* The type _Float128 exists only since GCC 7.0. */ > +-# if !__GNUC_PREREQ (7, 0) \ > +- || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) \ > +- || __glibc_clang_prereq (3, 4) > ++# if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) > + typedef __float128 _Float128; > + # endif > + > +-/* __builtin_huge_valf128 doesn't exist before GCC 7.0 nor Clang 7.0. */ > +-# if !__GNUC_PREREQ (7, 0) && !__glibc_clang_prereq (7, 0) > ++/* __builtin_huge_valf128 doesn't exist before GCC 7.0. */ > ++# if !__GNUC_PREREQ (7, 0) > + # define __builtin_huge_valf128() ((_Float128) __builtin_huge_val ()) > + # endif > + > +@@ -103,7 +96,7 @@ typedef __float128 _Float128; > + Converting a narrower sNaN to _Float128 produces a quiet NaN, so > + attempts to use _Float128 sNaNs will not work properly with older > + compilers. */ > +-# if !__GNUC_PREREQ (7, 0) && !defined __clang__ > ++# if !__GNUC_PREREQ (7, 0) > + # define __builtin_copysignf128 __builtin_copysignq > + # define __builtin_fabsf128 __builtin_fabsq > + # define __builtin_inff128() ((_Float128) __builtin_inf ()) > +@@ -114,8 +107,7 @@ typedef __float128 _Float128; > + /* In math/math.h, __MATH_TG will expand signbit to __builtin_signbit*, > + e.g.: __builtin_signbitf128, before GCC 6. However, there has never > + been a __builtin_signbitf128 in GCC and the type-generic builtin is > +- only available since GCC 6. signbit is expanded to __builtin_signbit > +- after Clang 3.3. */ > ++ only available since GCC 6. */ > + # if !__GNUC_PREREQ (6, 0) > + # define __builtin_signbitf128 __signbitf128 > + # endif > diff --git a/meta/recipes-core/glibc/glibc_2.41.bb b/meta/recipes-core/glibc/glibc_2.41.bb > index 7f2576692d6..70afc78a55c 100644 > --- a/meta/recipes-core/glibc/glibc_2.41.bb > +++ b/meta/recipes-core/glibc/glibc_2.41.bb > @@ -54,6 +54,7 @@ SRC_URI = "${GLIBC_GIT_URI};branch=${SRCBRANCH};name=glibc \ > file://0022-Avoid-hardcoded-build-time-paths-in-the-output-binar.patch \ > file://0023-tests-Skip-2-qemu-tests-that-can-hang-in-oe-selftest.patch \ > file://0024-features.h-Bump-__GLIBC_MINOR__-to-next-release-on-m.patch \ > + file://0001-Revert-x86-Define-__HAVE_FLOAT128-for-Clang-and-use-.patch \ > " > S = "${WORKDIR}/git" > B = "${WORKDIR}/build-${TARGET_SYS}"
Thank you for your submission. Patchtest identified one or more issues with the patch. Please see the log below for more information: --- Testing patch /home/patchtest/share/mboxes/glibc-Revert-clang-float128-patch.patch FAIL: test commit message presence: Please include a commit message on your patch explaining the change (test_mbox.TestMbox.test_commit_message_presence) PASS: pretest src uri left files (test_metadata.TestMetadata.pretest_src_uri_left_files) PASS: test CVE check ignore (test_metadata.TestMetadata.test_cve_check_ignore) PASS: test CVE tag format (test_patch.TestPatch.test_cve_tag_format) PASS: test Signed-off-by presence (test_mbox.TestMbox.test_signed_off_by_presence) PASS: test Signed-off-by presence (test_patch.TestPatch.test_signed_off_by_presence) PASS: test Upstream-Status presence (test_patch.TestPatch.test_upstream_status_presence_format) PASS: test author valid (test_mbox.TestMbox.test_author_valid) PASS: test commit message user tags (test_mbox.TestMbox.test_commit_message_user_tags) PASS: test lic files chksum modified not mentioned (test_metadata.TestMetadata.test_lic_files_chksum_modified_not_mentioned) PASS: test max line length (test_metadata.TestMetadata.test_max_line_length) PASS: test mbox format (test_mbox.TestMbox.test_mbox_format) PASS: test non-AUH upgrade (test_mbox.TestMbox.test_non_auh_upgrade) PASS: test shortlog format (test_mbox.TestMbox.test_shortlog_format) PASS: test shortlog length (test_mbox.TestMbox.test_shortlog_length) PASS: test src uri left files (test_metadata.TestMetadata.test_src_uri_left_files) PASS: test target mailing list (test_mbox.TestMbox.test_target_mailing_list) SKIP: pretest pylint: No python related patches, skipping test (test_python_pylint.PyLint.pretest_pylint) SKIP: test bugzilla entry format: No bug ID found (test_mbox.TestMbox.test_bugzilla_entry_format) SKIP: test lic files chksum presence: No added recipes, skipping test (test_metadata.TestMetadata.test_lic_files_chksum_presence) SKIP: test license presence: No added recipes, skipping test (test_metadata.TestMetadata.test_license_presence) SKIP: test pylint: No python related patches, skipping test (test_python_pylint.PyLint.test_pylint) SKIP: test series merge on head: Merge test is disabled for now (test_mbox.TestMbox.test_series_merge_on_head) SKIP: test summary presence: No added recipes, skipping test (test_metadata.TestMetadata.test_summary_presence) --- Please address the issues identified and submit a new revision of the patch, or alternatively, reply to this email with an explanation of why the patch should be accepted. If you believe these results are due to an error in patchtest, please submit a bug at https://bugzilla.yoctoproject.org/ (use the 'Patchtest' category under 'Yocto Project Subprojects'). For more information on specific failures, see: https://wiki.yoctoproject.org/wiki/Patchtest. Thank you!
On Tue, 2025-01-07 at 19:36 -0800, Khem Raj via lists.openembedded.org wrote: > Signed-off-by: Khem Raj <raj.khem@gmail.com> > --- > ...e-__HAVE_FLOAT128-for-Clang-and-use-.patch | 87 +++++++++++++++++++ > meta/recipes-core/glibc/glibc_2.41.bb | 1 + > 2 files changed, 88 insertions(+) > create mode 100644 meta/recipes-core/glibc/glibc/0001-Revert-x86-Define-__HAVE_FLOAT128-for-Clang-and-use-.patch > > diff --git a/meta/recipes-core/glibc/glibc/0001-Revert-x86-Define-__HAVE_FLOAT128-for-Clang-and-use-.patch b/meta/recipes-core/glibc/glibc/0001-Revert-x86-Define-__HAVE_FLOAT128-for-Clang-and-use-.patch > new file mode 100644 > index 00000000000..88823cb95bc > --- /dev/null > +++ b/meta/recipes-core/glibc/glibc/0001-Revert-x86-Define-__HAVE_FLOAT128-for-Clang-and-use-.patch > @@ -0,0 +1,87 @@ > +From b662179d7c679e423b8595e0509253688544a4fd Mon Sep 17 00:00:00 2001 > +From: Khem Raj <raj.khem@gmail.com> > +Date: Thu, 26 Dec 2024 18:59:26 -0800 > +Subject: [PATCH] Revert "x86: Define __HAVE_FLOAT128 for Clang and use > + __builtin_*f128 code path" > + > +This reverts commit d773aff467840f5ed305e40c180466e90bd88183. > + > +Upstream-Status: Pending > +Signed-off-by: Khem Raj <raj.khem@gmail.com> > +--- > + sysdeps/x86/bits/floatn.h | 24 ++++++++---------------- > + 1 file changed, 8 insertions(+), 16 deletions(-) > + Why? Neither the commit message or the patch header have any information about why we need to do this... Cheers, Richard
On Wed, Jan 8, 2025 at 5:23 AM Richard Purdie < richard.purdie@linuxfoundation.org> wrote: > On Tue, 2025-01-07 at 19:36 -0800, Khem Raj via lists.openembedded.org > wrote: > > Signed-off-by: Khem Raj <raj.khem@gmail.com> > > --- > > ...e-__HAVE_FLOAT128-for-Clang-and-use-.patch | 87 +++++++++++++++++++ > > meta/recipes-core/glibc/glibc_2.41.bb | 1 + > > 2 files changed, 88 insertions(+) > > create mode 100644 > meta/recipes-core/glibc/glibc/0001-Revert-x86-Define-__HAVE_FLOAT128-for-Clang-and-use-.patch > > > > diff --git > a/meta/recipes-core/glibc/glibc/0001-Revert-x86-Define-__HAVE_FLOAT128-for-Clang-and-use-.patch > b/meta/recipes-core/glibc/glibc/0001-Revert-x86-Define-__HAVE_FLOAT128-for-Clang-and-use-.patch > > new file mode 100644 > > index 00000000000..88823cb95bc > > --- /dev/null > > +++ > b/meta/recipes-core/glibc/glibc/0001-Revert-x86-Define-__HAVE_FLOAT128-for-Clang-and-use-.patch > > @@ -0,0 +1,87 @@ > > +From b662179d7c679e423b8595e0509253688544a4fd Mon Sep 17 00:00:00 2001 > > +From: Khem Raj <raj.khem@gmail.com> > > +Date: Thu, 26 Dec 2024 18:59:26 -0800 > > +Subject: [PATCH] Revert "x86: Define __HAVE_FLOAT128 for Clang and use > > + __builtin_*f128 code path" > > + > > +This reverts commit d773aff467840f5ed305e40c180466e90bd88183. > > + > > +Upstream-Status: Pending > > +Signed-off-by: Khem Raj <raj.khem@gmail.com> > > +--- > > + sysdeps/x86/bits/floatn.h | 24 ++++++++---------------- > > + 1 file changed, 8 insertions(+), 16 deletions(-) > > + > > Why? > > Neither the commit message or the patch header have any information > about why we need to do this... I sent it by mistake local workaround for fixing mpfr with glibc 2.41 > > > Cheers, > > Richard >
diff --git a/meta/recipes-core/glibc/glibc/0001-Revert-x86-Define-__HAVE_FLOAT128-for-Clang-and-use-.patch b/meta/recipes-core/glibc/glibc/0001-Revert-x86-Define-__HAVE_FLOAT128-for-Clang-and-use-.patch new file mode 100644 index 00000000000..88823cb95bc --- /dev/null +++ b/meta/recipes-core/glibc/glibc/0001-Revert-x86-Define-__HAVE_FLOAT128-for-Clang-and-use-.patch @@ -0,0 +1,87 @@ +From b662179d7c679e423b8595e0509253688544a4fd Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Thu, 26 Dec 2024 18:59:26 -0800 +Subject: [PATCH] Revert "x86: Define __HAVE_FLOAT128 for Clang and use + __builtin_*f128 code path" + +This reverts commit d773aff467840f5ed305e40c180466e90bd88183. + +Upstream-Status: Pending +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- + sysdeps/x86/bits/floatn.h | 24 ++++++++---------------- + 1 file changed, 8 insertions(+), 16 deletions(-) + +diff --git a/sysdeps/x86/bits/floatn.h b/sysdeps/x86/bits/floatn.h +index ba030d270a..e661abaea4 100644 +--- a/sysdeps/x86/bits/floatn.h ++++ b/sysdeps/x86/bits/floatn.h +@@ -28,8 +28,7 @@ + support, for x86_64 and x86. */ + #if (defined __x86_64__ \ + ? __GNUC_PREREQ (4, 3) \ +- : (defined __GNU__ ? __GNUC_PREREQ (4, 5) : __GNUC_PREREQ (4, 4))) \ +- || __glibc_clang_prereq (3, 4) ++ : (defined __GNU__ ? __GNUC_PREREQ (4, 5) : __GNUC_PREREQ (4, 4))) + # define __HAVE_FLOAT128 1 + #else + # define __HAVE_FLOAT128 0 +@@ -59,9 +58,7 @@ + /* Defined to concatenate the literal suffix to be used with _Float128 + types, if __HAVE_FLOAT128 is 1. */ + # if __HAVE_FLOAT128 +-# if !__GNUC_PREREQ (7, 0) \ +- || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) \ +- || defined __clang__ ++# if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) + /* The literal suffix f128 exists only since GCC 7.0. */ + # define __f128(x) x##q + # else +@@ -71,9 +68,7 @@ + + /* Defined to a complex binary128 type if __HAVE_FLOAT128 is 1. */ + # if __HAVE_FLOAT128 +-# if !__GNUC_PREREQ (7, 0) \ +- || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) \ +- || defined __clang__ ++# if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) + /* Add a typedef for older GCC compilers which don't natively support + _Complex _Float128. */ + typedef _Complex float __cfloat128 __attribute__ ((__mode__ (__TC__))); +@@ -87,14 +82,12 @@ typedef _Complex float __cfloat128 __attribute__ ((__mode__ (__TC__))); + # if __HAVE_FLOAT128 + + /* The type _Float128 exists only since GCC 7.0. */ +-# if !__GNUC_PREREQ (7, 0) \ +- || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) \ +- || __glibc_clang_prereq (3, 4) ++# if !__GNUC_PREREQ (7, 0) || (defined __cplusplus && !__GNUC_PREREQ (13, 0)) + typedef __float128 _Float128; + # endif + +-/* __builtin_huge_valf128 doesn't exist before GCC 7.0 nor Clang 7.0. */ +-# if !__GNUC_PREREQ (7, 0) && !__glibc_clang_prereq (7, 0) ++/* __builtin_huge_valf128 doesn't exist before GCC 7.0. */ ++# if !__GNUC_PREREQ (7, 0) + # define __builtin_huge_valf128() ((_Float128) __builtin_huge_val ()) + # endif + +@@ -103,7 +96,7 @@ typedef __float128 _Float128; + Converting a narrower sNaN to _Float128 produces a quiet NaN, so + attempts to use _Float128 sNaNs will not work properly with older + compilers. */ +-# if !__GNUC_PREREQ (7, 0) && !defined __clang__ ++# if !__GNUC_PREREQ (7, 0) + # define __builtin_copysignf128 __builtin_copysignq + # define __builtin_fabsf128 __builtin_fabsq + # define __builtin_inff128() ((_Float128) __builtin_inf ()) +@@ -114,8 +107,7 @@ typedef __float128 _Float128; + /* In math/math.h, __MATH_TG will expand signbit to __builtin_signbit*, + e.g.: __builtin_signbitf128, before GCC 6. However, there has never + been a __builtin_signbitf128 in GCC and the type-generic builtin is +- only available since GCC 6. signbit is expanded to __builtin_signbit +- after Clang 3.3. */ ++ only available since GCC 6. */ + # if !__GNUC_PREREQ (6, 0) + # define __builtin_signbitf128 __signbitf128 + # endif diff --git a/meta/recipes-core/glibc/glibc_2.41.bb b/meta/recipes-core/glibc/glibc_2.41.bb index 7f2576692d6..70afc78a55c 100644 --- a/meta/recipes-core/glibc/glibc_2.41.bb +++ b/meta/recipes-core/glibc/glibc_2.41.bb @@ -54,6 +54,7 @@ SRC_URI = "${GLIBC_GIT_URI};branch=${SRCBRANCH};name=glibc \ file://0022-Avoid-hardcoded-build-time-paths-in-the-output-binar.patch \ file://0023-tests-Skip-2-qemu-tests-that-can-hang-in-oe-selftest.patch \ file://0024-features.h-Bump-__GLIBC_MINOR__-to-next-release-on-m.patch \ + file://0001-Revert-x86-Define-__HAVE_FLOAT128-for-Clang-and-use-.patch \ " S = "${WORKDIR}/git" B = "${WORKDIR}/build-${TARGET_SYS}"
Signed-off-by: Khem Raj <raj.khem@gmail.com> --- ...e-__HAVE_FLOAT128-for-Clang-and-use-.patch | 87 +++++++++++++++++++ meta/recipes-core/glibc/glibc_2.41.bb | 1 + 2 files changed, 88 insertions(+) create mode 100644 meta/recipes-core/glibc/glibc/0001-Revert-x86-Define-__HAVE_FLOAT128-for-Clang-and-use-.patch