xemu/tests/tcg
Taylor Simpson 15fc6badbd Hexagon (target/hexagon) fix bug in mem_noshuf load exception
The semantics of a mem_noshuf packet are that the store effectively
happens before the load.  However, in cases where the load raises an
exception, we cannot simply execute the store first.

This change adds a probe to check that the load will not raise an
exception before executing the store.

If the load is predicated, this requires special handling.  We check
the condition before performing the probe.  Since, we need the EA to
perform the check, we move the GET_EA portion inside CHECK_NOSHUF_PRED.

Test case added in tests/tcg/hexagon/mem_noshuf_exception.c

Suggested-by: Alessandro Di Federico <ale@rev.ng>
Suggested-by: Anton Johansson <anjo@rev.ng>
Signed-off-by: Taylor Simpson <tsimpson@quicinc.com>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-Id: <20220707210546.15985-3-tsimpson@quicinc.com>
2022-07-19 14:20:08 -07:00
..
aarch64 tests/tcg: compile system emulation tests as freestanding 2022-07-06 09:31:16 +02:00
alpha tests/tcg: move configuration to a sub-shell script 2019-09-10 14:09:00 +01:00
arm test/tcg/arm: Use -mfloat-abi=soft for test-armv6m-undef 2022-06-14 00:14:59 +01:00
cris tests/tcg: add a multiarch linux-user gdb test 2020-05-06 09:29:26 +01:00
hexagon Hexagon (target/hexagon) fix bug in mem_noshuf load exception 2022-07-19 14:20:08 -07:00
hppa target/hppa: Fix atomic_store_3 for STBY 2021-12-30 21:40:47 -08:00
i386 tests/tcg/i386: Use explicit suffix on fist insns 2022-06-14 00:15:04 +01:00
loongarch64 tests/tcg/loongarch64: Add hello/memory test in loongarch64 system 2022-06-06 18:14:13 +00:00
m68k tests/tcg/m68k: Add trap.c 2022-06-02 09:35:03 +02:00
minilib Remove leading underscores from QEMU defines 2021-06-21 05:49:01 +02:00
mips tests/tcg: move configuration to a sub-shell script 2019-09-10 14:09:00 +01:00
multiarch tests/tcg: compile system emulation tests as freestanding 2022-07-06 09:31:16 +02:00
nios2 tests/tcg/nios2: Add test-shadow-1 2022-04-26 08:17:10 -07:00
openrisc target/openrisc: Rename the cpu from or32 to or1k 2017-02-14 08:14:58 +11:00
ppc tests/tcg: move configuration to a sub-shell script 2019-09-10 14:09:00 +01:00
ppc64 tests/tcg/ppc64: Add mffsce test 2022-07-06 10:22:38 -03:00
ppc64le tests/tcg/ppc64: Add mffsce test 2022-07-06 10:22:38 -03:00
riscv64 target/riscv: Set env->bins in gen_exception_illegal 2022-07-03 10:03:20 +10:00
s390x tests/tcg/s390x: Test unwinding from signal handlers 2022-05-23 22:52:27 +02:00
sh4 tests/tcg: completely disable threadcount for sh4 2022-02-28 16:42:35 +00:00
sparc64 tests/tcg/sparc64: Re-enable linux-test 2021-05-15 21:43:23 +02:00
tricore tests/tcg/tricore: Add muls test 2021-05-18 09:36:21 +01:00
x86_64 Fix 'writeable' typos 2022-06-08 19:38:47 +01:00
xtensa tests/tcg/xtensa: fix vectors and checks in timer test 2022-05-06 15:27:40 -07:00
Makefile.target tests/tcg: compile system emulation tests as freestanding 2022-07-06 09:31:16 +02:00
README Drop the deprecated lm32 target 2021-05-12 18:20:25 +02:00

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".