[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v2 25/35] tests/tcg: add memory-sve test for aarch64
From: |
Alex Bennée |
Subject: |
[PATCH v2 25/35] tests/tcg: add memory-sve test for aarch64 |
Date: |
Tue, 24 Jan 2023 18:01:17 +0000 |
This will be helpful in debugging problems with tracking SVE memory
accesses via the TCG plugins system.
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Cc: Robert Henry <robhenry@microsoft.com>
Cc: Aaron Lindsay <aaron@os.amperecomputing.com>
---
tests/tcg/aarch64/Makefile.softmmu-target | 7 +++++++
tests/tcg/aarch64/system/boot.S | 3 ++-
2 files changed, 9 insertions(+), 1 deletion(-)
diff --git a/tests/tcg/aarch64/Makefile.softmmu-target
b/tests/tcg/aarch64/Makefile.softmmu-target
index a1368905f5..df9747bae8 100644
--- a/tests/tcg/aarch64/Makefile.softmmu-target
+++ b/tests/tcg/aarch64/Makefile.softmmu-target
@@ -36,6 +36,13 @@ config-cc.mak: Makefile
memory: CFLAGS+=-DCHECK_UNALIGNED=1
+memory-sve: memory.c $(LINK_SCRIPT) $(CRT_OBJS) $(MINILIB_OBJS)
+ $(CC) $(CFLAGS) $(EXTRA_CFLAGS) $< -o $@ $(LDFLAGS)
+
+memory-sve: CFLAGS+=-DCHECK_UNALIGNED=1 -march=armv8.1-a+sve -O3
-fno-tree-loop-distribute-patterns
+
+TESTS+=memory-sve
+
# Running
QEMU_BASE_MACHINE=-M virt -cpu max -display none
QEMU_OPTS+=$(QEMU_BASE_MACHINE) -semihosting-config
enable=on,target=native,chardev=output -kernel
diff --git a/tests/tcg/aarch64/system/boot.S b/tests/tcg/aarch64/system/boot.S
index e190b1efa6..f136363d2a 100644
--- a/tests/tcg/aarch64/system/boot.S
+++ b/tests/tcg/aarch64/system/boot.S
@@ -179,12 +179,13 @@ __start:
isb
/*
- * Enable FP registers. The standard C pre-amble will be
+ * Enable FP/SVE registers. The standard C pre-amble will be
* saving these and A-profile compilers will use AdvSIMD
* registers unless we tell it not to.
*/
mrs x0, cpacr_el1
orr x0, x0, #(3 << 20)
+ orr x0, x0, #(3 << 16)
msr cpacr_el1, x0
/* Setup some stack space and enter the test code.
--
2.34.1
- [PATCH v2 10/35] Update lcitool and fedora to 37, (continued)
- [PATCH v2 10/35] Update lcitool and fedora to 37, Alex Bennée, 2023/01/24
- [PATCH v2 32/35] translator: always pair plugin_gen_insn_{start, end} calls, Alex Bennée, 2023/01/24
- [PATCH v2 31/35] plugins: fix optimization in plugin_gen_disable_mem_helpers, Alex Bennée, 2023/01/24
- [PATCH v2 18/35] MAINTAINERS: Fix the entry for tests/tcg/nios2, Alex Bennée, 2023/01/24
- [PATCH v2 19/35] docs: add hotlinks to about preface text, Alex Bennée, 2023/01/24
- [PATCH v2 28/35] thread: de-const qemu_spin_destroy, Alex Bennée, 2023/01/24
- [PATCH v2 34/35] cpu-exec: assert that plugin_mem_cbs is NULL after execution, Alex Bennée, 2023/01/24
- [PATCH v2 24/35] semihosting: add O_BINARY flag in host_open for NT compatibility, Alex Bennée, 2023/01/24
- [PATCH v2 25/35] tests/tcg: add memory-sve test for aarch64,
Alex Bennée <=
- [PATCH v2 35/35] plugins: Iterate on cb_lists in qemu_plugin_user_exit, Alex Bennée, 2023/01/24
- [PATCH v2 27/35] util/qht: add missing atomic_set(hashes[i]), Alex Bennée, 2023/01/24
- [PATCH v2 30/35] plugins: make qemu_plugin_user_exit's locking order consistent with fork_start's, Alex Bennée, 2023/01/24
- [PATCH v2 13/35] tests/docker: Install flex in debian-tricore-cross, Alex Bennée, 2023/01/24
- [PATCH v2 23/35] semihosting: Write back semihosting data before completion callback, Alex Bennée, 2023/01/24
- [PATCH v2 17/35] gitlab: wrap up test results for custom runners, Alex Bennée, 2023/01/24
- [PATCH v2 33/35] tcg: exclude non-memory effecting helpers from instrumentation, Alex Bennée, 2023/01/24
- [PATCH v2 20/35] docs: add a new section to outline emulation support, Alex Bennée, 2023/01/24