tests/tcg: move i386 specific tests into subdir

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.bennee@linaro.org>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Tested-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
This commit is contained in:
Alex Bennée 2018-04-05 15:35:11 +01:00
parent 07c85b696a
commit 4132431f24
15 changed files with 69 additions and 39 deletions

View File

@ -283,6 +283,7 @@ M: Richard Henderson <rth@twiddle.net>
M: Eduardo Habkost <ehabkost@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

View File

@ -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

View File

@ -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

38
tests/tcg/i386/README Normal file
View File

@ -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
----------