On Sat, 2022-02-12 at 10:42 -0800, Khem Raj wrote: > Drop upstreamed fixes for rdtsc [1] __udivmoddi4[2] > > [1] > https://sourceforge.net/p/mingw-w64/mingw-w64/ci/6a0e9165008f731bccadfc41a59719cf7c8efc02/ > [2] > https://sourceforge.net/p/mingw-w64/mingw-w64/ci/ab0fa5ad3c67d634fd7754d9473d1bb7051f9bf0/ > > Signed-off-by: Khem Raj <[email protected]> > --- > ...rincs-Check-for-__builtin_ia32_rdtsc.patch | 33 ------------ > .../0001-winpthreads-Add-__udivmoddi4.patch | 52 ------------------- > recipes-devtools/mingw-w64/mingw-w64.inc | 4 +- > ...b => nativesdk-mingw-w64-headers_9.0.0.bb} | 0 > ...b => nativesdk-mingw-w64-runtime_9.0.0.bb} | 2 - > ... nativesdk-mingw-w64-winpthreads_9.0.0.bb} | 2 - > 6 files changed, 1 insertion(+), 92 deletions(-) > delete mode 100644 > recipes-devtools/mingw-w64/files/0001-intrincs-Check-for-__builtin_ia32_rdtsc.patch > delete mode 100644 > recipes-devtools/mingw-w64/files/0001-winpthreads-Add-__udivmoddi4.patch > rename recipes-devtools/mingw-w64/{nativesdk-mingw-w64-headers_8.0.0.bb => > nativesdk-mingw-w64-headers_9.0.0.bb} (100%) > rename recipes-devtools/mingw-w64/{nativesdk-mingw-w64-runtime_8.0.0.bb => > nativesdk-mingw-w64-runtime_9.0.0.bb} (88%) > rename recipes-devtools/mingw-w64/{nativesdk-mingw-w64-winpthreads_8.0.0.bb > => nativesdk-mingw-w64-winpthreads_9.0.0.bb} (87%) > > diff --git > a/recipes-devtools/mingw-w64/files/0001-intrincs-Check-for-__builtin_ia32_rdtsc.patch > > b/recipes-devtools/mingw-w64/files/0001-intrincs-Check-for-__builtin_ia32_rdtsc.patch > deleted file mode 100644 > index ce4ba81..0000000 > --- > a/recipes-devtools/mingw-w64/files/0001-intrincs-Check-for-__builtin_ia32_rdtsc.patch > +++ /dev/null > @@ -1,33 +0,0 @@ > -From 346de7591f58015d111f4d4f3b001382c04d5557 Mon Sep 17 00:00:00 2001 > -From: Khem Raj <[email protected]> > -Date: Tue, 13 Apr 2021 18:44:25 -0700 > -Subject: [PATCH] intrincs: Check for __builtin_ia32_rdtsc > - > -on modern gcc ( >=4.6 ) __rdtsc function is implemented using > -special builtin function called __builtin_ia32_rdtsc, its actually > -a define in gcc, so __has_builtin check fails for __rdtsc even > -though it is defined to imply __builtin_ia32_rdtsc(), therefore > -check for existence of __builtin_ia32_rdtsc as well > - > -Upstream-Status: Pending > -Signed-off-by: Khem Raj <[email protected]> > ---- > - mingw-w64-crt/intrincs/rdtsc.c | 2 +- > - 1 file changed, 1 insertion(+), 1 deletion(-) > - > -diff --git a/mingw-w64-crt/intrincs/rdtsc.c b/mingw-w64-crt/intrincs/rdtsc.c > -index bf9c03b..df04711 100644 > ---- a/mingw-w64-crt/intrincs/rdtsc.c > -+++ b/mingw-w64-crt/intrincs/rdtsc.c > -@@ -11,7 +11,7 @@ > - #define __has_builtin(x) 0 > - #endif > - > --#if !__has_builtin(__rdtsc) > -+#if !__has_builtin(__rdtsc) && !__has_builtin(__builtin_ia32_rdtsc) > - unsigned __int64 __rdtsc(void) > - { > - #ifdef _WIN64 > --- > -2.31.1 > - > diff --git > a/recipes-devtools/mingw-w64/files/0001-winpthreads-Add-__udivmoddi4.patch > b/recipes-devtools/mingw-w64/files/0001-winpthreads-Add-__udivmoddi4.patch > deleted file mode 100644 > index 3eb298e..0000000 > --- a/recipes-devtools/mingw-w64/files/0001-winpthreads-Add-__udivmoddi4.patch > +++ /dev/null > @@ -1,52 +0,0 @@ > -From 3b0af7327446ae179dc93b6a6ab1074251d348d0 Mon Sep 17 00:00:00 2001 > -From: Khem Raj <[email protected]> > -Date: Fri, 30 Apr 2021 16:50:36 -0700 > -Subject: [PATCH] winpthreads: Add __udivmoddi4 > - > -Newer GCC ( 11.1.0+ ) is generating calls to __udivmoddi4 on i686 > -architecture, therefore provide an implementation to avoid undefined > -references > - > -Upstream-Status: Pending > -Signed-off-by: Khem Raj <[email protected]> > ---- > - .../winpthreads/src/libgcc/dll_math.c | 16 +++++++++++++++- > - 1 file changed, 15 insertions(+), 1 deletion(-) > - > -diff --git a/mingw-w64-libraries/winpthreads/src/libgcc/dll_math.c > b/mingw-w64-libraries/winpthreads/src/libgcc/dll_math.c > -index aeec068..d170967 100644 > ---- a/mingw-w64-libraries/winpthreads/src/libgcc/dll_math.c > -+++ b/mingw-w64-libraries/winpthreads/src/libgcc/dll_math.c > -@@ -121,6 +121,7 @@ u_quad_t __udivdi3(u_quad_t a, u_quad_t b); > - u_quad_t __umoddi3(u_quad_t a, u_quad_t b); > - int __ucmpdi2(u_quad_t a, u_quad_t b); > - quad_t __divmoddi4(quad_t a, quad_t b, quad_t *rem); > -+u_quad_t __udivmoddi4(u_quad_t a, u_quad_t b, u_quad_t *rem); > - > - #endif /* !_LIBKERN_QUAD_H_ */ > - > -@@ -573,7 +574,20 @@ __divmoddi4(a, b, rem) > - return (negq ? -uq : uq); > - } > - > -+/* > -+ * Divide two unsigned quads. > -+ * This function is new in GCC 7. > -+ */ > -+u_quad_t > -+__udivmoddi4(a, b, rem) > -+ u_quad_t a, b, *rem; > -+{ > -+ u_quad_t q = __udivdi3(a, b); > -+ if (rem) > -+ *rem = a - b * q; > -+ return q; > -+} > -+ > - #else > - static int __attribute__((unused)) dummy; > - #endif /*deined (_X86_) && !defined (__x86_64__)*/ > -- > --- > -2.31.1 > - > diff --git a/recipes-devtools/mingw-w64/mingw-w64.inc > b/recipes-devtools/mingw-w64/mingw-w64.inc > index d40d4a5..322fb79 100644 > --- a/recipes-devtools/mingw-w64/mingw-w64.inc > +++ b/recipes-devtools/mingw-w64/mingw-w64.inc > @@ -5,9 +5,7 @@ COMPATIBLE_HOST = ".*-mingw.*" > > SRC_URI = > "${SOURCEFORGE_MIRROR}/project/mingw-w64/mingw-w64/mingw-w64-release/mingw-w64-v${PV}.tar.bz2" > > -SRC_URI[sha256sum] = > "44c740ea6ab3924bc3aa169bad11ad3c5766c5c8459e3126d44eabb8735a5762" > +SRC_URI[sha256sum] = > "1929b94b402f5ff4d7d37a9fe88daa9cc55515a6134805c104d1794ae22a4181" > > UPSTREAM_CHECK_URI = > "http://sourceforge.net/projects/mingw-w64/files/mingw-w64/mingw-w64-release/" > UPSTREAM_CHECK_REGEX = "mingw-w64-v(?P<pver>(\d+[\.\-_]*)+)\.tar" > - > - > diff --git a/recipes-devtools/mingw-w64/nativesdk-mingw-w64-headers_8.0.0.bb > b/recipes-devtools/mingw-w64/nativesdk-mingw-w64-headers_9.0.0.bb > similarity index 100% > rename from recipes-devtools/mingw-w64/nativesdk-mingw-w64-headers_8.0.0.bb > rename to recipes-devtools/mingw-w64/nativesdk-mingw-w64-headers_9.0.0.bb > diff --git a/recipes-devtools/mingw-w64/nativesdk-mingw-w64-runtime_8.0.0.bb > b/recipes-devtools/mingw-w64/nativesdk-mingw-w64-runtime_9.0.0.bb > similarity index 88% > rename from recipes-devtools/mingw-w64/nativesdk-mingw-w64-runtime_8.0.0.bb > rename to recipes-devtools/mingw-w64/nativesdk-mingw-w64-runtime_9.0.0.bb > index 02132c1..e2ca6a5 100644 > --- a/recipes-devtools/mingw-w64/nativesdk-mingw-w64-runtime_8.0.0.bb > +++ b/recipes-devtools/mingw-w64/nativesdk-mingw-w64-runtime_9.0.0.bb > @@ -2,8 +2,6 @@ DESCRIPTION = "Runtime libraries from MinGW-w64 project" > > require mingw-w64.inc > > -SRC_URI += > "file://0001-intrincs-Check-for-__builtin_ia32_rdtsc.patch;striplevel=2" > - > S = "${WORKDIR}/mingw-w64-v${PV}/mingw-w64-crt" > B = "${WORKDIR}/build-${TARGET_SYS}" > > diff --git > a/recipes-devtools/mingw-w64/nativesdk-mingw-w64-winpthreads_8.0.0.bb > b/recipes-devtools/mingw-w64/nativesdk-mingw-w64-winpthreads_9.0.0.bb > similarity index 87% > rename from > recipes-devtools/mingw-w64/nativesdk-mingw-w64-winpthreads_8.0.0.bb > rename to recipes-devtools/mingw-w64/nativesdk-mingw-w64-winpthreads_9.0.0.bb > index 38092dc..fb7e54e 100644 > --- a/recipes-devtools/mingw-w64/nativesdk-mingw-w64-winpthreads_8.0.0.bb > +++ b/recipes-devtools/mingw-w64/nativesdk-mingw-w64-winpthreads_9.0.0.bb > @@ -2,8 +2,6 @@ DESCRIPTION = "Winpthreads runtime libraries from MinGW-w64 > project" > > require mingw-w64.inc > > -SRC_URI += "file://0001-winpthreads-Add-__udivmoddi4.patch;striplevel=3" > - > S = "${WORKDIR}/mingw-w64-v${PV}/mingw-w64-libraries/winpthreads" > B = "${WORKDIR}/build-${TARGET_SYS}"
With these two patches and the binutils upgrade we see a new issue: https://autobuilder.yoctoproject.org/typhoon/#/builders/89/builds/4733/steps/12/logs/stdio Cheers, Richard
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#56171): https://lists.yoctoproject.org/g/yocto/message/56171 Mute This Topic: https://lists.yoctoproject.org/mt/89099010/21656 Group Owner: [email protected] Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub [[email protected]] -=-=-=-=-=-=-=-=-=-=-=-
