These only need to be built for i386 guests. This includes a stub tests/tcg/i386/Makfile.target which absorbs some of what was in tests/tcg/Makefile.
Signed-off-by: Alex Bennée <alex.ben...@linaro.org> Reviewed-by: Thomas Huth <th...@redhat.com> Reviewed-by: Philippe Mathieu-Daudé <f4...@amsat.org> Tested-by: Philippe Mathieu-Daudé <f4...@amsat.org> Reviewed-by: Richard Henderson <richard.hender...@linaro.org> --- v2 - move VPATH and TESTs setup into i386/Makefile.target - set CFLAGS+=-m32 for cross building v4 - update MAINATINERS --- MAINTAINERS | 1 + tests/tcg/README | 39 ------------------------ tests/tcg/i386/Makefile.target | 30 ++++++++++++++++++ tests/tcg/i386/README | 38 +++++++++++++++++++++++ tests/tcg/{ => i386}/hello-i386.c | 0 tests/tcg/{ => i386}/pi_10.com | Bin tests/tcg/{ => i386}/runcom.c | 0 tests/tcg/{ => i386}/test-i386-code16.S | 0 tests/tcg/{ => i386}/test-i386-fprem.c | 0 tests/tcg/{ => i386}/test-i386-muldiv.h | 0 tests/tcg/{ => i386}/test-i386-shift.h | 0 tests/tcg/{ => i386}/test-i386-ssse3.c | 0 tests/tcg/{ => i386}/test-i386-vm86.S | 0 tests/tcg/{ => i386}/test-i386.c | 0 tests/tcg/{ => i386}/test-i386.h | 0 15 files changed, 69 insertions(+), 39 deletions(-) create mode 100644 tests/tcg/i386/Makefile.target create mode 100644 tests/tcg/i386/README rename tests/tcg/{ => i386}/hello-i386.c (100%) rename tests/tcg/{ => i386}/pi_10.com (100%) rename tests/tcg/{ => i386}/runcom.c (100%) rename tests/tcg/{ => i386}/test-i386-code16.S (100%) rename tests/tcg/{ => i386}/test-i386-fprem.c (100%) rename tests/tcg/{ => i386}/test-i386-muldiv.h (100%) rename tests/tcg/{ => i386}/test-i386-shift.h (100%) rename tests/tcg/{ => i386}/test-i386-ssse3.c (100%) rename tests/tcg/{ => i386}/test-i386-vm86.S (100%) rename tests/tcg/{ => i386}/test-i386.c (100%) rename tests/tcg/{ => i386}/test-i386.h (100%) diff --git a/MAINTAINERS b/MAINTAINERS index ebc7117993..688f166d39 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -283,6 +283,7 @@ M: Richard Henderson <r...@twiddle.net> M: Eduardo Habkost <ehabk...@redhat.com> S: Maintained F: target/i386/ +F: tests/tcg/i386/ F: hw/i386/ F: disas/i386.c T: git git://github.com/ehabkost/qemu.git x86-next diff --git a/tests/tcg/README b/tests/tcg/README index 0890044cf0..469504c4cb 100644 --- a/tests/tcg/README +++ b/tests/tcg/README @@ -3,45 +3,6 @@ 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. -i386 -==== - -test-i386 ---------- - -This program executes most of the 16 bit and 32 bit x86 instructions and -generates a text output, for comparison with the output obtained with -a real CPU or another emulator. - -The Linux system call modify_ldt() is used to create x86 selectors -to test some 16 bit addressing and 32 bit with segmentation cases. - -The Linux system call vm86() is used to test vm86 emulation. - -Various exceptions are raised to test most of the x86 user space -exception reporting. - -linux-test ----------- - -This program tests various Linux system calls. It is used to verify -that the system call parameters are correctly converted between target -and host CPUs. - -test-i386-fprem ---------------- - -runcom ------- - -test-mmap ---------- - -sha1 ----- - -hello-i386 ----------- ARM diff --git a/tests/tcg/i386/Makefile.target b/tests/tcg/i386/Makefile.target new file mode 100644 index 0000000000..2f27b65e2d --- /dev/null +++ b/tests/tcg/i386/Makefile.target @@ -0,0 +1,30 @@ +# i386 cross compile notes + +I386_SRC=$(SRC_PATH)/tests/tcg/i386 + +# Set search path for all sources +VPATH += $(I386_SRC) + +I386_SRCS=$(notdir $(wildcard $(I386_SRC)/*.c)) +I386_TESTS=$(I386_SRCS:.c=) + +# Update TESTS +TESTS+=$(I386_TESTS) + +ifneq ($(TARGET_NAME),x86_64) +CFLAGS+=-m32 +endif + +# +# hello-i386 is a barebones app +# +hello-i386: CFLAGS+=-ffreestanding +hello-i386: LDFLAGS+=-nostdlib + +# +# test-386 includes a couple of additional objects that need to be linked together +# + +test-i386: test-i386.c test-i386-code16.S test-i386-vm86.S test-i386.h test-i386-shift.h test-i386-muldiv.h + $(CC) $(CFLAGS) $(LDFLAGS) -o $@ \ + $(<D)/test-i386.c $(<D)/test-i386-code16.S $(<D)/test-i386-vm86.S -lm diff --git a/tests/tcg/i386/README b/tests/tcg/i386/README new file mode 100644 index 0000000000..7a0a47bf27 --- /dev/null +++ b/tests/tcg/i386/README @@ -0,0 +1,38 @@ +These are i386 specific guest programs + +test-i386 +--------- + +This program executes most of the 16 bit and 32 bit x86 instructions and +generates a text output, for comparison with the output obtained with +a real CPU or another emulator. + +The Linux system call modify_ldt() is used to create x86 selectors +to test some 16 bit addressing and 32 bit with segmentation cases. + +The Linux system call vm86() is used to test vm86 emulation. + +Various exceptions are raised to test most of the x86 user space +exception reporting. + +linux-test +---------- + +This program tests various Linux system calls. It is used to verify +that the system call parameters are correctly converted between target +and host CPUs. + +test-i386-fprem +--------------- + +runcom +------ + +test-mmap +--------- + +sha1 +---- + +hello-i386 +---------- diff --git a/tests/tcg/hello-i386.c b/tests/tcg/i386/hello-i386.c similarity index 100% rename from tests/tcg/hello-i386.c rename to tests/tcg/i386/hello-i386.c diff --git a/tests/tcg/pi_10.com b/tests/tcg/i386/pi_10.com similarity index 100% rename from tests/tcg/pi_10.com rename to tests/tcg/i386/pi_10.com diff --git a/tests/tcg/runcom.c b/tests/tcg/i386/runcom.c similarity index 100% rename from tests/tcg/runcom.c rename to tests/tcg/i386/runcom.c diff --git a/tests/tcg/test-i386-code16.S b/tests/tcg/i386/test-i386-code16.S similarity index 100% rename from tests/tcg/test-i386-code16.S rename to tests/tcg/i386/test-i386-code16.S diff --git a/tests/tcg/test-i386-fprem.c b/tests/tcg/i386/test-i386-fprem.c similarity index 100% rename from tests/tcg/test-i386-fprem.c rename to tests/tcg/i386/test-i386-fprem.c diff --git a/tests/tcg/test-i386-muldiv.h b/tests/tcg/i386/test-i386-muldiv.h similarity index 100% rename from tests/tcg/test-i386-muldiv.h rename to tests/tcg/i386/test-i386-muldiv.h diff --git a/tests/tcg/test-i386-shift.h b/tests/tcg/i386/test-i386-shift.h similarity index 100% rename from tests/tcg/test-i386-shift.h rename to tests/tcg/i386/test-i386-shift.h diff --git a/tests/tcg/test-i386-ssse3.c b/tests/tcg/i386/test-i386-ssse3.c similarity index 100% rename from tests/tcg/test-i386-ssse3.c rename to tests/tcg/i386/test-i386-ssse3.c diff --git a/tests/tcg/test-i386-vm86.S b/tests/tcg/i386/test-i386-vm86.S similarity index 100% rename from tests/tcg/test-i386-vm86.S rename to tests/tcg/i386/test-i386-vm86.S diff --git a/tests/tcg/test-i386.c b/tests/tcg/i386/test-i386.c similarity index 100% rename from tests/tcg/test-i386.c rename to tests/tcg/i386/test-i386.c diff --git a/tests/tcg/test-i386.h b/tests/tcg/i386/test-i386.h similarity index 100% rename from tests/tcg/test-i386.h rename to tests/tcg/i386/test-i386.h -- 2.17.0