summaryrefslogtreecommitdiff
path: root/arch/arm/lib/_ashrdi3.S
diff options
context:
space:
mode:
authorSimon Glass <sjg@chromium.org>2015-06-02 11:08:20 -0600
committerAlbert ARIBAUD <albert.u.boot@aribaud.net>2015-07-07 11:39:22 +0200
commit1251d51ca587431d07fb37fecb86b21db682e250 (patch)
tree52daeb01347f666f6399475dacda5c286be08a6b /arch/arm/lib/_ashrdi3.S
parent6f43ba70d15e15a08c25b3d956c70addb6740737 (diff)
downloadu-boot-imx-1251d51ca587431d07fb37fecb86b21db682e250.zip
u-boot-imx-1251d51ca587431d07fb37fecb86b21db682e250.tar.gz
u-boot-imx-1251d51ca587431d07fb37fecb86b21db682e250.tar.bz2
arm: Add ENTRY/ENDPROC to private libgcc functions
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>
Diffstat (limited to 'arch/arm/lib/_ashrdi3.S')
-rw-r--r--arch/arm/lib/_ashrdi3.S6
1 files changed, 4 insertions, 2 deletions
diff --git a/arch/arm/lib/_ashrdi3.S b/arch/arm/lib/_ashrdi3.S
index 4d93c8a..c74fd64 100644
--- a/arch/arm/lib/_ashrdi3.S
+++ b/arch/arm/lib/_ashrdi3.S
@@ -4,6 +4,8 @@
* SPDX-License-Identifier: GPL-2.0+
*/
+#include <linux/linkage.h>
+
#ifdef __ARMEB__
#define al r1
#define ah r0
@@ -13,9 +15,8 @@
#endif
.globl __ashrdi3
-.globl __aeabi_lasr
__ashrdi3:
-__aeabi_lasr:
+ENTRY(__aeabi_lasr)
subs r3, r2, #32
rsb ip, r2, #32
@@ -24,3 +25,4 @@ __aeabi_lasr:
orrmi al, al, ah, lsl ip
mov ah, ah, asr r2
mov pc, lr
+ENDPROC(__aeabi_lasr)