Commit e2672559 authored by Alex Bennée's avatar Alex Bennée Committed by Peter Maydell
Browse files

target/arm: remove run-time semihosting checks for linux-user



Now we do all our checking at translate time we can make cpu_loop a
little bit simpler. We also introduce a simple linux-user semihosting
test case to defend the functionality. The out-of-tree softmmu based
semihosting tests are still more comprehensive.

Signed-off-by: default avatarAlex Bennée <alex.bennee@linaro.org>
Message-id: 20190913151845.12582-6-alex.bennee@linaro.org
Reviewed-by: default avatarPeter Maydell <peter.maydell@linaro.org>
Signed-off-by: default avatarPeter Maydell <peter.maydell@linaro.org>
parent ed6e6ba9
Loading
Loading
Loading
Loading
+0 −3
Original line number Diff line number Diff line
@@ -325,9 +325,6 @@ void cpu_loop(CPUARMState *env)

                if (n == ARM_NR_cacheflush) {
                    /* nop */
                } else if (n == ARM_NR_semihosting
                           || n == ARM_NR_thumb_semihosting) {
                    env->regs[0] = do_arm_semihosting (env);
                } else if (n == 0 || n >= ARM_SYSCALL_BASE || env->thumb) {
                    /* linux syscall */
                    if (env->thumb || n == 0) {
+0 −3
Original line number Diff line number Diff line
@@ -18,9 +18,6 @@ struct target_pt_regs {
#define ARM_NR_set_tls	  (ARM_NR_BASE + 5)
#define ARM_NR_get_tls    (ARM_NR_BASE + 6)

#define ARM_NR_semihosting	  0x123456
#define ARM_NR_thumb_semihosting  0xAB

#if defined(TARGET_WORDS_BIGENDIAN)
#define UNAME_MACHINE "armv5teb"
#else