aboutsummaryrefslogtreecommitdiff
path: root/tests/tcg
diff options
context:
space:
mode:
authorAlex Bennée <alex.bennee@linaro.org>2018-04-05 15:35:11 +0100
committerAlex Bennée <alex.bennee@linaro.org>2018-06-20 20:22:34 +0100
commit4132431f249ac89f413ff326ec4f960992806255 (patch)
tree21253d872fa6e7cc5262a10d2c2c8d698a098272 /tests/tcg
parent07c85b696ae01c35f3ede53d48cbacf342403ed7 (diff)
downloadqemu-4132431f249ac89f413ff326ec4f960992806255.zip
qemu-4132431f249ac89f413ff326ec4f960992806255.tar.gz
qemu-4132431f249ac89f413ff326ec4f960992806255.tar.bz2
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>
Diffstat (limited to 'tests/tcg')
-rw-r--r--tests/tcg/README39
-rw-r--r--tests/tcg/i386/Makefile.target30
-rw-r--r--tests/tcg/i386/README38
-rw-r--r--tests/tcg/i386/hello-i386.c (renamed from tests/tcg/hello-i386.c)0
-rw-r--r--tests/tcg/i386/pi_10.com (renamed from tests/tcg/pi_10.com)bin54 -> 54 bytes
-rw-r--r--tests/tcg/i386/runcom.c (renamed from tests/tcg/runcom.c)0
-rw-r--r--tests/tcg/i386/test-i386-code16.S (renamed from tests/tcg/test-i386-code16.S)0
-rw-r--r--tests/tcg/i386/test-i386-fprem.c (renamed from tests/tcg/test-i386-fprem.c)0
-rw-r--r--tests/tcg/i386/test-i386-muldiv.h (renamed from tests/tcg/test-i386-muldiv.h)0
-rw-r--r--tests/tcg/i386/test-i386-shift.h (renamed from tests/tcg/test-i386-shift.h)0
-rw-r--r--tests/tcg/i386/test-i386-ssse3.c (renamed from tests/tcg/test-i386-ssse3.c)0
-rw-r--r--tests/tcg/i386/test-i386-vm86.S (renamed from tests/tcg/test-i386-vm86.S)0
-rw-r--r--tests/tcg/i386/test-i386.c (renamed from tests/tcg/test-i386.c)0
-rw-r--r--tests/tcg/i386/test-i386.h (renamed from tests/tcg/test-i386.h)0
14 files changed, 68 insertions, 39 deletions
diff --git a/tests/tcg/README b/tests/tcg/README
index 0890044..469504c 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 0000000..2f27b65
--- /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 0000000..7a0a47b
--- /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
index fa00380..fa00380 100644
--- a/tests/tcg/hello-i386.c
+++ b/tests/tcg/i386/hello-i386.c
diff --git a/tests/tcg/pi_10.com b/tests/tcg/i386/pi_10.com
index 8993ba1..8993ba1 100644
--- a/tests/tcg/pi_10.com
+++ b/tests/tcg/i386/pi_10.com
Binary files differ
diff --git a/tests/tcg/runcom.c b/tests/tcg/i386/runcom.c
index d60342b..d60342b 100644
--- a/tests/tcg/runcom.c
+++ b/tests/tcg/i386/runcom.c
diff --git a/tests/tcg/test-i386-code16.S b/tests/tcg/i386/test-i386-code16.S
index 816c24b..816c24b 100644
--- a/tests/tcg/test-i386-code16.S
+++ b/tests/tcg/i386/test-i386-code16.S
diff --git a/tests/tcg/test-i386-fprem.c b/tests/tcg/i386/test-i386-fprem.c
index 1a71623..1a71623 100644
--- a/tests/tcg/test-i386-fprem.c
+++ b/tests/tcg/i386/test-i386-fprem.c
diff --git a/tests/tcg/test-i386-muldiv.h b/tests/tcg/i386/test-i386-muldiv.h
index 015f59e..015f59e 100644
--- a/tests/tcg/test-i386-muldiv.h
+++ b/tests/tcg/i386/test-i386-muldiv.h
diff --git a/tests/tcg/test-i386-shift.h b/tests/tcg/i386/test-i386-shift.h
index 3d8f84b..3d8f84b 100644
--- a/tests/tcg/test-i386-shift.h
+++ b/tests/tcg/i386/test-i386-shift.h
diff --git a/tests/tcg/test-i386-ssse3.c b/tests/tcg/i386/test-i386-ssse3.c
index 0a42bd0..0a42bd0 100644
--- a/tests/tcg/test-i386-ssse3.c
+++ b/tests/tcg/i386/test-i386-ssse3.c
diff --git a/tests/tcg/test-i386-vm86.S b/tests/tcg/i386/test-i386-vm86.S
index 3bb96c9..3bb96c9 100644
--- a/tests/tcg/test-i386-vm86.S
+++ b/tests/tcg/i386/test-i386-vm86.S
diff --git a/tests/tcg/test-i386.c b/tests/tcg/i386/test-i386.c
index 9599204..9599204 100644
--- a/tests/tcg/test-i386.c
+++ b/tests/tcg/i386/test-i386.c
diff --git a/tests/tcg/test-i386.h b/tests/tcg/i386/test-i386.h
index 75106b8..75106b8 100644
--- a/tests/tcg/test-i386.h
+++ b/tests/tcg/i386/test-i386.h