This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
Re: [PATCH 3/3] Enable Intel MOVDIRI, MOVDIR64B instructions.
- From: "Jan Beulich" <jbeulich at suse dot com>
- To: <hjl dot tools at gmail dot com>
- Cc: <igor dot v dot tsimbalist at intel dot com>,<binutils at sourceware dot org>
- Date: Wed, 09 May 2018 00:41:45 -0600
- Subject: Re: [PATCH 3/3] Enable Intel MOVDIRI, MOVDIR64B instructions.
- References: <D511F25789BA7F4EBA64C8A63891A002AFDCBBE8@IRSMSX102.ger.corp.intel.com> <5AE2C5ED02000078001BEFD9@prv1-mh.provo.novell.com> <CAMe9rOrNCTeNDHVtssWd0FVc_OHidyG-C3x9hrv0i4Z+fGgu7A@mail.gmail.com>
>>> "H.J. Lu" <hjl.tools@gmail.com> 05/07/18 7:55 PM >>>
>On Thu, Apr 26, 2018 at 11:40 PM, Jan Beulich <JBeulich@suse.com> wrote:
>>>>> On 26.04.18 at 21:49, <igor.v.tsimbalist@intel.com> wrote:
>>>+movdir64b, 2, 0x660f38f8, None, 3, CpuMOVDIR64B|CpuNo64, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|AddrPrefixOpReg, { Unspecified|ZMMword|BaseIndex|Disp8|Disp32|Disp32S, Reg16|Reg32 }
>>>+movdir64b, 2, 0x660f38f8, None, 3, CpuMOVDIR64B|Cpu64, Modrm|IgnoreSize|No_bSuf|No_wSuf|No_lSuf|No_sSuf|No_qSuf|No_ldSuf|NoRex64|AddrPrefixOpReg, { Unspecified|ZMMword|BaseIndex|Disp8|Disp32|Disp32S, Reg32|Reg64 }
>>
>> Almost all the same here. Additionally, while I can see that ZMMword fits
>> the 64-byte operand size, I really think it would look rather odd to have
>> "zmmword ptr" used on an operand here. Simply require no operand size
>> prefix (in Intel syntax mode), just like you make the disassembler not
>> produce any?
>
>Fixed. We need 2 templates since Reg16 isn't supported in 64-bit mode.
Well, yes, with the current code in tc-i386.c this is unavoidable. I have a
respective item on my todo list already, since it would also help SVM insns
(which currently wrongly disallow Reg16) without having to duplicate their
templates.
In any event - please drop the now redundant Disp<N> from all three templates.
Jan