[PATCH] Support APX NF
Cui, Lili
lili.cui@intel.com
Thu Feb 29 10:22:31 GMT 2024
> On 29.02.2024 09:39, Cui, Lili wrote:
> >> On 28.02.2024 17:11, H.J. Lu wrote:
> >>> On Tue, Feb 27, 2024 at 1:02 AM Cui, Lili <lili.cui@intel.com> wrote:
> >>>>
> >>>> gas/ChangeLog:
> >>>>
> >>>> * config/tc-i386.c (enum i386_error): Add unsupported_nf.
> >>>> (struct _i386_insn): Add has_nf.
> >>>> (need_evex_encoding): Ditto.
> >>>> (is_apx_evex_encoding): Ditto.
> >>>> (build_apx_evex_prefix): Encode the NF bit.
> >>>> (md_assemble): Handle unsupported_nf.
> >>>> (parse_insn): Handle Prefix_NF.
> >>>> (match_template): Check NF support.
> >>>> * testsuite/gas/i386/x86-64.exp: Add apx nf tests.
> >>>> * testsuite/gas/i386/x86-64-apx-nf-intel.d: New test.
> >>>> * testsuite/gas/i386/x86-64-apx-nf.d: Ditto.
> >>>> * testsuite/gas/i386/x86-64-apx-nf.s: Ditto.
> >>>>
> >>>> opcodes/ChangeLog:
> >>>>
> >>>> * i386-dis-evex.h: Add %XN to the instructions that support
> >>>> APX NF
> >> and
> >>>> add new instruction imul, popcnt, tzcnt and lzcnt to EVEX table.
> >>>> * i386-dis-evex-reg.h: Ditto.
> >>>> * i386-dis.c (struct instr_info): Add nf.
> >>>> (struct dis386): Add "XN" for EVEX.NF.
> >>>> (get_valid_dis386): Set ins->vex.nf.
> >>>> (print_insn): Handle ins.vex.nf.
> >>>> (putop): Handle "%XN".
> >>>> * i386-opc.h (Prefix_NoOptimize): Adjust the value.
> >>>> (Prefix_NF): New.
> >>>> * i386-opc.tbl: Add new entries for the instructions that
> >>>> support APX
> >> NF.
> >>>> * i386-mnem.h: Regenerated.
> >>>> * i386-tbl.h: Regenerated.
> >>>>
> >>>
> >>> Please mention it in gas/NEWS.
> >>
> >> Hmm. I think it wants mentioning once APX support is actually complete.
> >> I don't think every sub-feature of it needs mentioning.
> >>
> >
> > Thanks Jan, since this place is easy to forget, I can create an initial one, and
> each sub-feature can be appended one by one after the NF, only one mention
> is left at the end.
> >
> > --- a/gas/NEWS
> > +++ b/gas/NEWS
> > @@ -1,5 +1,7 @@
> > -*- text -*-
> >
> > +* Initial support for Intel APX: NF
> > +
>
> Personally I consider this confusing; imo APX shouldn't have been mentioned
> in 2.42's gas/NEWS at all. Yet if you and H.J. firmly think that's the way to go,
> so be it.
>
For APX NF, it will be placed after 2.42 and belong to 2.43. Since we didn't implement the entire APX in 2.42, we list the APX sub-feature that it has implemented.
Changes in 2.42:
...
* Initial support for Intel APX: 32 GPRs, NDD, PUSH2/POP2 and PUSHP/POPP.
Thanks,
Lili.
More information about the Binutils
mailing list