]> git.proxmox.com Git - mirror_edk2.git/blame - ArmPkg/Library/CompilerIntrinsicsLib/Arm/divsi3.S
UefiCpuPkg: Move AsmRelocateApLoopStart from Mpfuncs.nasm to AmdSev.nasm
[mirror_edk2.git] / ArmPkg / Library / CompilerIntrinsicsLib / Arm / divsi3.S
CommitLineData
3402aac7 1#------------------------------------------------------------------------------\r
1e57a462 2#\r
3# Copyright (c) 2008 - 2009, Apple Inc. All rights reserved.<BR>\r
4#\r
4059386c 5# SPDX-License-Identifier: BSD-2-Clause-Patent\r
1e57a462 6#\r
7#------------------------------------------------------------------------------\r
8\r
903e3124 9#include <AsmMacroIoLib.h>\r
3402aac7 10\r
903e3124 11ASM_FUNC(__divsi3)\r
1e57a462 12 eor r3, r0, r0, asr #31\r
13 eor r2, r1, r1, asr #31\r
14 stmfd sp!, {r4, r5, r7, lr}\r
15 mov r5, r0, asr #31\r
16 add r7, sp, #8\r
17 mov r4, r1, asr #31\r
18 sub r0, r3, r0, asr #31\r
19 sub r1, r2, r1, asr #31\r
20 bl ASM_PFX(__udivsi3)\r
21 eor r1, r5, r4\r
22 eor r0, r0, r1\r
23 rsb r0, r1, r0\r
24 ldmfd sp!, {r4, r5, r7, pc}\r