konglin1 3083f37643 Support APX NDD
opcodes/ChangeLog:

	* opcodes/i386-dis-evex-reg.h: Handle for REG_EVEX_MAP4_80,
	REG_EVEX_MAP4_81, REG_EVEX_MAP4_83,  REG_EVEX_MAP4_F6,
	REG_EVEX_MAP4_F7, REG_EVEX_MAP4_FE, REG_EVEX_MAP4_FF.
	* opcodes/i386-dis-evex.h: Add NDD insn.
	* opcodes/i386-dis.c (nd): New define.
	(VexGb): Ditto.
	(VexGv): Ditto.
	(get_valid_dis386): Change for NDD decode.
	(print_insn): Ditto.
	(putop): Ditto.
	(intel_operand_size): Ditto.
	(OP_E_memory): Ditto.
	(OP_VEX): Ditto.
	* opcodes/i386-opc.h (VexVVVV_DST): New.
	* opcodes/i386-opc.tbl: Add APX NDD instructions and adjust VexVVVV.
	* opcodes/i386-tbl.h: Regenerated.

gas/ChangeLog:

	* gas/config/tc-i386.c (operand_size_match):
	Support APX NDD that the number of operands is 3.
	(build_apx_evex_prefix): Change for ndd encode.
	(process_operands): Ditto.
	(build_modrm_byte): Ditto.
	(match_template): Support swap the first two operands for
	APX NDD.
	* testsuite/gas/i386/x86-64.exp: Add x86-64-apx-ndd.
	* testsuite/gas/i386/x86-64-apx-ndd.d: New test.
	* testsuite/gas/i386/x86-64-apx-ndd.s: Ditto.
	* testsuite/gas/i386/x86-64-pseudos.d: Add test.
	* testsuite/gas/i386/x86-64-pseudos.s: Ditto.
	* testsuite/gas/i386/x86-64-apx-evex-promoted-bad.d : Ditto.
	* testsuite/gas/i386/x86-64-apx-evex-promoted-bad.s : Ditto.
2023-12-28 11:37:16 +00:00
..
2023-11-15 12:53:04 +00:00
2023-12-19 15:35:49 +01:00
2023-12-19 15:35:49 +01:00
2023-12-19 15:35:49 +01:00
2023-11-15 12:53:04 +00:00
2023-08-02 12:06:23 +01:00
2023-08-26 13:09:38 -06:00
2023-11-15 12:53:04 +00:00
2021-01-01 10:31:02 +10:30
2023-11-15 12:53:04 +00:00
2023-11-15 12:53:04 +00:00
2023-11-15 12:53:04 +00:00
2023-08-03 21:20:33 +09:30
2023-08-16 14:22:54 +01:00
2023-12-28 11:37:16 +00:00
2023-12-28 11:37:16 +00:00
2023-12-28 11:37:16 +00:00
2023-12-28 11:14:41 +00:00
2023-12-28 11:14:41 +00:00
2023-12-28 11:37:16 +00:00
2023-12-28 11:37:16 +00:00
2023-12-28 11:37:16 +00:00
2023-08-24 12:36:25 +09:30
2023-08-16 14:22:54 +01:00
2023-03-16 17:30:19 +10:30
2023-03-16 17:30:19 +10:30