qemu with hax to log dma reads & writes jcs.org/2018/11/12/vfio

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>

+69 -39
+1
MAINTAINERS
··· 283 283 M: Eduardo Habkost <ehabkost@redhat.com> 284 284 S: Maintained 285 285 F: target/i386/ 286 + F: tests/tcg/i386/ 286 287 F: hw/i386/ 287 288 F: disas/i386.c 288 289 T: git git://github.com/ehabkost/qemu.git x86-next
-39
tests/tcg/README
··· 3 3 built for all guest architectures that support linux-user executable, 4 4 or they are architecture specific. 5 5 6 - i386 7 - ==== 8 - 9 - test-i386 10 - --------- 11 - 12 - This program executes most of the 16 bit and 32 bit x86 instructions and 13 - generates a text output, for comparison with the output obtained with 14 - a real CPU or another emulator. 15 - 16 - The Linux system call modify_ldt() is used to create x86 selectors 17 - to test some 16 bit addressing and 32 bit with segmentation cases. 18 - 19 - The Linux system call vm86() is used to test vm86 emulation. 20 - 21 - Various exceptions are raised to test most of the x86 user space 22 - exception reporting. 23 - 24 - linux-test 25 - ---------- 26 - 27 - This program tests various Linux system calls. It is used to verify 28 - that the system call parameters are correctly converted between target 29 - and host CPUs. 30 - 31 - test-i386-fprem 32 - --------------- 33 - 34 - runcom 35 - ------ 36 - 37 - test-mmap 38 - --------- 39 - 40 - sha1 41 - ---- 42 - 43 - hello-i386 44 - ---------- 45 6 46 7 47 8 ARM
tests/tcg/hello-i386.c tests/tcg/i386/hello-i386.c
+30
tests/tcg/i386/Makefile.target
··· 1 + # i386 cross compile notes 2 + 3 + I386_SRC=$(SRC_PATH)/tests/tcg/i386 4 + 5 + # Set search path for all sources 6 + VPATH += $(I386_SRC) 7 + 8 + I386_SRCS=$(notdir $(wildcard $(I386_SRC)/*.c)) 9 + I386_TESTS=$(I386_SRCS:.c=) 10 + 11 + # Update TESTS 12 + TESTS+=$(I386_TESTS) 13 + 14 + ifneq ($(TARGET_NAME),x86_64) 15 + CFLAGS+=-m32 16 + endif 17 + 18 + # 19 + # hello-i386 is a barebones app 20 + # 21 + hello-i386: CFLAGS+=-ffreestanding 22 + hello-i386: LDFLAGS+=-nostdlib 23 + 24 + # 25 + # test-386 includes a couple of additional objects that need to be linked together 26 + # 27 + 28 + test-i386: test-i386.c test-i386-code16.S test-i386-vm86.S test-i386.h test-i386-shift.h test-i386-muldiv.h 29 + $(CC) $(CFLAGS) $(LDFLAGS) -o $@ \ 30 + $(<D)/test-i386.c $(<D)/test-i386-code16.S $(<D)/test-i386-vm86.S -lm
+38
tests/tcg/i386/README
··· 1 + These are i386 specific guest programs 2 + 3 + test-i386 4 + --------- 5 + 6 + This program executes most of the 16 bit and 32 bit x86 instructions and 7 + generates a text output, for comparison with the output obtained with 8 + a real CPU or another emulator. 9 + 10 + The Linux system call modify_ldt() is used to create x86 selectors 11 + to test some 16 bit addressing and 32 bit with segmentation cases. 12 + 13 + The Linux system call vm86() is used to test vm86 emulation. 14 + 15 + Various exceptions are raised to test most of the x86 user space 16 + exception reporting. 17 + 18 + linux-test 19 + ---------- 20 + 21 + This program tests various Linux system calls. It is used to verify 22 + that the system call parameters are correctly converted between target 23 + and host CPUs. 24 + 25 + test-i386-fprem 26 + --------------- 27 + 28 + runcom 29 + ------ 30 + 31 + test-mmap 32 + --------- 33 + 34 + sha1 35 + ---- 36 + 37 + hello-i386 38 + ----------
tests/tcg/pi_10.com tests/tcg/i386/pi_10.com
tests/tcg/runcom.c tests/tcg/i386/runcom.c
tests/tcg/test-i386-code16.S tests/tcg/i386/test-i386-code16.S
tests/tcg/test-i386-fprem.c tests/tcg/i386/test-i386-fprem.c
tests/tcg/test-i386-muldiv.h tests/tcg/i386/test-i386-muldiv.h
tests/tcg/test-i386-shift.h tests/tcg/i386/test-i386-shift.h
tests/tcg/test-i386-ssse3.c tests/tcg/i386/test-i386-ssse3.c
tests/tcg/test-i386-vm86.S tests/tcg/i386/test-i386-vm86.S
tests/tcg/test-i386.c tests/tcg/i386/test-i386.c
tests/tcg/test-i386.h tests/tcg/i386/test-i386.h