diff options
author | Cui, Lili <lili.cui@intel.com> | 2024-04-07 17:28:25 +0800 |
---|---|---|
committer | Cui, Lili <lili.cui@intel.com> | 2024-04-07 17:28:25 +0800 |
commit | dd74a603376ea0c32d06ba18ba52b73e77530cde (patch) | |
tree | f304d02f00f07fcf639545d0f78bfa7b70617745 /gas/NEWS | |
parent | bc0d0a5596224491ac6f507f758c4be106b6b5b2 (diff) | |
download | binutils-dd74a603376ea0c32d06ba18ba52b73e77530cde.zip binutils-dd74a603376ea0c32d06ba18ba52b73e77530cde.tar.gz binutils-dd74a603376ea0c32d06ba18ba52b73e77530cde.tar.bz2 |
Support APX NF
For the case when NDD and NF are both 0 in evex-promoted format,
we will fully support and test it in another patch.
gas/ChangeLog:
* NEWS: Support Intel APX NF.
* config/tc-i386.c (enum i386_error): Add unsupported_nf.
(struct _i386_insn): Add has_nf.
(is_apx_evex_encoding): Ditto.
(build_apx_evex_prefix): Encode the NF bit.
(md_assemble): Handle unsupported_nf.
(parse_insn): Handle Prefix_NF and report bad for illegal combination.
(can_convert_NDD_to_legacy): Replace i.tm.opcode_modifier.nf with i.has_nf.
(match_template): Support D for APX_F insns and check NF support.
* testsuite/gas/i386/x86-64-apx-evex-promoted-bad.d: Add bad test for NF bit.
* testsuite/gas/i386/x86-64-apx-evex-promoted-bad.s: Ditto.
* testsuite/gas/i386/x86-64-apx-inval.l: Ditto.
* testsuite/gas/i386/x86-64-apx-inval.s: Ditto.
* 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 %NF 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 "NF" for EVEX.NF.
(get_valid_dis386): Set ins->vex.nf and report bad-nf for illegal case.
(print_insn): Handle ins.vex.nf.
(putop): Handle "%NF".
* i386-opc.h (Prefix_NF): New.
* i386-opc.tbl: Added new entries to support full APX NF instructions.
* i386-mnem.h: Regenerated.
* i386-tbl.h: Regenerated.
Diffstat (limited to 'gas/NEWS')
-rw-r--r-- | gas/NEWS | 2 |
1 files changed, 2 insertions, 0 deletions
@@ -1,5 +1,7 @@ -*- text -*- +* Support the NF feature in Intel APX. + * Remove KEYLOCKER and SHA promotions from EVEX MAP4. * References to FB and dollar labels, when supported, are no longer permitted |