[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [RISU v3 07/11] test_i386: change syntax from nasm to g
From: |
Alex Bennée |
Subject: |
Re: [Qemu-devel] [RISU v3 07/11] test_i386: change syntax from nasm to gas |
Date: |
Fri, 24 May 2019 10:28:17 +0100 |
User-agent: |
mu4e 1.3.2; emacs 26.1 |
Jan Bobek <address@hidden> writes:
> This allows us to drop dependency on NASM and build the test image
> with GCC only. Adds support for x86_64, too.
>
> Suggested-by: Richard Henderson <address@hidden>
> Reviewed-by: Richard Henderson <address@hidden>
> Signed-off-by: Jan Bobek <address@hidden>
Reviewed-by: Alex Bennée <address@hidden>
> ---
> Makefile | 3 +++
> test_i386.S | 41 +++++++++++++++++++++++++++++++++++++++++
> test_i386.s | 27 ---------------------------
> 3 files changed, 44 insertions(+), 27 deletions(-)
> create mode 100644 test_i386.S
> delete mode 100644 test_i386.s
>
> diff --git a/Makefile b/Makefile
> index b362dbe..6ab014a 100644
> --- a/Makefile
> +++ b/Makefile
> @@ -49,6 +49,9 @@ $(PROG): $(OBJS)
> %_$(ARCH).elf: %_$(ARCH).s
> $(AS) -o $@ $<
>
> +%_$(ARCH).elf: %_$(ARCH).S
> + $(CC) $(CPPFLAGS) -o $@ -c $<
> +
> clean:
> rm -f $(PROG) $(OBJS) $(BINS)
>
> diff --git a/test_i386.S b/test_i386.S
> new file mode 100644
> index 0000000..456b99c
> --- /dev/null
> +++ b/test_i386.S
> @@ -0,0 +1,41 @@
> +/*#############################################################################
> + * Copyright (c) 2010 Linaro Limited
> + * All rights reserved. This program and the accompanying materials
> + * are made available under the terms of the Eclipse Public License v1.0
> + * which accompanies this distribution, and is available at
> + * http://www.eclipse.org/legal/epl-v10.html
> + *
> + * Contributors:
> + * Peter Maydell (Linaro) - initial implementation
> +
> *###########################################################################*/
> +
> +/* A trivial test image for x86 */
> +
> +/* Initialise the registers to avoid spurious mismatches */
> + xor %eax, %eax
> + sahf /* init eflags */
> +
> + mov $0x12345678, %eax
> + mov $0x9abcdef0, %ebx
> + mov $0x97361234, %ecx
> + mov $0x84310284, %edx
> + mov $0x83624173, %edi
> + mov $0xfaebfaeb, %esi
> + mov $0x84610123, %ebp
> +
> +#ifdef __x86_64__
> + movq $0x123456789abcdef0, %r8
> + movq $0xaaaabbbbccccdddd, %r9
> + movq $0x1010101010101010, %r10
> + movq $0x1111111111111111, %r11
> + movq $0x1212121212121212, %r12
> + movq $0x1313131313131313, %r13
> + movq $0x1414141414141414, %r14
> + movq $0x1515151515151515, %r15
> +#endif
> +
> +/* do compare */
> + ud1 %eax, %eax
> +
> +/* exit test */
> + ud1 %ecx, %eax
> diff --git a/test_i386.s b/test_i386.s
> deleted file mode 100644
> index a2140a0..0000000
> --- a/test_i386.s
> +++ /dev/null
> @@ -1,27 +0,0 @@
> -;###############################################################################
> -;# Copyright (c) 2010 Linaro Limited
> -;# All rights reserved. This program and the accompanying materials
> -;# are made available under the terms of the Eclipse Public License v1.0
> -;# which accompanies this distribution, and is available at
> -;# http://www.eclipse.org/legal/epl-v10.html
> -;#
> -;# Contributors:
> -;# Peter Maydell (Linaro) - initial implementation
> -;###############################################################################
> -
> -; A trivial test image for x86
> -
> -BITS 32
> -; Initialise the registers to avoid spurious mismatches
> -mov eax, 0x12345678
> -mov ebx, 0x9abcdef0
> -mov ecx, 0x97361234
> -mov edx, 0x84310284
> -mov edi, 0x83624173
> -mov esi, 0xfaebfaeb
> -mov ebp, 0x84610123
> -; UD1 : do compare
> -UD1
> -
> -; UD2 : exit test
> -UD2
--
Alex Bennée
- [Qemu-devel] [RISU v3 00/11] Support for i386/x86_64 with vector extensions, Jan Bobek, 2019/05/23
- [Qemu-devel] [RISU v3 01/11] Makefile: undefine the arch name symbol, Jan Bobek, 2019/05/23
- [Qemu-devel] [RISU v3 02/11] risu_i386: move reginfo_t and related defines to risu_reginfo_i386.h, Jan Bobek, 2019/05/23
- [Qemu-devel] [RISU v3 03/11] risu_i386: move reginfo-related code to risu_reginfo_i386.c, Jan Bobek, 2019/05/23
- [Qemu-devel] [RISU v3 04/11] risu_reginfo_i386: implement arch-specific reginfo interface, Jan Bobek, 2019/05/23
- [Qemu-devel] [RISU v3 06/11] risu_i386: remove old unused code, Jan Bobek, 2019/05/23
- [Qemu-devel] [RISU v3 05/11] risu_i386: implement missing CPU-specific functions, Jan Bobek, 2019/05/23
- [Qemu-devel] [RISU v3 08/11] configure: add i386/x86_64 architectures, Jan Bobek, 2019/05/23
- [Qemu-devel] [RISU v3 10/11] risu_reginfo_i386: replace xfeature constants with symbolic names, Jan Bobek, 2019/05/23
- [Qemu-devel] [RISU v3 07/11] test_i386: change syntax from nasm to gas, Jan Bobek, 2019/05/23
- Re: [Qemu-devel] [RISU v3 07/11] test_i386: change syntax from nasm to gas,
Alex Bennée <=
- [Qemu-devel] [RISU v3 09/11] i386: Add avx512 state to reginfo_t, Jan Bobek, 2019/05/23
- [Qemu-devel] [RISU v3 11/11] risu_reginfo_i386: rework --xfeatures value parsing, Jan Bobek, 2019/05/23
- [Qemu-devel] [RISU PATCH] build-all-arches: include x86 triplets in the build, Alex Bennée, 2019/05/24
- Re: [Qemu-devel] [RISU v3 00/11] Support for i386/x86_64 with vector extensions, Alex Bennée, 2019/05/24