ARM: 7125/1: Add unwinding annotations for 64bit division functions
The 64bit division functions never had unwinding annotations added. This prevents a backtrace from being printed within the function and if a division by 0 occurs. Add the annotations. Signed-off-by: Laura Abbott <lauraa@codeaurora.org> Acked-by: Nicolas Pitre <nicolas.pitre@linaro.org> Acked-by: Catalin Marinas <catalin.marinas@arm.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
This commit is contained in:
parent
4bdad983a4
commit
01885bc5ce
|
@ -13,6 +13,7 @@
|
|||
*/
|
||||
|
||||
#include <linux/linkage.h>
|
||||
#include <asm/unwind.h>
|
||||
|
||||
#ifdef __ARMEB__
|
||||
#define xh r0
|
||||
|
@ -44,6 +45,7 @@
|
|||
*/
|
||||
|
||||
ENTRY(__do_div64)
|
||||
UNWIND(.fnstart)
|
||||
|
||||
@ Test for easy paths first.
|
||||
subs ip, r4, #1
|
||||
|
@ -189,7 +191,12 @@ ENTRY(__do_div64)
|
|||
moveq yh, xh
|
||||
moveq xh, #0
|
||||
moveq pc, lr
|
||||
UNWIND(.fnend)
|
||||
|
||||
UNWIND(.fnstart)
|
||||
UNWIND(.pad #4)
|
||||
UNWIND(.save {lr})
|
||||
Ldiv0_64:
|
||||
@ Division by 0:
|
||||
str lr, [sp, #-8]!
|
||||
bl __div0
|
||||
|
@ -200,4 +207,5 @@ ENTRY(__do_div64)
|
|||
mov xh, #0
|
||||
ldr pc, [sp], #8
|
||||
|
||||
UNWIND(.fnend)
|
||||
ENDPROC(__do_div64)
|
||||
|
|
Loading…
Reference in New Issue