[PATCH v1 2/2] Support x86 ACE ISA
Jiang, Haochen
haochen.jiang@intel.com
Tue Jun 30 08:42:53 GMT 2026
> From: Ganesh Gopalasubramanian <Ganesh.Gopalasubramanian@amd.com>
> Sent: Saturday, June 27, 2026 7:54 PM
>
Besides the comments Jan and Lin has given,
> diff --git a/gas/config/tc-i386.c b/gas/config/tc-i386.c
> index d82ed061a78..f6f40589d11 100644
> --- a/gas/config/tc-i386.c
> +++ b/gas/config/tc-i386.c
> @@ -1200,6 +1201,7 @@ static const arch_entry cpu_arch[] =
> SUBARCH (pconfig, PCONFIG, PCONFIG, false),
> SUBARCH (waitpkg, WAITPKG, WAITPKG, false),
> SUBARCH (cldemote, CLDEMOTE, CLDEMOTE, false),
> + SUBARCH (ace, ACE, ACE, false),
> SUBARCH (amx_int8, AMX_INT8, ANY_AMX_INT8, false),
> SUBARCH (amx_bf16, AMX_BF16, ANY_AMX_BF16, false),
> SUBARCH (amx_fp16, AMX_FP16, ANY_AMX_FP16, false),
Should we call it as ACEV1 instead of ACE? Documentation mentioned
it as ACEv1.
> @@ -7498,6 +7503,9 @@ i386_assemble (char *line)
> case unsupported_rsp_register:
> err_msg = _("'rsp' register cannot be used");
> break;
> + case unsupported_tile_index:
> + err_msg = _("immediate value must be in range 0-15");
> + break;
I also think this might not be needed. If I read the pseudocode correctly,
it will read last 4 bit.
> diff --git a/opcodes/i386-gen.c b/opcodes/i386-gen.c
> index 11cc4ff19dc..dded2d906e6 100644
> --- a/opcodes/i386-gen.c
> +++ b/opcodes/i386-gen.c
> @@ -263,6 +263,8 @@ static const dependency isa_dependencies[] =
> "RTM|HLE" },
> { "TSXLDTRK",
> "RTM" },
> + { "ACE",
> + "AVX512F|64" },
I have different opinion on this implication. I suppose it should
directly use AVX10_V2_AUX according to documentation CPUID
emulation part. That part clearly showed AVX10_V2_AUX is a must.
Thx,
Haochen
More information about the Binutils
mailing list