winpthreads: Add `__udivmoddi4()`
Like 431ac2a912708546cd7271332e9331399e66bc62 but this is for GCC 11.
It is identical to `__qdivrem()`.
Reference: https://sourceforge.net/p/mingw-w64/mailman/message/37276246/
Signed-off-by: Liu Hao <lh_mouse@126.com>
(cherry picked from commit ab0fa5ad3c67d634fd7754d9473d1bb7051f9bf0)
Signed-off-by: Jonathan Yong <10walls@gmail.com>
diff --git a/mingw-w64-libraries/winpthreads/src/libgcc/dll_math.c b/mingw-w64-libraries/winpthreads/src/libgcc/dll_math.c
index aeec068..77bb1fe 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 __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,6 +574,12 @@
return (negq ? -uq : uq);
}
+u_quad_t
+__udivmoddi4(u_quad_t a, u_quad_t b, u_quad_t *rem)
+{
+ return __qdivrem(a, b, rem);
+}
+
#else
static int __attribute__((unused)) dummy;
#endif /*deined (_X86_) && !defined (__x86_64__)*/