]> git.ipfire.org Git - people/ms/u-boot.git/blame - arch/arm/lib/ashldi3.S
Merge git://git.denx.de/u-boot-mmc
[people/ms/u-boot.git] / arch / arm / lib / ashldi3.S
CommitLineData
ba94a1bb
WD
1/* Copyright 1995, 1996, 1998, 1999, 2000, 2003, 2004, 2005
2 Free Software Foundation, Inc.
3
1a459660
WD
4 * SPDX-License-Identifier: GPL-2.0+
5 */
ba94a1bb 6
1251d51c 7#include <linux/linkage.h>
06b36cb7 8#include <asm/assembler.h>
1251d51c 9
ba94a1bb
WD
10#ifdef __ARMEB__
11#define al r1
12#define ah r0
13#else
14#define al r0
15#define ah r1
16#endif
17
b2f18584 18.pushsection .text.__ashldi3, "ax"
06b36cb7 19ENTRY(__ashldi3)
1251d51c 20ENTRY(__aeabi_llsl)
ba94a1bb
WD
21
22 subs r3, r2, #32
23 rsb ip, r2, #32
24 movmi ah, ah, lsl r2
25 movpl ah, al, lsl r3
06b36cb7
MV
26 ARM( orrmi ah, ah, al, lsr ip )
27 THUMB( lsrmi r3, al, ip )
28 THUMB( orrmi ah, ah, r3 )
ba94a1bb 29 mov al, al, lsl r2
06b36cb7
MV
30 ret lr
31
32ENDPROC(__ashldi3)
1251d51c 33ENDPROC(__aeabi_llsl)
b2f18584 34.popsection