This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
Re: [PATCH] x86: Properly encode vmovd with 64-bit memeory
- From: "Jan Beulich" <JBeulich at suse dot com>
- To: "H.J. Lu" <hjl dot tools at gmail dot com>
- Cc: "Binutils" <binutils at sourceware dot org>
- Date: Mon, 08 Jan 2018 04:39:14 -0700
- Subject: Re: [PATCH] x86: Properly encode vmovd with 64-bit memeory
- Authentication-results: sourceware.org; auth=none
- References: <20180108011834.GA9768@gmail.com> <5A533E7B020000780019BFDD@prv-mh.provo.novell.com> <CAMe9rOqeZv24S2-sypd8zXM2E5oVTZE-pV=r0-4AmXzeTes5=w@mail.gmail.com>
>>> On 08.01.18 at 12:14, <hjl.tools@gmail.com> wrote:
> On Mon, Jan 8, 2018 at 12:48 AM, Jan Beulich <JBeulich@suse.com> wrote:
>> Furthermore I think that the AVX512 64-bit variant should go away
>> altogether - it's register form is just a longer re-encoding of the
>> AVX form, and hence redundant, and gcc (afaics) doesn't use it.
>
> Shouln't vmovd with upper 32 xmm registers be encoded with AVX512?
No, such an instruction simply doesn't exist (as per SDM). The
difference to the AVX flavor is that gcc new enough to support
AVX512 is also new enough to check for the availability of the
well-formed VMOVQ, and there's also no mode equivalent to
SSE2AVX to take care of.
Jan