Kong Lingling
98439a80cc
Support Intel AVX10.2 BF16 instructions
In this patch, we will support AVX10.2 BF16 instructions. All of them
are new instructions forms. In current documentation, it is still
VSCALEFPBF16, but it will change to VSCALEFNEPBF16 eventually.
In disassembler part, we added %XB to reduce W table pass since all
of them get evex.w=0.
gas/Changelog:
* testsuite/gas/i386/i386.exp: Add AVX10.2 tests.
* testsuite/gas/i386/x86-64.exp: Ditto.
* testsuite/gas/i386/avx10_2-256-bf16-intel.d: New.
* testsuite/gas/i386/avx10_2-256-bf16.d: Ditto.
* testsuite/gas/i386/avx10_2-256-bf16.s: Ditto.
* testsuite/gas/i386/avx10_2-512-bf16-intel.d: Ditto.
* testsuite/gas/i386/avx10_2-512-bf16.d: Ditto.
* testsuite/gas/i386/avx10_2-512-bf16.s: Ditto.
* testsuite/gas/i386/x86-64-avx10_2-256-bf16-intel.d: Ditto.
* testsuite/gas/i386/x86-64-avx10_2-256-bf16.d: Ditto.
* testsuite/gas/i386/x86-64-avx10_2-256-bf16.s: Ditto.
* testsuite/gas/i386/x86-64-avx10_2-512-bf16-intel.d: Ditto.
* testsuite/gas/i386/x86-64-avx10_2-512-bf16.d: Ditto.
* testsuite/gas/i386/x86-64-avx10_2-512-bf16.s: Ditto.
opcodes/
* i386-dis-evex-prefix.h: Update PREFIX_EVEX_0F3A08, PREFIX_EVEX_0F3A26,
PREFIX_EVEX_0F3A56, PREFIX_EVEX_0F3A66, PREFIX_EVEX_0F3AC2,
PREFIX_EVEX_MAP5_2F, PREFIX_EVEX_MAP5_51, PREFIX_EVEX_MAP5_58,
PREFIX_EVEX_MAP5_59, PREFIX_EVEX_MAP5_5C, PREFIX_EVEX_MAP5_5D,
PREFIX_EVEX_MAP5_5E, PREFIX_EVEX_MAP5_5F.
Add PREFIX_EVEX_MAP6_2C, PREFIX_EVEX_MAP6_4C, PREFIX_EVEX_MAP6_4E,
PREFIX_EVEX_MAP6_98, PREFIX_EVEX_MAP6_9A, PREFIX_EVEX_MAP6_9C,
PREFIX_EVEX_MAP6_9E, PREFIX_EVEX_MAP6_A8, PREFIX_EVEX_MAP6_AA,
PREFIX_EVEX_MAP6_AC, PREFIX_EVEX_MAP6_AE, PREFIX_EVEX_MAP6_B8,
PREFIX_EVEX_MAP6_BA, PREFIX_EVEX_MAP6_BC, PREFIX_EVEX_MAP6_BE.
* i386-dis-evex.h (evex_table): Update PREFIX_EVEX_MAP6_2C,
PREFIX_EVEX_MAP6_42, PREFIX_EVEX_MAP6_4C, PREFIX_EVEX_MAP6_4E,
PREFIX_EVEX_MAP6_98, PREFIX_EVEX_MAP6_9A, PREFIX_EVEX_MAP6_9C,
PREFIX_EVEX_MAP6_9E, PREFIX_EVEX_MAP6_A8, PREFIX_EVEX_MAP6_AA,
PREFIX_EVEX_MAP6_AC, PREFIX_EVEX_MAP6_AE, PREFIX_EVEX_MAP6_B8,
PREFIX_EVEX_MAP6_BA, PREFIX_EVEX_MAP6_BC, PREFIX_EVEX_MAP6_BE.
* i386-dis.c (PREFIX_EVEX_MAP6_2C): New enum.
(PREFIX_EVEX_MAP6_42): Ditto.
(PREFIX_EVEX_MAP6_4C): Ditto.
(PREFIX_EVEX_MAP6_4E): Ditto.
(PREFIX_EVEX_MAP6_98): Ditto.
(PREFIX_EVEX_MAP6_9A): Ditto.
(PREFIX_EVEX_MAP6_9C): Ditto.
(PREFIX_EVEX_MAP6_9E): Ditto.
(PREFIX_EVEX_MAP6_A8): Ditto.
(PREFIX_EVEX_MAP6_AA): Ditto.
(PREFIX_EVEX_MAP6_AC): Ditto.
(PREFIX_EVEX_MAP6_AE): Ditto.
(PREFIX_EVEX_MAP6_B8): Ditto.
(PREFIX_EVEX_MAP6_BA): Ditto.
(PREFIX_EVEX_MAP6_BC): Ditto.
(PREFIX_EVEX_MAP6_BE): Ditto.
(putop): Handle %XB.
* i386-opc.tbl: Add AVX10.2 instructions.
* i386-mnem.h: Regenerated.
* i386-tbl.h: Ditto.
Co-authored-by: Haochen Jiang <haochen.jiang@intel.com>
2024-12-03 15:34:05 +08:00
..
2024-11-27 10:34:08 +10:30
2024-05-28 10:16:23 +01:00
2024-07-12 15:40:48 +01:00
2024-07-12 15:40:48 +01:00
2024-07-12 15:40:48 +01:00
2024-07-12 15:41:56 +01:00
2024-07-12 15:40:48 +01:00
2024-07-12 15:40:48 +01:00
2024-07-18 20:54:14 -07:00
2024-07-12 15:40:48 +01:00
2024-11-08 11:35:46 +00:00
2024-11-08 11:35:46 +00:00
2024-07-05 15:39:28 +01:00
2024-07-18 20:54:14 -07:00
2023-11-15 12:53:04 +00:00
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-02-14 11:36:52 +01:00
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-02-14 11:36:52 +01:00
2024-11-20 17:15:28 +00:00
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-02-15 15:11:44 +01:00
2024-01-04 22:58:12 +10:30
2024-08-12 10:42:02 -07:00
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-08-16 08:34:50 +02:00
2024-07-20 12:43:19 +01:00
2023-11-15 12:53:04 +00:00
2024-11-26 19:13:07 +00:00
2024-11-26 19:13:07 +00:00
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-08-16 08:34:50 +02:00
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-11-26 19:13:07 +00:00
2024-11-26 19:13:07 +00:00
2024-01-04 22:58:12 +10:30
2024-08-12 10:42:02 -07:00
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-08-12 10:42:02 -07:00
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-08-12 10:42:02 -07:00
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2023-08-02 12:06:23 +01:00
2024-06-18 10:52:41 +08:00
2024-12-03 15:34:05 +08:00
2024-06-18 10:52:40 +08:00
2024-10-11 10:38:27 +08:00
2024-12-03 15:34:05 +08:00
2024-12-03 15:34:05 +08:00
2024-12-02 09:39:23 +01:00
2024-12-02 09:39:23 +01:00
2024-12-03 15:34:05 +08:00
2024-11-19 10:45:56 +08:00
2024-12-03 15:34:05 +08:00
2024-08-30 11:23:16 +02:00
2024-12-03 15:34:05 +08:00
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-08-12 10:42:02 -07:00
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-08-12 10:42:02 -07:00
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-02-20 12:07:57 +01:00
2024-08-12 10:42:02 -07:00
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-11 14:08:24 +08:00
2024-10-14 09:15:16 +08:00
2024-08-12 10:42:02 -07:00
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-08-12 10:42:02 -07:00
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-10-07 21:26:04 +02:00
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-11-26 19:13:07 +00:00
2024-11-26 19:13:07 +00:00
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-08-12 10:42:02 -07:00
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-07-26 18:01:09 +01:00
2024-01-04 22:58:12 +10:30
2024-07-26 18:01:09 +01:00
2024-11-18 03:09:15 +00:00
2024-07-19 19:01:53 +01:00
2024-04-19 10:00:57 +09:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-08-12 10:42:02 -07:00
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-08-12 10:42:02 -07:00
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-06-05 13:30:27 +01:00
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-08-12 10:42:02 -07:00
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-02-09 10:52:23 -06:00
2024-11-20 18:33:07 -05:00
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-11-24 09:21:28 +01:00
2024-11-22 09:56:54 +08:00
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-11-29 15:37:19 +01:00
2024-10-10 12:09:40 +02:00
2024-11-18 10:42:21 +01:00
2024-11-18 10:42:21 +01:00
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-08-09 08:32:54 +10:00
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-22 18:16:42 +01:00
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-08-12 10:42:02 -07:00
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30
2024-01-04 22:58:12 +10:30