From: "Alex Bennée" <alex.bennee@linaro.org>
To: "Philippe Mathieu-Daudé" <f4bug@amsat.org>
Cc: cota@braap.org, famz@redhat.com, berrange@redhat.com,
balrogg@gmail.com, aurelien@aurel32.net, agraf@suse.de,
Peter Maydell <peter.maydell@linaro.org>,
Richard Henderson <richard.henderson@linaro.org>,
qemu-devel@nongnu.org, "open list:ARM" <qemu-arm@nongnu.org>
Subject: Re: [Qemu-devel] [PATCH v4 26/49] tests/tcg: move ARM specific tests into subdir
Date: Fri, 18 May 2018 16:58:37 +0100 [thread overview]
Message-ID: <87efi9dkgi.fsf@linaro.org> (raw)
In-Reply-To: <578dacec-2d74-6e6d-fbd2-091e46e21803@amsat.org>
Philippe Mathieu-Daudé <f4bug@amsat.org> writes:
> On 05/17/2018 02:46 PM, Alex Bennée wrote:
>> These only need to be built for ARM guests.
>>
>> 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>
>>
>> ---
>> v2
>> - do VPATH manipulation in tests/tcg/arm/Makefile.target
>> - merge with fix hello-arm test
>> v4
>> - update MAINTAINERS
>> ---
>> MAINTAINERS | 1 +
>> tests/tcg/README | 9 ---------
>> tests/tcg/arm/Makefile.target | 13 +++++++++++++
>> tests/tcg/arm/README | 11 +++++++++++
>> tests/tcg/{ => arm}/hello-arm.c | 0
>> tests/tcg/{ => arm}/test-arm-iwmmxt.s | 0
>> 6 files changed, 25 insertions(+), 9 deletions(-)
>> create mode 100644 tests/tcg/arm/Makefile.target
>> create mode 100644 tests/tcg/arm/README
>> rename tests/tcg/{ => arm}/hello-arm.c (100%)
>> rename tests/tcg/{ => arm}/test-arm-iwmmxt.s (100%)
>>
>> diff --git a/MAINTAINERS b/MAINTAINERS
>> index 17b9fc0fbe..4e331c4db4 100644
>> --- a/MAINTAINERS
>> +++ b/MAINTAINERS
>> @@ -135,6 +135,7 @@ M: Peter Maydell <peter.maydell@linaro.org>
>> L: qemu-arm@nongnu.org
>> S: Maintained
>> F: target/arm/
>> +F: tests/tcg/arm/
>> F: hw/arm/
>> F: hw/cpu/a*mpcore.c
>> F: include/hw/cpu/a*mpcore.h
>> diff --git a/tests/tcg/README b/tests/tcg/README
>> index 469504c4cb..625f2326e6 100644
>> --- a/tests/tcg/README
>> +++ b/tests/tcg/README
>> @@ -5,15 +5,6 @@ or they are architecture specific.
>>
>>
>>
>> -ARM
>> -===
>> -
>> -hello-arm
>> ----------
>> -
>> -test-arm-iwmmxt
>> ----------------
>> -
>> MIPS
>> ====
>>
>> diff --git a/tests/tcg/arm/Makefile.target b/tests/tcg/arm/Makefile.target
>> new file mode 100644
>> index 0000000000..bc6962ecc6
>> --- /dev/null
>> +++ b/tests/tcg/arm/Makefile.target
>> @@ -0,0 +1,13 @@
>> +# -*- Mode: makefile -*-
>> +#
>> +# ARM - included from tests/tcg/Makefile.target
>> +#
>> +
>> +ARM_SRC=$(SRC_PATH)/tests/tcg/arm
>> +
>> +# Set search path for all sources
>> +VPATH += $(ARM_SRC)
>> +
>> +
>> +hello-arm: CFLAGS+=-marm -ffreestanding
>
> So we are only testing the ARMv7, but linux-user provides ARMv5 and
> ARMv6 cpus.
>
> There are still boards shipped with those cpus, so I think QEMU will
> still be useful nowadays with those older archs.
> Can we consider add tests for them?
> If so, I volunteer to prepare Docker cross images :)
Hmm OK but we'd a bunch of new tests and something like this:
modified tests/tcg/arm/Makefile.target
@@ -8,13 +8,23 @@ ARM_SRC=$(SRC_PATH)/tests/tcg/arm
# Set search path for all sources
VPATH += $(ARM_SRC)
-ARM_TESTS=hello-arm test-arm-iwmmxt
+ARM_TESTS=hello-arm hello-arm-v6 test-arm-iwmmxt
TESTS += $(ARM_TESTS) fcvt
hello-arm: CFLAGS+=-marm -ffreestanding
hello-arm: LDFLAGS+=-nostdlib
+hello-arm-v6: CFLAGS+=-march=armv6 -ffreestanding
+hello-arm-v6: LDFLAGS+=-nostdlib
+hello-arm-v6: hello-arm.c
+ $(CC) $(CFLAGS) $< -o $@ $(LDFLAGS)
+
+run-hello-arm-v6: hello-arm-v6
+ $(call quiet-command, \
+ timeout $(TIMEOUT) $(QEMU) -cpu arm926 $< > $<.out, \
+ "TEST", "$< on $(TARGET_NAME)")
+
Of course that fails because:
/home/alex/lsrc/qemu/qemu.git/tests/tcg/arm/hello-arm.c:106:1: sorry, unimplemented: Thumb-1 hard-float VFP ABI
_syscall1(int,exit1,int,status);
^~~~~~~~~
I think using external tests like risu is probably better for this sort
of coverage.
>
> arm-linux-user/tests$ ../qemu-arm -cpu arm926 -d in_asm,op sha1
> ----------------
> IN:
> 0x000102ec: f04f 0b00 mov.w fp, #0
>
> OP:
> ld_i32 tmp5,env,$0xffffffffffffffec
> movi_i32 tmp6,$0x0
> brcond_i32 tmp5,tmp6,lt,$L0
>
> ---- 000102ec 00000000 00000000
> movi_i32 pc,$0x102ec
> movi_i32 tmp5,$0x1
> movi_i32 tmp6,$0x2000000
> movi_i32 tmp7,$0x1
> call exception_with_syndrome,$0x0,$0,env,tmp5,tmp6,tmp7
> set_label $L0
> exit_tb $0x563aed6cc043
>
> qemu: uncaught target signal 4 (Illegal instruction) - core dumped
> Illegal instruction
>
>> +hello-arm: LDFLAGS+=-nostdlib
>> diff --git a/tests/tcg/arm/README b/tests/tcg/arm/README
>> new file mode 100644
>> index 0000000000..e6307116e2
>> --- /dev/null
>> +++ b/tests/tcg/arm/README
>> @@ -0,0 +1,11 @@
>> +These are ARM specific guest programs
>> +
>> +hello-arm
>> +---------
>> +
>> +A very simple inline assembly, write syscall based hello world
>> +
>> +test-arm-iwmmxt
>> +---------------
>> +
>> +A simple test case for older iwmmxt extended ARMs
>> diff --git a/tests/tcg/hello-arm.c b/tests/tcg/arm/hello-arm.c
>> similarity index 100%
>> rename from tests/tcg/hello-arm.c
>> rename to tests/tcg/arm/hello-arm.c
>> diff --git a/tests/tcg/test-arm-iwmmxt.s b/tests/tcg/arm/test-arm-iwmmxt.s
>> similarity index 100%
>> rename from tests/tcg/test-arm-iwmmxt.s
>> rename to tests/tcg/arm/test-arm-iwmmxt.s
>>
--
Alex Bennée
next prev parent reply other threads:[~2018-05-18 15:58 UTC|newest]
Thread overview: 85+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-05-17 17:46 [Qemu-devel] [PATCH v4 00/49] fix building of tests/tcg Alex Bennée
2018-05-17 17:46 ` [Qemu-devel] [PATCH v4 01/49] docker: add "probe" command for configure Alex Bennée
2018-05-17 17:46 ` [Qemu-devel] [PATCH v4 02/49] configure: add test for docker availability Alex Bennée
2018-05-17 17:46 ` [Qemu-devel] [PATCH v4 03/49] configure: add support for --cross-cc-FOO Alex Bennée
2018-05-17 18:19 ` Richard Henderson
2018-05-17 17:46 ` [Qemu-devel] [PATCH v4 04/49] configure: move i386_cc to cross_cc_i386 Alex Bennée
2018-05-17 17:46 ` [Qemu-devel] [PATCH v4 05/49] configure: allow user to specify --cross-cc-cflags-foo= Alex Bennée
2018-05-17 17:46 ` [Qemu-devel] [PATCH v4 06/49] configure: set cross_cc_FOO for host compiler Alex Bennée
2018-05-17 17:46 ` [Qemu-devel] [PATCH v4 07/49] Makefile: Rename TARGET_DIRS to TARGET_LIST Alex Bennée
2018-05-17 17:46 ` [Qemu-devel] [PATCH v4 08/49] docker: Add "cc" subcommand Alex Bennée
2018-05-17 17:46 ` [Qemu-devel] [PATCH v4 09/49] docker: extend "cc" command to accept compiler Alex Bennée
2018-05-17 17:46 ` [Qemu-devel] [PATCH v4 10/49] docker: allow "cc" command to run in user context Alex Bennée
2018-05-17 17:46 ` [Qemu-devel] [PATCH v4 11/49] docker: Makefile.include introduce DOCKER_SCRIPT Alex Bennée
2018-05-17 17:46 ` [Qemu-devel] [PATCH v4 12/49] tests/tcg: move architecture independent tests into subdir Alex Bennée
2018-05-17 17:46 ` [Qemu-devel] [PATCH v4 13/49] tests/tcg/multiarch: Build fix for linux-test Alex Bennée
2018-05-17 17:46 ` [Qemu-devel] [PATCH v4 14/49] tests/tcg/multiarch: enable additional linux-test tests Alex Bennée
2018-05-17 17:46 ` [Qemu-devel] [PATCH v4 15/49] tests/tcg/multiarch: move most output to stdout Alex Bennée
2018-05-17 17:46 ` [Qemu-devel] [PATCH v4 16/49] tests/tcg: move i386 specific tests into subdir Alex Bennée
2018-05-17 17:46 ` [Qemu-devel] [PATCH v4 17/49] docker: Add fedora-i386-cross image Alex Bennée
2018-05-17 17:46 ` [Qemu-devel] [PATCH v4 18/49] tests/tcg: enable building for i386 Alex Bennée
2018-05-18 11:28 ` Paolo Bonzini
2018-05-17 17:46 ` [Qemu-devel] [PATCH v4 19/49] tests/tcg/i386: Build fix for hello-i386 Alex Bennée
2018-05-17 17:46 ` [Qemu-devel] [PATCH v4 20/49] tests/tcg/i386: fix test-i386 Alex Bennée
2018-05-17 19:04 ` Eric Blake
2018-05-17 19:57 ` Alex Bennée
2018-05-17 17:46 ` [Qemu-devel] [PATCH v4 21/49] tests/tcg/i386: add runner for test-i386-fprem Alex Bennée
2018-05-18 11:30 ` Paolo Bonzini
2018-05-18 12:27 ` Alex Bennée
2018-05-17 17:46 ` [Qemu-devel] [PATCH v4 22/49] tests/tcg/i386: disable i386 version of test-i386-ssse Alex Bennée
2018-05-17 19:56 ` Richard Henderson
2018-05-17 17:46 ` [Qemu-devel] [PATCH v4 23/49] tests/tcg/x86_64: add Makefile.target Alex Bennée
2018-05-17 17:46 ` [Qemu-devel] [PATCH v4 24/49] tests/tcg/i386/test-i386: use modern vector_size attributes Alex Bennée
2018-05-17 17:46 ` [Qemu-devel] [PATCH v4 25/49] tests/tcg/i386/test-i386: fix printf format Alex Bennée
2018-05-17 17:46 ` [Qemu-devel] [PATCH v4 26/49] tests/tcg: move ARM specific tests into subdir Alex Bennée
2018-05-18 15:26 ` Philippe Mathieu-Daudé
2018-05-18 15:58 ` Alex Bennée [this message]
2018-05-17 17:46 ` [Qemu-devel] [PATCH v4 27/49] tests/tcg: enable building for ARM Alex Bennée
2018-05-18 15:28 ` Philippe Mathieu-Daudé
2018-05-18 15:48 ` Alex Bennée
2018-05-17 17:46 ` [Qemu-devel] [PATCH v4 28/49] tests/tcg/arm: fix up test-arm-iwmmxt test Alex Bennée
2018-05-17 20:15 ` Richard Henderson
2018-05-17 17:46 ` [Qemu-devel] [PATCH v4 29/49] tests/tcg/arm: disable -p 32768 mmap test Alex Bennée
2018-05-17 20:20 ` Richard Henderson
2018-05-17 21:24 ` Alex Bennée
2018-05-17 21:34 ` Richard Henderson
2018-05-18 3:47 ` Philippe Mathieu-Daudé
2018-05-17 17:46 ` [Qemu-devel] [PATCH v4 30/49] tests/tcg: enable building for AArch64 Alex Bennée
2018-05-17 20:26 ` Richard Henderson
2018-05-18 14:57 ` Philippe Mathieu-Daudé
2018-05-17 17:47 ` [Qemu-devel] [PATCH v4 31/49] tests/tcg/aarch64: add Makefile.target Alex Bennée
2018-05-17 20:28 ` Richard Henderson
2018-05-17 21:25 ` Alex Bennée
2018-05-17 17:47 ` [Qemu-devel] [PATCH v4 32/49] tests/tcg/arm: add fcvt test cases for AArch32/64 Alex Bennée
2018-05-17 20:30 ` Richard Henderson
2018-05-18 3:45 ` Philippe Mathieu-Daudé
2018-05-18 8:16 ` Alex Bennée
2018-05-18 14:53 ` Philippe Mathieu-Daudé
2018-05-17 17:47 ` [Qemu-devel] [PATCH v4 33/49] tests/tcg: move MIPS specific tests into subdir Alex Bennée
2018-05-17 17:47 ` [Qemu-devel] [PATCH v4 34/49] tests/tcg: enable building for MIPS Alex Bennée
2018-05-18 14:49 ` Philippe Mathieu-Daudé
2018-05-17 17:47 ` [Qemu-devel] [PATCH v4 35/49] tests/tcg/mips: include common mips hello-mips Alex Bennée
2018-05-18 14:49 ` Philippe Mathieu-Daudé
2018-05-17 17:47 ` [Qemu-devel] [PATCH v4 36/49] tests/tcg: enable building for s390x Alex Bennée
2018-05-18 12:04 ` [Qemu-devel] [qemu-s390x] " David Hildenbrand
2018-05-17 17:47 ` [Qemu-devel] [PATCH v4 37/49] tests/tcg: enable building for ppc64 Alex Bennée
2018-05-17 17:47 ` [Qemu-devel] [PATCH v4 38/49] tests/tcg: enable building for Alpha Alex Bennée
2018-05-18 14:21 ` Philippe Mathieu-Daudé
2018-05-17 17:47 ` [Qemu-devel] [PATCH v4 39/49] tests/tcg/alpha: add Alpha specific tests Alex Bennée
2018-05-17 20:41 ` Richard Henderson
2018-05-18 14:25 ` Philippe Mathieu-Daudé
2018-05-17 17:47 ` [Qemu-devel] [PATCH v4 40/49] tests/tcg: enable building for HPPA Alex Bennée
2018-05-17 17:47 ` [Qemu-devel] [PATCH v4 41/49] tests/tcg: enable building for m68k Alex Bennée
2018-05-17 17:47 ` [Qemu-devel] [PATCH v4 42/49] tests/tcg: enable building for sh4 Alex Bennée
2018-05-17 17:47 ` [Qemu-devel] [PATCH v4 43/49] tests/tcg: enable building for sparc64 Alex Bennée
2018-05-18 14:28 ` Philippe Mathieu-Daudé
2018-05-17 17:47 ` [Qemu-devel] [PATCH v4 44/49] tests/tcg: enable building for mips64 Alex Bennée
2018-05-18 14:26 ` Philippe Mathieu-Daudé
2018-05-17 17:47 ` [Qemu-devel] [PATCH v4 45/49] tests/tcg: enable building for RISCV64 Alex Bennée
2018-05-18 14:24 ` Philippe Mathieu-Daudé
2018-05-17 17:47 ` [Qemu-devel] [PATCH v4 46/49] tests/tcg/Makefile: update to be called from Makefile.target Alex Bennée
2018-05-17 20:43 ` Richard Henderson
2018-05-18 14:49 ` Philippe Mathieu-Daudé
2018-05-17 17:47 ` [Qemu-devel] [PATCH v4 47/49] Makefile.target: add (clean-/build-)guest-tests targets Alex Bennée
2018-05-17 17:47 ` [Qemu-devel] [PATCH v4 48/49] tests/Makefile.include: add [build|clean|check]-tcg targets Alex Bennée
2018-05-17 17:47 ` [Qemu-devel] [PATCH v4 49/49] tests/tcg: override runners for broken tests (!UPSTREAM) Alex Bennée
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87efi9dkgi.fsf@linaro.org \
--to=alex.bennee@linaro.org \
--cc=agraf@suse.de \
--cc=aurelien@aurel32.net \
--cc=balrogg@gmail.com \
--cc=berrange@redhat.com \
--cc=cota@braap.org \
--cc=f4bug@amsat.org \
--cc=famz@redhat.com \
--cc=peter.maydell@linaro.org \
--cc=qemu-arm@nongnu.org \
--cc=qemu-devel@nongnu.org \
--cc=richard.henderson@linaro.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).