]> git.proxmox.com Git - mirror_edk2.git/blobdiff - ArmPkg/Library/CompilerIntrinsicsLib/Arm/ashldi3.S
UefiCpuPkg: Move AsmRelocateApLoopStart from Mpfuncs.nasm to AmdSev.nasm
[mirror_edk2.git] / ArmPkg / Library / CompilerIntrinsicsLib / Arm / ashldi3.S
index 89beba087710d771352f0d2f3418146264a16408..dee659b6632085293ee21dc1231a00259b2ca71b 100644 (file)
@@ -1,35 +1,27 @@
-#------------------------------------------------------------------------------ 
-#
-# Copyright (c) 2008 - 2009, Apple Inc. All rights reserved.<BR>
-#
-# This program and the accompanying materials
-# are licensed and made available under the terms and conditions of the BSD License
-# which accompanies this distribution.  The full text of the license may be found at
-# http://opensource.org/licenses/bsd-license.php
-#
-# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
-# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
-#
-#------------------------------------------------------------------------------
-
-\s\s.text
-\s\s.align 2
-\s\sGCC_ASM_EXPORT(__ashldi3)
-\s\s
-ASM_PFX(__ashldi3):
-\s\scmp\s\sr2, #31
-\s\sbls\s\sL2
-\s\scmp\s\sr2, #63
-\s\ssubls\s\sr2, r2, #32
-\s\smovls\s\sr2, r0, asl r2
-\s\smovhi\s\sr2, #0
-\s\smov\s\sr1, r2
-\s\smov\s\sr0, #0
-\s\sbx\s\slr
-L2:
-\s\scmp\s\sr2, #0
-\s\srsbne\s\sr3, r2, #32
-\s\smovne\s\sr3, r0, lsr r3
-\s\smovne\s\sr0, r0, asl r2
-\s\sorrne\s\sr1, r3, r1, asl r2
-\s\sbx\s\slr
+#------------------------------------------------------------------------------\r
+#\r
+# Copyright (c) 2008 - 2009, Apple Inc. All rights reserved.<BR>\r
+#\r
+# SPDX-License-Identifier: BSD-2-Clause-Patent\r
+#\r
+#------------------------------------------------------------------------------\r
+\r
+#include <AsmMacroIoLib.h>\r
+\r
+ASM_FUNC(__ashldi3)\r
+  cmp  r2, #31\r
+  bls  L2\r
+  cmp  r2, #63\r
+  subls  r2, r2, #32\r
+  movls  r2, r0, asl r2\r
+  movhi  r2, #0\r
+  mov  r1, r2\r
+  mov  r0, #0\r
+  bx  lr\r
+L2:\r
+  cmp  r2, #0\r
+  rsbne  r3, r2, #32\r
+  movne  r3, r0, lsr r3\r
+  movne  r0, r0, asl r2\r
+  orrne  r1, r3, r1, asl r2\r
+  bx  lr\r