]> git.proxmox.com Git - mirror_edk2.git/blame - ArmPkg/Library/CompilerIntrinsicsLib/Arm/ashldi3.S
UefiCpuPkg: Move AsmRelocateApLoopStart from Mpfuncs.nasm to AmdSev.nasm
[mirror_edk2.git] / ArmPkg / Library / CompilerIntrinsicsLib / Arm / ashldi3.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(__ashldi3)\r
1e57a462 12 cmp r2, #31\r
13 bls L2\r
14 cmp r2, #63\r
15 subls r2, r2, #32\r
16 movls r2, r0, asl r2\r
17 movhi r2, #0\r
18 mov r1, r2\r
19 mov r0, #0\r
20 bx lr\r
21L2:\r
22 cmp r2, #0\r
23 rsbne r3, r2, #32\r
24 movne r3, r0, lsr r3\r
25 movne r0, r0, asl r2\r
26 orrne r1, r3, r1, asl r2\r
27 bx lr\r