[PATCH 3/6] x86: improve operand reversal

Jan Beulich JBeulich@suse.com
Fri Aug 3 16:07:00 GMT 2018


>>> On 03.08.18 at 17:56, <hjl.tools@gmail.com> wrote:
> On Fri, Aug 3, 2018 at 8:50 AM, Jan Beulich <JBeulich@suse.com> wrote:
>>>>> On 03.08.18 at 17:30, <hjl.tools@gmail.com> wrote:
>>> On Fri, Aug 3, 2018 at 12:08 AM, Jan Beulich <JBeulich@suse.com> wrote:
>>>>>>> On 02.08.18 at 18:43, <hjl.tools@gmail.com> wrote:
>>>>> Please don't make any changes to the deprecated ".s".
>>>>
>>>> Excuse me, but how many more times should I state that I don't
>>>> make any changes to its behavior? I solely make {store} no longer
>>>> match .s in behavior. In fact I've specifically undone the change
>>>> to .s, in anticipation of your objection to any adjustment to it.
>>>
>>> Why do you change testcases of the .s suffix?
>>
>> s/change/add to/
>>
>> Deprecated or no, I think the .s suffix should still work, including
>> not causing assembly to fail when used. Try assembling the
>> additions without the source adjustments, and I think you'll find
>> some will fail. To me such adjustments are not "changes to its
> 
> Which one?

The additions to *opts.s. For example, this

	mov 0x12345678, %eax
	mov.s 0x12345678, %eax
	mov %eax, 0x12345678
	mov.s %eax, 0x12345678
	mov 0x123456789abcdef0, %eax
	mov.s 0x123456789abcdef0, %eax
	mov %eax, 0x123456789abcdef0
	mov.s %eax, 0x123456789abcdef0
	movabs 0x123456789abcdef0, %eax
	movabs.s 0x123456789abcdef0, %eax
	movabs %eax, 0x123456789abcdef0
	movabs.s %eax, 0x123456789abcdef0
	mov %eax, (%rdi)
	mov.s %eax, (%rdi)
	mov (%rdi), %eax
	mov.s (%rdi), %eax
	mov %cr0, %rax
	mov.s %cr0, %rax
	mov %rax, %cr7
	mov.s %rax, %cr7
	mov %dr0, %rax
	mov.s %dr0, %rax
	mov %rax, %dr7
	mov.s %rax, %dr7

doesn't assemble with 2.31.1 (several "unsupported instruction"
and one "operand size mismatch").

Jan




More information about the Binutils mailing list