[PATCH v3] Support Intel AVX10.2 media instructions
Jiang, Haochen
haochen.jiang@intel.com
Sat Sep 28 15:12:03 GMT 2024
> From: Jan Beulich <jbeulich@suse.com>
> Sent: Wednesday, September 25, 2024 10:42 PM
>
> On 25.09.2024 16:39, Haochen Jiang wrote:
> > --- a/opcodes/i386-opc.tbl
> > +++ b/opcodes/i386-opc.tbl
> > @@ -3057,11 +3057,15 @@ vpdpwssd<vnni><sat>, 0x6652|<sat:opc>,
> <vnni:avx>_VNNI, Modrm|Space0F38|Src1VVVV
> >
> > // {AVX512,AVX}_VNNI instructions end
> >
> > +<vnni_vex:int8:int16:attr:reg:mem, $y:_VNNI_INT8:_VNNI_INT16:Vex::,
> $z:10_2:10_2:Masking|Broadcast|Disp8ShiftVL:RegZMM:Dword>
>
> If this really is needed (contrary to previously outlined plans), it
> wants wrapping across 3 lines (just like is done for other long-ish
> templates). However, despite you saying something about this in the
> description, I don't follow why this is needed.
>
The problem here is for <vnni> template, which is used for
AVX512_VNNI/AVX_VNNI, $z comes first due to AVX512_VNNI is the
ISA introduced earlier and we need to place it before the VEX version
for table order.
But for AVX_VNNI_INT8/16 and AVX10.2, VEX version comes first.
We need $y placed before $z for table order.
Correct me if I'm wrong.
Thx,
Haochen
More information about the Binutils
mailing list