diff options
author | Simon Glass <sjg@chromium.org> | 2015-06-02 17:08:20 (GMT) |
---|---|---|
committer | Albert ARIBAUD <albert.u.boot@aribaud.net> | 2015-07-07 09:39:22 (GMT) |
commit | 1251d51ca587431d07fb37fecb86b21db682e250 (patch) | |
tree | 52daeb01347f666f6399475dacda5c286be08a6b /arch/arm/lib/_divsi3.S | |
parent | 6f43ba70d15e15a08c25b3d956c70addb6740737 (diff) | |
download | u-boot-1251d51ca587431d07fb37fecb86b21db682e250.tar.xz |
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/_divsi3.S')
-rw-r--r-- | arch/arm/lib/_divsi3.S | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/arch/arm/lib/_divsi3.S b/arch/arm/lib/_divsi3.S index 6015493..c463c68 100644 --- a/arch/arm/lib/_divsi3.S +++ b/arch/arm/lib/_divsi3.S @@ -1,3 +1,5 @@ +#include <linux/linkage.h> + .macro ARM_DIV_BODY dividend, divisor, result, curbit #if __LINUX_ARM_ARCH__ >= 5 @@ -95,9 +97,8 @@ .align 5 .globl __divsi3 -.globl __aeabi_idiv __divsi3: -__aeabi_idiv: +ENTRY(__aeabi_idiv) cmp r1, #0 eor ip, r0, r1 @ save the sign of the result. beq Ldiv0 @@ -139,3 +140,4 @@ Ldiv0: bl __div0 mov r0, #0 @ About as wrong as it could be. ldr pc, [sp], #4 +ENDPROC(__aeabi_idiv) |