mirror of
git://git.openembedded.org/meta-openembedded
synced 2026-01-01 13:58:06 +00:00
vboxguestdrivers: Add __divmoddi4 builtin support
gcc 11 needs it on i686
Signed-off-by: Khem Raj <raj.khem@gmail.com>
(cherry picked from commit 57f7692e8e)
Signed-off-by: Armin Kuster <akuster808@gmail.com>
This commit is contained in:
parent
4435dfaa9e
commit
12bc39d8c5
|
|
@ -0,0 +1,36 @@
|
|||
add __divmoddi4 builtin
|
||||
|
||||
GCC 11 will generate it in code
|
||||
|
||||
void foo(unsigned char *u8Second, unsigned int *u32Nanosecond, long long timeSpec)
|
||||
{
|
||||
long long i64Div;
|
||||
int i32Div;
|
||||
int i32Rem;
|
||||
i64Div = timeSpec;
|
||||
i32Rem = (int)(i64Div % 1000000000);
|
||||
i64Div /= 1000000000;
|
||||
*u32Nanosecond = i32Rem;
|
||||
i32Rem = (int)(i64Div % 60);
|
||||
*u8Second = i32Rem;
|
||||
}
|
||||
|
||||
|
||||
Upstream-Status: Pending
|
||||
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
|
||||
--- a/src/VBox/Runtime/common/math/gcc/divdi3.c
|
||||
+++ b/src/VBox/Runtime/common/math/gcc/divdi3.c
|
||||
@@ -68,3 +68,12 @@ __divdi3(a, b)
|
||||
uq = - uq;
|
||||
return uq;
|
||||
}
|
||||
+
|
||||
+quad_t
|
||||
+__divmoddi4(quad_t a, quad_t b, quad_t* rem)
|
||||
+{
|
||||
+ quad_t d = __divdi3(a,b);
|
||||
+ *rem = a - (d*b);
|
||||
+ return d;
|
||||
+}
|
||||
+
|
||||
|
|
@ -14,6 +14,7 @@ VBOX_NAME = "VirtualBox-${PV}"
|
|||
SRC_URI = "http://download.virtualbox.org/virtualbox/${PV}/${VBOX_NAME}.tar.bz2 \
|
||||
file://Makefile.utils \
|
||||
file://kernel-5.10.patch \
|
||||
file://add__divmoddi4.patch \
|
||||
"
|
||||
SRC_URI[md5sum] = "c61001386eb3822ab8f06d688a82e84b"
|
||||
SRC_URI[sha256sum] = "108d42b9b391b7a332a33df1662cf7b0e9d9a80f3079d16288d8b9487f427d40"
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user