1e57a462 |
1 | /** @file\r |
2 | \r |
3 | Copyright (c) 2008 - 2010, Apple Inc. All rights reserved.<BR>\r |
3402aac7 |
4 | \r |
1e57a462 |
5 | This program and the accompanying materials\r |
6 | are licensed and made available under the terms and conditions of the BSD License\r |
7 | which accompanies this distribution. The full text of the license may be found at\r |
8 | http://opensource.org/licenses/bsd-license.php\r |
9 | \r |
10 | THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r |
11 | WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r |
12 | \r |
13 | **/\r |
14 | \r |
15 | #include "Llvm_int_lib.h"\r |
16 | #include <Library/BaseLib.h>\r |
17 | \r |
18 | \r |
19 | UINT32 __udivsi3(UINT32 n, UINT32 d);\r |
20 | UINT32 __umodsi3(UINT32 a, UINT32 b);\r |
21 | \r |
22 | \r |
3402aac7 |
23 | UINT64\r |
1e57a462 |
24 | __aeabi_uidivmod(unsigned numerator, unsigned denominator)\r |
25 | {\r |
26 | UINT64 Return;\r |
27 | \r |
28 | Return = __udivsi3 (numerator, denominator);\r |
29 | Return |= LShiftU64 (__umodsi3 (numerator, denominator), 32);\r |
30 | \r |
31 | return Return;\r |
32 | }\r |
33 | \r |
34 | unsigned\r |
3402aac7 |
35 | __aeabi_uidiv (unsigned n, unsigned d)\r |
1e57a462 |
36 | {\r |
37 | return __udivsi3 (n, d);\r |
38 | }\r |
39 | \r |
40 | \r |
41 | \r |
42 | \r |
43 | \r |