qemu/tests/tcg
Peter Maydell 86f847a39a tests/tcg/arm: Remove test-arm-iwmmxt test
The test-arm-iwmmmxt test isn't testing what it thinks it's testing.

If you run it with a CPU type that supports iwMMXt then it will crash
immediately with a SIGILL, because (even with -marm) GCC will link it
against startup code that is in Thumb mode, and no iwMMXt CPU has
Thumb:

00010338 <_start>:
   10338:       f04f 0b00       mov.w   fp, #0
   1033c:       f04f 0e00       mov.w   lr, #0

If you run it with a CPU type which does *not* support iwMMXt, which
is what 'make check-tcg' does, then QEMU will not try to handle the
insns as iwMMXt.  Instead the translator turns them into illegal
instructions.  Then in the linux-user cpu_loop() code we identify
them as FPA11 instructions inside emulate_arm_fpa11(), because the
FPA11 happened to use the same coprocessor number as these iwMMXt
insns.  So we execute a completely different set of FPA11 insns,
which means we don't crash, but we will print garbage to stdout.
Then the test binary always exits with a 0 return code, so 'make
check-tcg' thinks the test passes.

Modern gnueabihf toolchains assume in their startup code that the CPU
is not so old as to not support Thumb, so there's no way to get them
to generate a binary that actually does what the test wants.  Since
we're deprecating iwMMXt emulation anyway, it's not worth trying to
salvage the test case to get it to really test the iwMMXt insns.

Delete the test entirely.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Message-id: 20250127112715.2936555-3-peter.maydell@linaro.org
2025-02-07 16:09:18 +00:00
..
aarch64 tests/tcg/aarch64: force qarma5 for pauth-3 test 2025-01-13 12:35:34 +00:00
aarch64_be tests/tcg: enable basic testing for aarch64_be-linux-user 2024-10-24 09:56:37 +01:00
alpha tests/tcg: add a system test to check memory instrumentation 2024-09-19 15:58:01 +01:00
arm tests/tcg/arm: Remove test-arm-iwmmxt test 2025-02-07 16:09:18 +00:00
hexagon Hexagon: fix F2_conv_* instructions for negative zero 2024-08-07 20:34:25 -07:00
hppa tests/tcg: Remove run-test-mmap-* 2024-02-29 11:35:37 -10:00
i386 tests/tcg: Use --noexecstack with assembler files 2024-07-30 11:44:11 +01:00
loongarch64 license: Update deprecated SPDX tag GPL-2.0 to GPL-2.0-only 2024-09-20 10:11:59 +03:00
m68k tests/tcg: Remove run-test-mmap-* 2024-02-29 11:35:37 -10:00
minilib tests/tcg/minilib: Constify digits in print_num 2024-07-05 12:33:41 +01:00
mips tests/tcg: Add -fno-stack-protector 2023-10-31 13:28:19 +00:00
multiarch tests/tcg: Do not use inttypes.h in multiarch/system/memory.c 2024-12-24 07:32:50 -08:00
openrisc target/openrisc: Rename the cpu from or32 to or1k 2017-02-14 08:14:58 +11:00
plugins plugins: enable linking with clang/lld 2025-01-17 10:45:32 +00:00
ppc64 tests/tcg: Replace -mpower8-vector with -mcpu=power8 2024-11-05 10:36:08 +00:00
ppc64le tests/tcg: unify ppc64 and ppc64le Makefiles 2022-10-06 11:53:40 +01:00
riscv64 tests/tcg: Use --noexecstack with assembler files 2024-07-30 11:44:11 +01:00
s390x tests/tcg/s390x: Test modifying code using the MVC instruction 2025-01-30 10:39:37 +01:00
sh4 target/sh4: Fix SUBV opcode 2024-05-03 17:33:26 +02:00
tricore tests/tcg: Reset result register after each test 2023-09-29 08:28:09 +02:00
x86_64 tests/tcg/x86_64: Add cross-modifying code test 2024-10-24 09:56:21 +01:00
xtensa tests/tcg/xtensa: add icount/ibreak priority test 2024-01-19 12:28:59 +01:00
xtensaeb tcg: Correct invalid mentions of 'softmmu' by 'system-mode' 2023-10-07 19:02:33 +02:00
Makefile.target tests/tcg: Add SIGRTMIN/SIGRTMAX test 2024-11-05 10:36:08 +00:00
README tests/tcg: update README 2024-07-30 11:44:18 +01:00

This directory contains various interesting guest binaries for
regression testing the Tiny Code Generator doing system and user-mode
emulation.

The multiarch directory contains shared code for tests that can be
built for all guest architectures. Architecture specific code can be
found in their respective directories.

System mode tests will be under the "system" subdirectories.

GDB scripts for exercising the gdbstub on specific tests will be found
under the "gdbstb" subdirectories.

See the developer guide for more instructions on "make check-tcg"