You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
qemu/tests/tcg
Paolo Bonzini d1bb978ba1 target/i386: fix cmpxchg with 32-bit register destination
Unlike the memory case, where "the destination operand receives a write
cycle without regard to the result of the comparison", rm must not be
touched altogether if the write fails, including not zero-extending
it on 64-bit processors.  This is not how the movcond currently works,
because it is always followed by a gen_op_mov_reg_v to rm.

To fix it, introduce a new function that is similar to gen_op_mov_reg_v
but writes to a TCG temporary.

Considering that gen_extu(ot, oldv) is not needed in the memory case
either, the two cases for register and memory destinations are different
enough that one might as well fuse the two "if (mod == 3)" into one.
So do that too.

Resolves: https://gitlab.com/qemu-project/qemu/-/issues/508
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
[rth: Add a test case ]
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
2 years ago
..
aarch64 tests/tcg: move compiler tests to Makefiles 2 years ago
alpha tests/tcg: move configuration to a sub-shell script 5 years ago
arm tests/tcg: clean up calls to run-test 2 years ago
cris tests/tcg: clean up calls to run-test 2 years ago
hexagon Hexagon (tests/tcg/hexagon): add fmin/fmax tests for signed zero 2 years ago
hppa target/hppa: Fix atomic_store_3 for STBY 3 years ago
i386 target/i386: implement FMA instructions 2 years ago
loongarch64 target/loongarch: Remove cpu_fcsr0 2 years ago
m68k tests/tcg/m68k: Add trap.c 3 years ago
minilib Remove leading underscores from QEMU defines 3 years ago
mips tests/tcg: move configuration to a sub-shell script 5 years ago
multiarch tests/tcg/multiarch: Add munmap-pthread.c 2 years ago
nios2 tests/tcg/nios2: Tweak 10m50-ghrd.ld 2 years ago
openrisc target/openrisc: Rename the cpu from or32 to or1k 8 years ago
ppc tests/tcg: move configuration to a sub-shell script 5 years ago
ppc64 tests/tcg: move compiler tests to Makefiles 2 years ago
ppc64le tests/tcg: unify ppc64 and ppc64le Makefiles 2 years ago
riscv64 target/riscv: Make translator stop before the end of a page 2 years ago
s390x tests/tcg/s390x: Add a test for the vistr instruction 2 years ago
sh4 tests/tcg: re-enable threadcount for sh4 2 years ago
sparc64 tests/tcg/sparc64: Re-enable linux-test 4 years ago
tricore tests/tcg/tricore: Add muls test 4 years ago
x86_64 target/i386: fix cmpxchg with 32-bit register destination 2 years ago
xtensa tests/tcg/xtensa: fix vectors and checks in timer test 3 years ago
Makefile.target tests/tcg: move compiler tests to Makefiles 2 years ago
README Drop the deprecated lm32 target 4 years ago

README

This directory contains various interesting guest programs for
regression testing. Tests are either multi-arch, meaning they can be
built for all guest architectures that support linux-user executable,
or they are architecture specific.

CRIS
====
The testsuite for CRIS is in tests/tcg/cris.  You can run it
with "make test-cris".