On Tue, May 12, 2020 at 4:10 PM tip-bot2 for Uros Bizjak
<[email protected]> wrote:
>
> The following commit has been merged into the x86/cpu branch of tip:
>
> Commit-ID:     7e32a9dac9926241d56851e1517c9391d39fb48e
> Gitweb:        
> https://git.kernel.org/tip/7e32a9dac9926241d56851e1517c9391d39fb48e
> Author:        Uros Bizjak <[email protected]>
> AuthorDate:    Fri, 08 May 2020 11:22:47 +02:00
> Committer:     Borislav Petkov <[email protected]>
> CommitterDate: Tue, 12 May 2020 16:05:30 +02:00
>
> x86/cpu: Use INVPCID mnemonic in invpcid.h
>
> The current minimum required version of binutils is 2.23, which supports
> the INVPCID instruction mnemonic. Replace the byte-wise specification of
> INVPCID with the proper mnemonic.
>
>  [ bp: Add symbolic operand names for increased readability and flip
>    their order like the insn expects them for the AT&T syntax. ]

Actually, the order was correct for AT&T syntax in the original patch.

The insn template for AT&T syntax goes:

insn arg2, arg1, arg0

where rightmost arguments are output operands.

The operands in asm template go

asm ("insn template" : output0, output1 : input0, input1 : clobbers)

so, in effect:

asm ("insn template" : arg0, arg1 : arg2, arg3: clobbers)

As you can see, the operand order in insn tempate is reversed for AT&T
syntax. I didn't notice the reversal of operands in your improvement.

Uros.


Uros.

Reply via email to