[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [RFC PATCH 07/13] tests/tcg/xtensa: enable system tests
From: |
Alex Bennée |
Subject: |
[Qemu-devel] [RFC PATCH 07/13] tests/tcg/xtensa: enable system tests |
Date: |
Mon, 10 Dec 2018 15:28:23 +0000 |
Signed-off-by: Alex Bennée <address@hidden>
---
tests/tcg/xtensa/Makefile | 93 ------------------------
tests/tcg/xtensa/Makefile.softmmu-target | 43 +++++++++++
2 files changed, 43 insertions(+), 93 deletions(-)
delete mode 100644 tests/tcg/xtensa/Makefile
create mode 100644 tests/tcg/xtensa/Makefile.softmmu-target
diff --git a/tests/tcg/xtensa/Makefile b/tests/tcg/xtensa/Makefile
deleted file mode 100644
index 2f5691f75b..0000000000
--- a/tests/tcg/xtensa/Makefile
+++ /dev/null
@@ -1,93 +0,0 @@
--include ../../../config-host.mak
-
-CORE=dc232b
-CROSS=xtensa-$(CORE)-elf-
-
-ifndef XT
-SIM = ../../../xtensa-softmmu/qemu-system-xtensa
-SIMFLAGS = -M sim -cpu $(CORE) -nographic -semihosting -icount 6 $(EXTFLAGS)
-kernel
-SIMDEBUG = -s -S
-else
-SIM = xt-run
-SIMFLAGS = --xtensa-core=DC_B_232L --exit_with_target_code $(EXTFLAGS)
-SIMDEBUG = --gdbserve=0
-endif
-
-HOST_CC = gcc
-CC = $(CROSS)gcc
-AS = $(CROSS)gcc -x assembler-with-cpp
-LD = $(CROSS)ld
-
-XTENSA_SRC_PATH = $(SRC_PATH)/tests/tcg/xtensa
-INCLUDE_DIRS = $(XTENSA_SRC_PATH) $(SRC_PATH)/target/xtensa/core-$(CORE)
-XTENSA_INC = $(addprefix -I,$(INCLUDE_DIRS))
-
-LDFLAGS = -Tlinker.ld
-
-CRT = crt.o vectors.o
-
-TESTCASES += test_b.tst
-TESTCASES += test_bi.tst
-#TESTCASES += test_boolean.tst
-TESTCASES += test_break.tst
-TESTCASES += test_bz.tst
-TESTCASES += test_cache.tst
-TESTCASES += test_clamps.tst
-TESTCASES += test_extui.tst
-TESTCASES += test_fail.tst
-TESTCASES += test_interrupt.tst
-TESTCASES += test_loop.tst
-TESTCASES += test_mac16.tst
-TESTCASES += test_max.tst
-TESTCASES += test_min.tst
-TESTCASES += test_mmu.tst
-TESTCASES += test_mul16.tst
-TESTCASES += test_mul32.tst
-TESTCASES += test_nsa.tst
-TESTCASES += test_phys_mem.tst
-ifdef XT
-TESTCASES += test_pipeline.tst
-endif
-TESTCASES += test_quo.tst
-TESTCASES += test_rem.tst
-TESTCASES += test_rst0.tst
-TESTCASES += test_s32c1i.tst
-TESTCASES += test_sar.tst
-TESTCASES += test_sext.tst
-TESTCASES += test_shift.tst
-TESTCASES += test_sr.tst
-TESTCASES += test_timer.tst
-TESTCASES += test_windowed.tst
-
-all: build
-
-linker.ld: $(XTENSA_SRC_PATH)/linker.ld.S
- $(HOST_CC) $(XTENSA_INC) -E -P $< -o $@
-
-%.o: $(XTENSA_SRC_PATH)/%.c
- $(CC) $(XTENSA_INC) $(CFLAGS) -c $< -o $@
-
-%.o: $(XTENSA_SRC_PATH)/%.S
- $(CC) $(XTENSA_INC) $(ASFLAGS) -c $< -o $@
-
-%.tst: %.o linker.ld $(XTENSA_SRC_PATH)/macros.inc $(CRT) Makefile
- $(LD) $(LDFLAGS) $(NOSTDFLAGS) $(CRT) $< -o $@
-
-build: $(TESTCASES)
-
-check: $(addprefix run-, $(TESTCASES))
-
-run-%.tst: %.tst
- $(SIM) $(SIMFLAGS) ./$<
-
-run-test_fail.tst: test_fail.tst
- ! $(SIM) $(SIMFLAGS) ./$<
-
-debug-%.tst: %.tst
- $(SIM) $(SIMDEBUG) $(SIMFLAGS) ./$<
-
-host-debug-%.tst: %.tst
- gdb --args $(SIM) $(SIMFLAGS) ./$<
-
-clean:
- $(RM) -fr $(TESTCASES) $(CRT) linker.ld
diff --git a/tests/tcg/xtensa/Makefile.softmmu-target
b/tests/tcg/xtensa/Makefile.softmmu-target
new file mode 100644
index 0000000000..e9d6939990
--- /dev/null
+++ b/tests/tcg/xtensa/Makefile.softmmu-target
@@ -0,0 +1,43 @@
+#
+# Xtensa softmmu tests
+#
+
+XTENSA_SRC = $(SRC_PATH)/tests/tcg/xtensa
+XTENSA_ALL = $(wildcard $(XTENSA_SRC)/*.S)
+XTENSA_TESTS = $(patsubst $(XTENSA_SRC)/%.S, %, $(XTENSA_ALL))
+# Filter out common blobs and broken tests
+XTENSA_BROKEN_TESTS = crt vectors test_boolean test_pipeline
+XTENSA_USABLE_TESTS = $(filter-out $(XTENSA_BROKEN_TESTS), $(XTENSA_TESTS))
+XTENSA_RUNS = $(patsubst %, run-%, $(XTENSA_USABLE_TESTS))
+
+# add to the list of tests
+TESTS += $(XTENSA_USABLE_TESTS)
+VPATH += $(XTENSA_SRC)
+
+CORE=dc232b
+QEMU_OPTS = -M sim -cpu $(CORE) -nographic -semihosting -icount 6 $(EXTFLAGS)
-kernel
+
+INCLUDE_DIRS = $(SRC_PATH)/target/xtensa/core-$(CORE)
+XTENSA_INC = $(addprefix -I,$(INCLUDE_DIRS))
+
+LDFLAGS = -Tlinker.ld -nostartfiles -nostdlib
+
+CRT = crt.o vectors.o
+
+linker.ld: linker.ld.S
+ $(HOST_CC) $(XTENSA_INC) -E -P $< -o $@
+
+$(XTENSA_USABLE_TESTS): linker.ld macros.inc $(CRT) Makefile.softmmu-target
+
+# special rule for common blobs
+%.o: %.S
+ $(CC) $(XTENSA_INC) $(ASFLAGS) -c $< -o $@
+
+%: %.S
+ $(CC) $(XTENSA_INC) $(ASFLAGS) $< -o $@ $(LDFLAGS) $(NOSTDFLAGS) $(CRT)
+
+# Special runner
+$(XTENSA_RUNS): $(XTENSA_USABLE_TESTS)
+ $(call quiet-command, \
+ timeout $(TIMEOUT) $(QEMU) $(QEMU_OPTS) $<, \
+ "TEST","$< on $(TARGET_NAME) $(QEMU_OPTS)")
--
2.17.1
- Re: [Qemu-devel] [RFC PATCH 04/13] tests/tcg/mips: enable mips32-dsp/mips32-dspr2/mipsr5900 linux-user (WIP), (continued)
[Qemu-devel] [RFC PATCH 05/13] tests/tcg/mips: enable mips64 system tests (WIP), Alex Bennée, 2018/12/10
[Qemu-devel] [RFC PATCH 07/13] tests/tcg/xtensa: enable system tests,
Alex Bennée <=
[Qemu-devel] [RFC PATCH 08/13] tests/docker: add fedora-cris-cross compilers, Alex Bennée, 2018/12/10
[Qemu-devel] [RFC PATCH 02/13] tests: enable tcg tests for softmmu, Alex Bennée, 2018/12/10
[Qemu-devel] [RFC PATCH 03/13] tests/tcg: add QEMU_OPT option for test runner, Alex Bennée, 2018/12/10
[Qemu-devel] [RFC PATCH 06/13] tests/docker: add debian-xtensa-cross image, Alex Bennée, 2018/12/10
[Qemu-devel] [RFC PATCH 11/13] tests/tcg/cris: comment out the ccs test, Alex Bennée, 2018/12/10