Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 01885bc5 authored by Laura Abbott's avatar Laura Abbott Committed by Russell King
Browse files

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: default avatarLaura Abbott <lauraa@codeaurora.org>
Acked-by: default avatarNicolas Pitre <nicolas.pitre@linaro.org>
Acked-by: default avatarCatalin Marinas <catalin.marinas@arm.com>
Signed-off-by: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
parent 4bdad983
Loading
Loading
Loading
Loading
+8 −0
Original line number Diff line number Diff line
@@ -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)