]> git.proxmox.com Git - mirror_edk2.git/blob - ArmPkg/Library/CompilerIntrinsicsLib/Arm/llsr.asm
UefiCpuPkg: Move AsmRelocateApLoopStart from Mpfuncs.nasm to AmdSev.nasm
[mirror_edk2.git] / ArmPkg / Library / CompilerIntrinsicsLib / Arm / llsr.asm
1 //------------------------------------------------------------------------------
2 //
3 // Copyright (c) 2008 - 2009, Apple Inc. All rights reserved.<BR>
4 // Copyright (c) 2018, Pete Batard. All rights reserved.<BR>
5 //
6 // SPDX-License-Identifier: BSD-2-Clause-Patent
7 //
8 //------------------------------------------------------------------------------
9
10 EXPORT __aeabi_llsr
11 EXPORT __rt_srsh
12
13 AREA s___aeabi_llsr, CODE, READONLY, ARM
14
15 ARM
16
17 ;
18 ;VOID
19 ;EFIAPI
20 ;__aeabi_llsr (
21 ; IN UINT64 Value,
22 ; IN UINT32 Shift
23 ;)
24 ;
25 __aeabi_llsr
26 __rt_srsh
27 SUBS r3,r2,#0x20
28 BPL __aeabi_llsr_label1
29 RSB r3,r2,#0x20
30 LSR r0,r0,r2
31 ORR r0,r0,r1,LSL r3
32 LSR r1,r1,r2
33 BX lr
34 __aeabi_llsr_label1
35 LSR r0,r1,r3
36 MOV r1,#0
37 BX lr
38
39 END