target/m68k: Pass semihosting arg to exit
authorKeith Packard <keithp@keithp.com>
Wed, 2 Aug 2023 16:19:12 +0000 (09:19 -0700)
committerRichard Henderson <richard.henderson@linaro.org>
Wed, 24 Apr 2024 22:46:00 +0000 (15:46 -0700)
Instead of using d0 (the semihost function number), use d1 (the
provide exit status).

Signed-off-by: Keith Packard <keithp@keithp.com>
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Message-Id: <20230802161914.395443-2-keithp@keithp.com>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
target/m68k/m68k-semi.c

index 546cff2246965c70a26acab33338d5565b6f6094..6fbbd140f32a479e901105a63827da0b5d9c2a96 100644 (file)
@@ -132,8 +132,8 @@ void do_m68k_semihosting(CPUM68KState *env, int nr)
     args = env->dregs[1];
     switch (nr) {
     case HOSTED_EXIT:
-        gdb_exit(env->dregs[0]);
-        exit(env->dregs[0]);
+        gdb_exit(env->dregs[1]);
+        exit(env->dregs[1]);
 
     case HOSTED_OPEN:
         GET_ARG(0);