mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-11-14 08:57:58 +00:00
1251d51ca5
When CONFIG_SYS_THUMB_BUILD is defined these functions may be called from Thumb code. Add the required ENTRY and ENDPROC bracketing so that BLX is used to call these ARM functions, instead of plain BL, which will fail. Signed-off-by: Simon Glass <sjg@chromium.org> Reported-by: Pavel Machek <pavel@denx.de>
28 lines
460 B
ArmAsm
28 lines
460 B
ArmAsm
/* Copyright 1995, 1996, 1998, 1999, 2000, 2003, 2004, 2005
|
|
Free Software Foundation, Inc.
|
|
|
|
* SPDX-License-Identifier: GPL-2.0+
|
|
*/
|
|
|
|
#include <linux/linkage.h>
|
|
|
|
#ifdef __ARMEB__
|
|
#define al r1
|
|
#define ah r0
|
|
#else
|
|
#define al r0
|
|
#define ah r1
|
|
#endif
|
|
|
|
.globl __lshrdi3
|
|
__lshrdi3:
|
|
ENTRY(__aeabi_llsr)
|
|
|
|
subs r3, r2, #32
|
|
rsb ip, r2, #32
|
|
movmi al, al, lsr r2
|
|
movpl al, ah, lsr r3
|
|
orrmi al, al, ah, lsl ip
|
|
mov ah, ah, lsr r2
|
|
mov pc, lr
|
|
ENDPROC(__aeabi_llsr)
|