This is the mail archive of the
mailing list for the binutils project.
Re: [PATCH] x86: allow suffix-less sign-extending movsb, movsw, and movsl
- From: "H.J. Lu" <hjl dot tools at gmail dot com>
- To: Jan Beulich <JBeulich at suse dot com>
- Cc: Binutils <binutils at sourceware dot org>
- Date: Fri, 1 Jul 2016 06:58:47 -0700
- Subject: Re: [PATCH] x86: allow suffix-less sign-extending movsb, movsw, and movsl
- Authentication-results: sourceware.org; auth=none
- References: <577655C002000078000FA593 at prv-mh dot provo dot novell dot com> <CAMe9rOodb0Grq+soDSJq4aZfneTEkmJy8_M-quUBn6FJyK_=6w at mail dot gmail dot com> <57768C3F02000078000FA6B0 at prv-mh dot provo dot novell dot com>
On Fri, Jul 1, 2016 at 6:29 AM, Jan Beulich <JBeulich@suse.com> wrote:
>>>> On 01.07.16 at 14:38, <email@example.com> wrote:
>> On Fri, Jul 1, 2016 at 2:36 AM, Jan Beulich <JBeulich@suse.com> wrote:
>>> ... just like has been made the case recently for movzb and movzw.
>>> Note that this exposed a bug in check_qword_reg(): A missing 'r' (or
>>> wrong 'e') register prefix needs to be complained about if the template
>>> allows for a 64-bit register, not a 32-bit one. I assume this was a
>>> copy-and-paste type of mistake (from check_long_reg()).
>> We don't support
>> movsl %eax,%rax
>> movsl (%rax),%rax
> Nor do we support (prior to this patch) the respective movsb and
> movsw. Adding support for them (and then consistently, i.e.
> including movsl) is the purpose of this patch.
>> Remind me why we changed to support
>> movzl %eax,%rax
>> movzl (%rax),%rax
>> There is no code outer there which uses this mnemonic. Maybe it
>> was a mistake to allow it.
> Where did you see this getting added?
My mistake. We shouldn't make "movsX" suffix-less since
there are "movsX".