diff options
author | Linus Walleij <linus.walleij@linaro.org> | 2015-03-23 11:06:10 +0100 |
---|---|---|
committer | Tom Rini <trini@konsulko.com> | 2015-03-28 12:07:45 -0400 |
commit | e769f68613ee4f84c8e2aea784335df74ceea397 (patch) | |
tree | 3a86b64771fb13900dd2b3e24c0999e4e3e03ae6 /arch/arm/lib/semihosting.c | |
parent | 8c2492901998a76e083ed0875372c141da084d86 (diff) | |
download | u-boot-imx-e769f68613ee4f84c8e2aea784335df74ceea397.zip u-boot-imx-e769f68613ee4f84c8e2aea784335df74ceea397.tar.gz u-boot-imx-e769f68613ee4f84c8e2aea784335df74ceea397.tar.bz2 |
armv8: semihosting: do not inline trap call
The semihosting trap call does not like being inlined, probably
because that will mean register reordering screwing up the return
value in r0, so tag this function "noinline".
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Diffstat (limited to 'arch/arm/lib/semihosting.c')
-rw-r--r-- | arch/arm/lib/semihosting.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/arm/lib/semihosting.c b/arch/arm/lib/semihosting.c index fd6d857..d3f724b 100644 --- a/arch/arm/lib/semihosting.c +++ b/arch/arm/lib/semihosting.c @@ -26,7 +26,7 @@ /* * Call the handler */ -static long smh_trap(unsigned int sysnum, void *addr) +static noinline long smh_trap(unsigned int sysnum, void *addr) { register long result asm("r0"); #if defined(CONFIG_ARM64) |