]> git.pld-linux.org Git - packages/VirtualBox.git/blob - add__divmoddi4.patch
up to 6.1.24
[packages/VirtualBox.git] / add__divmoddi4.patch
1 add __divmoddi4 builtin
2
3 GCC 11 will generate it in code
4
5 void foo(unsigned char *u8Second, unsigned int *u32Nanosecond, long long timeSpec)
6 {
7     long long i64Div;
8     int i32Div;
9     int i32Rem;
10     i64Div = timeSpec;
11     i32Rem = (int)(i64Div % 1000000000);
12     i64Div /= 1000000000;
13     *u32Nanosecond = i32Rem;
14     i32Rem = (int)(i64Div % 60);
15     *u8Second = i32Rem;
16 }
17
18
19 Upstream-Status: Pending
20 Signed-off-by: Khem Raj <raj.khem@gmail.com>
21
22 --- a/src/VBox/Runtime/common/math/gcc/divdi3.c
23 +++ b/src/VBox/Runtime/common/math/gcc/divdi3.c
24 @@ -68,3 +68,12 @@ __divdi3(a, b)
25                 uq = - uq;
26         return uq;
27  }
28 +
29 +quad_t
30 +__divmoddi4(quad_t a, quad_t b, quad_t* rem)
31 +{
32 +       quad_t d = __divdi3(a,b);
33 +       *rem = a - (d*b);
34 +       return d;
35 +}
36 +
This page took 0.032697 seconds and 3 git commands to generate.