diff mbox series

[RFC] tests/tcg: fix semihosting SYS_EXIT for aarch64 in boot.S

Message ID 20250404115641.258048-1-alex.bennee@linaro.org
State New
Headers show
Series [RFC] tests/tcg: fix semihosting SYS_EXIT for aarch64 in boot.S | expand

Commit Message

Alex Bennée April 4, 2025, 11:56 a.m. UTC
We don't expect to hit exceptions in our testing so currently all the
vectors report an un-expected exception and then attempt to exit.
However for aarch64 we should always use the extended information
block as we do in _exit. Rather than duplicate the code on the error
handler just branch to the _exit handler with a failing status code.

Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
---
 tests/tcg/aarch64/system/boot.S | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

Comments

Richard Henderson April 4, 2025, 2:29 p.m. UTC | #1
On 4/4/25 04:56, Alex Bennée wrote:
> We don't expect to hit exceptions in our testing so currently all the
> vectors report an un-expected exception and then attempt to exit.
> However for aarch64 we should always use the extended information
> block as we do in _exit. Rather than duplicate the code on the error
> handler just branch to the _exit handler with a failing status code.
> 
> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
> ---
>   tests/tcg/aarch64/system/boot.S | 5 ++---
>   1 file changed, 2 insertions(+), 3 deletions(-)
> 
> diff --git a/tests/tcg/aarch64/system/boot.S b/tests/tcg/aarch64/system/boot.S
> index 8fbcba757e..81a60b9c43 100644
> --- a/tests/tcg/aarch64/system/boot.S
> +++ b/tests/tcg/aarch64/system/boot.S
> @@ -73,9 +73,8 @@ lower_a32_serror:
>   	mov	x0, SYS_WRITE0
>   	adr	x1, .error
>   	semihosting_call
> -	mov	x0, SYS_EXIT
> -	mov	x1, 1
> -	semihosting_call
> +	mov	x0, -1
> +	bl 	_exit

1 would be EXIT_FAILURE.  Otherwise,
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>


r~
diff mbox series

Patch

diff --git a/tests/tcg/aarch64/system/boot.S b/tests/tcg/aarch64/system/boot.S
index 8fbcba757e..81a60b9c43 100644
--- a/tests/tcg/aarch64/system/boot.S
+++ b/tests/tcg/aarch64/system/boot.S
@@ -73,9 +73,8 @@  lower_a32_serror:
 	mov	x0, SYS_WRITE0
 	adr	x1, .error
 	semihosting_call
-	mov	x0, SYS_EXIT
-	mov	x1, 1
-	semihosting_call
+	mov	x0, -1
+	bl 	_exit
 	/* never returns */
 
 	.section .rodata