qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: "Alex Bennée" <alex.bennee@linaro.org>
To: Jan Bobek <jan.bobek@gmail.com>
Cc: Richard Henderson <richard.henderson@linaro.org>, qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] [RISU v3 11/11] risu_reginfo_i386: rework --xfeatures value parsing
Date: Fri, 24 May 2019 10:32:22 +0100	[thread overview]
Message-ID: <87a7fc19ll.fsf@zen.linaroharston> (raw)
In-Reply-To: <20190523204409.21068-12-jan.bobek@gmail.com>


Jan Bobek <jan.bobek@gmail.com> writes:

> Have the --xfeatures option accept "sse", "avx" and "avx512" in
> addition to a plain numerical value, purely for users' convenience.
> Don't fail silently when an incorrect value is specified, to avoid
> confusion.
>
> Suggested-by: Richard Henderson <richard.henderson@linaro.org>
> Signed-off-by: Jan Bobek <jan.bobek@gmail.com>

Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
Tested-by: Alex Bennée <alex.bennee@linaro.org>


> ---
>  risu_reginfo_i386.c | 19 ++++++++++++++++++-
>  1 file changed, 18 insertions(+), 1 deletion(-)
>
> diff --git a/risu_reginfo_i386.c b/risu_reginfo_i386.c
> index 01ea179..194e0ad 100644
> --- a/risu_reginfo_i386.c
> +++ b/risu_reginfo_i386.c
> @@ -53,8 +53,25 @@ const char * const arch_extra_help
>
>  void process_arch_opt(int opt, const char *arg)
>  {
> +    char *endptr;
> +
>      assert(opt == FIRST_ARCH_OPT);
> -    xfeatures = strtoull(arg, 0, 0);
> +
> +    if (!strcmp(arg, "sse")) {
> +        xfeatures = XFEAT_X87 | XFEAT_SSE;
> +    } else if (!strcmp(arg, "avx")) {
> +        xfeatures = XFEAT_X87 | XFEAT_SSE | XFEAT_AVX;
> +    } else if (!strcmp(arg, "avx512")) {
> +        xfeatures = XFEAT_X87 | XFEAT_SSE | XFEAT_AVX | XFEAT_AVX512;
> +    } else {
> +        xfeatures = strtoull(arg, &endptr, 0);
> +        if (*endptr) {
> +            fprintf(stderr,
> +                    "Unable to parse '%s' in '%s' into an xfeatures integer mask\n",
> +                    endptr, arg);
> +            exit(1);
> +        }
> +    }
>  }
>
>  const int reginfo_size(void)


--
Alex Bennée


  reply	other threads:[~2019-05-24  9:33 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-05-23 20:43 [Qemu-devel] [RISU v3 00/11] Support for i386/x86_64 with vector extensions Jan Bobek
2019-05-23 20:43 ` [Qemu-devel] [RISU v3 01/11] Makefile: undefine the arch name symbol Jan Bobek
2019-05-23 20:44 ` [Qemu-devel] [RISU v3 02/11] risu_i386: move reginfo_t and related defines to risu_reginfo_i386.h Jan Bobek
2019-05-23 20:44 ` [Qemu-devel] [RISU v3 03/11] risu_i386: move reginfo-related code to risu_reginfo_i386.c Jan Bobek
2019-05-23 20:44 ` [Qemu-devel] [RISU v3 04/11] risu_reginfo_i386: implement arch-specific reginfo interface Jan Bobek
2019-05-23 20:44 ` [Qemu-devel] [RISU v3 05/11] risu_i386: implement missing CPU-specific functions Jan Bobek
2019-05-23 20:44 ` [Qemu-devel] [RISU v3 06/11] risu_i386: remove old unused code Jan Bobek
2019-05-23 20:44 ` [Qemu-devel] [RISU v3 07/11] test_i386: change syntax from nasm to gas Jan Bobek
2019-05-24  9:28   ` Alex Bennée
2019-05-23 20:44 ` [Qemu-devel] [RISU v3 08/11] configure: add i386/x86_64 architectures Jan Bobek
2019-05-23 20:44 ` [Qemu-devel] [RISU v3 09/11] i386: Add avx512 state to reginfo_t Jan Bobek
2019-05-24  9:29   ` Alex Bennée
2019-05-23 20:44 ` [Qemu-devel] [RISU v3 10/11] risu_reginfo_i386: replace xfeature constants with symbolic names Jan Bobek
2019-05-23 20:44 ` [Qemu-devel] [RISU v3 11/11] risu_reginfo_i386: rework --xfeatures value parsing Jan Bobek
2019-05-24  9:32   ` Alex Bennée [this message]
2019-05-24  9:27 ` [Qemu-devel] [RISU PATCH] build-all-arches: include x86 triplets in the build Alex Bennée
2019-05-24  9:42 ` [Qemu-devel] [RISU v3 00/11] Support for i386/x86_64 with vector extensions Alex Bennée
2019-06-07 10:07   ` Peter Maydell
2019-06-07 11:58     ` Alex Bennée
2019-06-07 13:36       ` Peter Maydell

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=87a7fc19ll.fsf@zen.linaroharston \
    --to=alex.bennee@linaro.org \
    --cc=jan.bobek@gmail.com \
    --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).