1#------------------------------------------------------------------------------
2#
3# Copyright (c) 2008 - 2009, Apple Inc. All rights reserved.<BR>
4#
5# SPDX-License-Identifier: BSD-2-Clause-Patent
6#
7#------------------------------------------------------------------------------
8
9#include <AsmMacroIoLib.h>
10
11ASM_FUNC(__divsi3)
12  eor  r3, r0, r0, asr #31
13  eor  r2, r1, r1, asr #31
14  stmfd  sp!, {r4, r5, r7, lr}
15  mov  r5, r0, asr #31
16  add  r7, sp, #8
17  mov  r4, r1, asr #31
18  sub  r0, r3, r0, asr #31
19  sub  r1, r2, r1, asr #31
20  bl  ASM_PFX(__udivsi3)
21  eor  r1, r5, r4
22  eor  r0, r0, r1
23  rsb  r0, r1, r0
24  ldmfd  sp!, {r4, r5, r7, pc}
25