//------------------------------------------------------------------------------\r
//\r
// Copyright (c) 2008 - 2009, Apple Inc. All rights reserved.<BR>\r
+// Copyright (c) 2018, Pete Batard. All rights reserved.<BR>\r
//\r
-// This program and the accompanying materials\r
-// are licensed and made available under the terms and conditions of the BSD License\r
-// which accompanies this distribution. The full text of the license may be found at\r
-// http://opensource.org/licenses/bsd-license.php\r
-//\r
-// THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
-// WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
+// SPDX-License-Identifier: BSD-2-Clause-Patent\r
//\r
//------------------------------------------------------------------------------\r
\r
EXPORT __aeabi_uidivmod\r
EXPORT __aeabi_idiv\r
EXPORT __aeabi_idivmod\r
+ EXPORT __rt_udiv\r
+ EXPORT __rt_sdiv\r
\r
AREA Math, CODE, READONLY\r
\r
;\r
;UINT32\r
;EFIAPI\r
-;__aeabi_uidivmode (\r
-; IN UINT32 Dividen\r
+;__aeabi_uidivmod (\r
+; IN UINT32 Dividend\r
; IN UINT32 Divisor\r
; );\r
;\r
-\r
__aeabi_uidiv\r
__aeabi_uidivmod\r
RSBS r12, r1, r0, LSR #4\r
MOV r3, #0\r
B __arm_div_large\r
\r
+;\r
+;UINT64\r
+;EFIAPI\r
+;__rt_udiv (\r
+; IN UINT32 Divisor,\r
+; IN UINT32 Dividend\r
+; );\r
+;\r
+__rt_udiv\r
+ ; Swap R0 and R1\r
+ MOV r12, r0\r
+ MOV r0, r1\r
+ MOV r1, r12\r
+ B __aeabi_uidivmod\r
+\r
+;\r
+;UINT64\r
+;EFIAPI\r
+;__rt_sdiv (\r
+; IN INT32 Divisor,\r
+; IN INT32 Dividend\r
+; );\r
+;\r
+__rt_sdiv\r
+ ; Swap R0 and R1\r
+ MOV r12, r0\r
+ MOV r0, r1\r
+ MOV r1, r12\r
+ B __aeabi_idivmod\r
+\r
;\r
;INT32\r
;EFIAPI\r
-;__aeabi_idivmode (\r
-; IN INT32 Dividen\r
+;__aeabi_idivmod (\r
+; IN INT32 Dividend\r
; IN INT32 Divisor\r
; );\r
;\r
BX r14\r
\r
END\r
-\r