This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
Re: [AVX512] Whitespace issue on zeroing-masking specifier
- From: "Jan Beulich" <JBeulich at suse dot com>
- To: "H.J. Lu" <hjl dot tools at gmail dot com>,<cameron dot mcinally at nyu dot edu>
- Cc: <binutils at sourceware dot org>
- Date: Fri, 09 Mar 2018 02:13:32 -0700
- Subject: Re: [AVX512] Whitespace issue on zeroing-masking specifier
- Authentication-results: sourceware.org; auth=none
- References: <CAKs25gOxVH5gSxMwXgSTwtn_vP3kJqgpqX4J2j-dnt1XxAHMNw@mail.gmail.com>
>>> On 08.03.18 at 18:04, <cameron.mcinally@nyu.edu> wrote:
> I'm currently upgrading from GAS 2.26.0 to 2.30.0 and have hit a
> strange whitespace issue:
>
> #scrubbed#> cat test.s
> .globl main
> .type main,@function
> main:
> vmovdqa32 %zmm0, %zmm0 {%k1}{z}
> vmovdqa32 %zmm0, %zmm0 {%k1} {z} # <-- This one
> retq
> #scrubbed#> as test.s
> test.s: Assembler messages:
> test.s:5: Error: unknown vector operation: ` {z}'
>
> GAS 2.26.0 accepted the whitespace variant, however 2.30.0 does not.
Hmm, indeed, this changed from 2.28 to 2.29. I would guess this is
an unintended side effect of the addition of pseudo prefixes, which
changed how the scrubber treats '{'. I suppose we now need to
explicitly strip whitespace in check_VecOperations().
Jan