From: Richard Henderson <richard.henderson@linaro.org>
To: Laurent Vivier <laurent@vivier.eu>, qemu-devel@nongnu.org
Cc: Cornelia Huck <cohuck@redhat.com>,
Riku Voipio <riku.voipio@iki.fi>,
qemu-s390x@nongnu.org,
Aleksandar Markovic <amarkovic@wavecomp.com>,
Aleksandar Rikalo <aleksandar.rikalo@rt-rk.com>,
Aurelien Jarno <aurelien@aurel32.net>
Subject: Re: [PATCH v3 02/21] linux-user, alpha: add syscall table generation support
Date: Fri, 28 Feb 2020 20:44:34 -0800 [thread overview]
Message-ID: <ce6a0317-91ae-8ed5-a599-32d9e77c9726@linaro.org> (raw)
In-Reply-To: <20200225121553.2191597-3-laurent@vivier.eu>
On 2/25/20 4:15 AM, Laurent Vivier wrote:
> Copy syscall.tbl and syscallhdr.sh from linux/arch/alpha/kernel/syscalls v5.5
> Update syscallhdr.sh to generate QEMU syscall_nr.h
>
> Signed-off-by: Laurent Vivier <laurent@vivier.eu>
> ---
> configure | 3 +-
> linux-user/Makefile.objs | 2 +
> linux-user/alpha/Makefile.objs | 5 +
> linux-user/alpha/syscall.tbl | 479 ++++++++++++++++++++++++++++++++
> linux-user/alpha/syscall_nr.h | 492 ---------------------------------
> linux-user/alpha/syscallhdr.sh | 32 +++
> 6 files changed, 520 insertions(+), 493 deletions(-)
> create mode 100644 linux-user/alpha/Makefile.objs
> create mode 100644 linux-user/alpha/syscall.tbl
> delete mode 100644 linux-user/alpha/syscall_nr.h
> create mode 100644 linux-user/alpha/syscallhdr.sh
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
> +++ b/linux-user/alpha/syscallhdr.sh
> @@ -0,0 +1,32 @@
> +#!/bin/sh
> +# SPDX-License-Identifier: GPL-2.0
> +
> +in="$1"
> +out="$2"
> +my_abis=`echo "($3)" | tr ',' '|'`
> +prefix="$4"
> +offset="$5"
> +
> +fileguard=LINUX_USER_ALPHA_`basename "$out" | sed \
> + -e 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/' \
> + -e 's/[^A-Z0-9_]/_/g' -e 's/__/_/g'`
> +grep -E "^[0-9A-Fa-fXx]+[[:space:]]+${my_abis}" "$in" | sort -n | (
> + printf "#ifndef %s\n" "${fileguard}"
> + printf "#define %s\n" "${fileguard}"
> + printf "\n"
> +
> + nxt=0
> + while read nr abi name entry ; do
> + if [ -z "$offset" ]; then
> + printf "#define TARGET_NR_%s%s\t%s\n" \
> + "${prefix}" "${name}" "${nr}"
> + else
> + printf "#define TARGET_NR_%s%s\t(%s + %s)\n" \
> + "${prefix}" "${name}" "${offset}" "${nr}"
> + fi
> + nxt=$((nr+1))
> + done
> +
> + printf "\n"
> + printf "#endif /* %s */" "${fileguard}"
> +) > "$out"
>
Not an objection per-se, but why does every target need its own copy of this
script? There appears to be only the fileguard that differs between these.
Could we have a common script for the common cases?
r~
next prev parent reply other threads:[~2020-02-29 4:45 UTC|newest]
Thread overview: 27+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-02-25 12:15 [PATCH v3 00/21] linux-user: generate syscall_nr.sh Laurent Vivier
2020-02-25 12:15 ` [PATCH v3 01/21] linux-user: introduce parameters to generate syscall_nr.h Laurent Vivier
2020-02-29 4:35 ` Richard Henderson
2020-02-25 12:15 ` [PATCH v3 02/21] linux-user, alpha: add syscall table generation support Laurent Vivier
2020-02-29 4:44 ` Richard Henderson [this message]
2020-02-25 12:15 ` [PATCH v3 03/21] linux-user, hppa: " Laurent Vivier
2020-02-29 4:51 ` Richard Henderson
2020-02-25 12:15 ` [PATCH v3 04/21] linux-user, m68k: " Laurent Vivier
2020-02-25 12:15 ` [PATCH v3 05/21] linux-user, xtensa: " Laurent Vivier
2020-02-25 12:15 ` [PATCH v3 06/21] linux-user, sh4: " Laurent Vivier
2020-02-25 12:15 ` [PATCH v3 07/21] linux-user, microblaze: " Laurent Vivier
2020-02-25 12:15 ` [PATCH v3 08/21] linux-user, arm: " Laurent Vivier
2020-02-25 12:15 ` [PATCH v3 09/21] linux-user, ppc: " Laurent Vivier
2020-02-25 12:15 ` [PATCH v3 10/21] linux-user, s390x: remove syscall definitions for !TARGET_S390X Laurent Vivier
2020-02-25 12:15 ` [PATCH v3 11/21] linux-user, s390x: add syscall table generation support Laurent Vivier
2020-02-25 12:15 ` [PATCH v3 12/21] linux-user, sparc, sparc64: " Laurent Vivier
2020-02-25 12:15 ` [PATCH v3 13/21] linux-user, x86_64, i386: cleanup TARGET_NR_arch_prctl Laurent Vivier
2020-02-25 12:15 ` [PATCH v3 14/21] linux-user, i386: add syscall table generation support Laurent Vivier
2020-02-25 12:15 ` [PATCH v3 15/21] linux-user, x86_64: " Laurent Vivier
2020-02-25 12:15 ` [PATCH v3 16/21] linux-user, mips: " Laurent Vivier
2020-02-25 12:15 ` [PATCH v3 17/21] linux-user, mips64: " Laurent Vivier
2020-02-25 12:15 ` [PATCH v3 18/21] linux-user, scripts: add a script to update syscall.tbl Laurent Vivier
2020-02-25 12:15 ` [PATCH v3 19/21] linux-user: update syscall.tbl from linux 0bf999f9c5e7 Laurent Vivier
2020-02-25 12:15 ` [PATCH v3 20/21] linux-user,mips: move content of mips_syscall_args Laurent Vivier
2020-02-25 12:15 ` [PATCH v3 21/21] linux-user,mips: update syscall-args-o32.c.inc Laurent Vivier
2020-03-06 0:24 ` [PATCH v3 00/21] linux-user: generate syscall_nr.sh Taylor Simpson
2020-03-06 8:19 ` Laurent Vivier
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=ce6a0317-91ae-8ed5-a599-32d9e77c9726@linaro.org \
--to=richard.henderson@linaro.org \
--cc=aleksandar.rikalo@rt-rk.com \
--cc=amarkovic@wavecomp.com \
--cc=aurelien@aurel32.net \
--cc=cohuck@redhat.com \
--cc=laurent@vivier.eu \
--cc=qemu-devel@nongnu.org \
--cc=qemu-s390x@nongnu.org \
--cc=riku.voipio@iki.fi \
/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).