[PATCH v2] x86: recognize both avx10.1aux and avx10v1aux

Rohan Shenoy RohanRadhesh.Shenoy@amd.com
Thu Aug 20 07:05:03 GMT 2026


Accept both as names for the same feature. Keep existing naming 
(avx10.1aux) while adding avx10v1aux, as the latter aligns with
gcc (and Clang eventually).

gas/
	* config/tc-i386.c: Recognize avx10v1aux as an alias of avx10.1aux.
	* doc/c-i386.texi: Document avx10v1aux alongside avx10.1aux.
	* testsuite/gas/i386/i386.exp: Update test names accordingly.
	* testsuite/gas/i386/avx10v1aux-*: Rename from testsuite/gas/i386/avx10.1-aux-*.
---

Notes:
    Changes in v2:
    - Adds avx10v1aux rather than replacing avx10.1aux as per Jan's 
    suggestion [1].
    - Update two of the four tests (256-cvt, 512-media) to use arch 
    avx10.1aux, so that both names are used.
    
    [1] https://sourceware.org/pipermail/binutils/2026-August/150900.html

 gas/config/tc-i386.c                                      | 1 +
 gas/doc/c-i386.texi                                       | 4 +++-
 .../i386/{avx10.1-aux-256-cvt.d => avx10v1aux-256-cvt.d}  | 0
 .../i386/{avx10.1-aux-256-cvt.s => avx10v1aux-256-cvt.s}  | 0
 .../{avx10.1-aux-256-media.l => avx10v1aux-256-media.l}   | 0
 .../{avx10.1-aux-256-media.s => avx10v1aux-256-media.s}   | 2 +-
 .../i386/{avx10.1-aux-512-cvt.d => avx10v1aux-512-cvt.d}  | 0
 .../i386/{avx10.1-aux-512-cvt.s => avx10v1aux-512-cvt.s}  | 2 +-
 .../{avx10.1-aux-512-media.l => avx10v1aux-512-media.l}   | 0
 .../{avx10.1-aux-512-media.s => avx10v1aux-512-media.s}   | 0
 gas/testsuite/gas/i386/i386.exp                           | 8 ++++----
 11 files changed, 10 insertions(+), 7 deletions(-)
 rename gas/testsuite/gas/i386/{avx10.1-aux-256-cvt.d => avx10v1aux-256-cvt.d} (100%)
 rename gas/testsuite/gas/i386/{avx10.1-aux-256-cvt.s => avx10v1aux-256-cvt.s} (100%)
 rename gas/testsuite/gas/i386/{avx10.1-aux-256-media.l => avx10v1aux-256-media.l} (100%)
 rename gas/testsuite/gas/i386/{avx10.1-aux-256-media.s => avx10v1aux-256-media.s} (84%)
 rename gas/testsuite/gas/i386/{avx10.1-aux-512-cvt.d => avx10v1aux-512-cvt.d} (100%)
 rename gas/testsuite/gas/i386/{avx10.1-aux-512-cvt.s => avx10v1aux-512-cvt.s} (84%)
 rename gas/testsuite/gas/i386/{avx10.1-aux-512-media.l => avx10v1aux-512-media.l} (100%)
 rename gas/testsuite/gas/i386/{avx10.1-aux-512-media.s => avx10v1aux-512-media.s} (100%)

diff --git a/gas/config/tc-i386.c b/gas/config/tc-i386.c
index 1ce5a063c67..1c0613921e5 100644
--- a/gas/config/tc-i386.c
+++ b/gas/config/tc-i386.c
@@ -1253,6 +1253,7 @@ static const arch_entry cpu_arch[] =
   VECARCH (sm4, SM4, ANY_SM4, reset),
   SUBARCH (pbndkb, PBNDKB, PBNDKB, false),
   VECARCH (avx10.1, AVX10_1, ANY_AVX512F, set),
+  VECARCH (avx10v1aux, AVX10_1_AUX, ANY_AVX10_1_AUX, set),
   VECARCH (avx10.1aux, AVX10_1_AUX, ANY_AVX10_1_AUX, set),
   VECARCH (avx10.2, AVX10_2, ANY_AVX10_2, set),
   SUBARCH (user_msr, USER_MSR, USER_MSR, false),
diff --git a/gas/doc/c-i386.texi b/gas/doc/c-i386.texi
index 66d94a141b9..7d714605aed 100644
--- a/gas/doc/c-i386.texi
+++ b/gas/doc/c-i386.texi
@@ -221,6 +221,7 @@ accept various extension mnemonics.  For example,
 @code{avx10.1/256},
 @code{avx10.1/128},
 @code{avx10.1aux},
+@code{avx10v1aux},
 @code{user_msr},
 @code{msr_imm},
 @code{apx_f},
@@ -1719,7 +1720,8 @@ supported on the CPU specified.  The choices for @var{cpu_type} are:
 @item @samp{.avx512_vpopcntdq} @tab @samp{.avx512_vbmi2} @tab @samp{.avx512_vnni}
 @item @samp{.avx512_bitalg} @tab @samp{.avx512_bf16} @tab @samp{.avx512_vp2intersect}
 @item @samp{.tdx} @tab @samp{.avx_vnni} @tab @samp{.avx512_fp16} @tab @samp{avx512_bmm}
-@item @samp{.avx10.1} @tab @samp{.avx10.1aux} @tab @samp{.avx10.2} @tab @samp{.clwb}
+@item @samp{.avx10.1} @tab @samp{.avx10v1aux} @tab @samp{.avx10.1aux} @tab @samp{.avx10.2}
+@item @samp{.clwb}
 @item @samp{.rdpid} @tab @samp{.ptwrite} @tab @samp{.ibt} @tab @samp{.prefetchi}
 @item @samp{.cmpccxadd} @tab @samp{.wrmsrns} @tab @samp{.msrlist} @tab @samp{.se1}
 @item @samp{.avx_ne_convert} @tab @samp{.rao_int} @tab @samp{.fred} @tab @samp{.lkgs}
diff --git a/gas/testsuite/gas/i386/avx10.1-aux-256-cvt.d b/gas/testsuite/gas/i386/avx10v1aux-256-cvt.d
similarity index 100%
rename from gas/testsuite/gas/i386/avx10.1-aux-256-cvt.d
rename to gas/testsuite/gas/i386/avx10v1aux-256-cvt.d
diff --git a/gas/testsuite/gas/i386/avx10.1-aux-256-cvt.s b/gas/testsuite/gas/i386/avx10v1aux-256-cvt.s
similarity index 100%
rename from gas/testsuite/gas/i386/avx10.1-aux-256-cvt.s
rename to gas/testsuite/gas/i386/avx10v1aux-256-cvt.s
diff --git a/gas/testsuite/gas/i386/avx10.1-aux-256-media.l b/gas/testsuite/gas/i386/avx10v1aux-256-media.l
similarity index 100%
rename from gas/testsuite/gas/i386/avx10.1-aux-256-media.l
rename to gas/testsuite/gas/i386/avx10v1aux-256-media.l
diff --git a/gas/testsuite/gas/i386/avx10.1-aux-256-media.s b/gas/testsuite/gas/i386/avx10v1aux-256-media.s
similarity index 84%
rename from gas/testsuite/gas/i386/avx10.1-aux-256-media.s
rename to gas/testsuite/gas/i386/avx10v1aux-256-media.s
index b08070a47e7..c2306302557 100644
--- a/gas/testsuite/gas/i386/avx10.1-aux-256-media.s
+++ b/gas/testsuite/gas/i386/avx10v1aux-256-media.s
@@ -1,6 +1,6 @@
 # Check 32bit AVX10.1-aux/256 media instructions
 
 	.arch generic32
-	.arch .avx10.1aux/256
+	.arch .avx10v1aux/256
 	.equ AVX10_V1_AUX, 1
 	.include "avx10_2-256-media.s"
diff --git a/gas/testsuite/gas/i386/avx10.1-aux-512-cvt.d b/gas/testsuite/gas/i386/avx10v1aux-512-cvt.d
similarity index 100%
rename from gas/testsuite/gas/i386/avx10.1-aux-512-cvt.d
rename to gas/testsuite/gas/i386/avx10v1aux-512-cvt.d
diff --git a/gas/testsuite/gas/i386/avx10.1-aux-512-cvt.s b/gas/testsuite/gas/i386/avx10v1aux-512-cvt.s
similarity index 84%
rename from gas/testsuite/gas/i386/avx10.1-aux-512-cvt.s
rename to gas/testsuite/gas/i386/avx10v1aux-512-cvt.s
index ecfca29329a..5d8e2284c69 100644
--- a/gas/testsuite/gas/i386/avx10.1-aux-512-cvt.s
+++ b/gas/testsuite/gas/i386/avx10v1aux-512-cvt.s
@@ -1,6 +1,6 @@
 # Check 32bit AVX10.1-aux/512 convert instructions
 
 	.arch generic32
-	.arch .avx10.1aux/512
+	.arch .avx10v1aux/512
 	.equ AVX10_V1_AUX, 1
 	.include "avx10_2-512-cvt.s"
diff --git a/gas/testsuite/gas/i386/avx10.1-aux-512-media.l b/gas/testsuite/gas/i386/avx10v1aux-512-media.l
similarity index 100%
rename from gas/testsuite/gas/i386/avx10.1-aux-512-media.l
rename to gas/testsuite/gas/i386/avx10v1aux-512-media.l
diff --git a/gas/testsuite/gas/i386/avx10.1-aux-512-media.s b/gas/testsuite/gas/i386/avx10v1aux-512-media.s
similarity index 100%
rename from gas/testsuite/gas/i386/avx10.1-aux-512-media.s
rename to gas/testsuite/gas/i386/avx10v1aux-512-media.s
diff --git a/gas/testsuite/gas/i386/i386.exp b/gas/testsuite/gas/i386/i386.exp
index 22fd3412d53..49573a2396b 100644
--- a/gas/testsuite/gas/i386/i386.exp
+++ b/gas/testsuite/gas/i386/i386.exp
@@ -521,10 +521,10 @@ if [gas_32_check] then {
     run_list_test "user_msr-inval"
     run_list_test "msr_imm-inval"
     run_list_test "apx-push2pop2-inval"
-    run_dump_test "avx10.1-aux-512-cvt"
-    run_dump_test "avx10.1-aux-256-cvt"
-    run_list_test "avx10.1-aux-512-media" "-I${srcdir}/$subdir -almn --divide --listing-lhs-width=2"
-    run_list_test "avx10.1-aux-256-media" "-I${srcdir}/$subdir -almn --divide --listing-lhs-width=2"
+    run_dump_test "avx10v1aux-512-cvt"
+    run_dump_test "avx10v1aux-256-cvt"
+    run_list_test "avx10v1aux-512-media" "-I${srcdir}/$subdir -almn --divide --listing-lhs-width=2"
+    run_list_test "avx10v1aux-256-media" "-I${srcdir}/$subdir -almn --divide --listing-lhs-width=2"
     run_dump_test "avx10_2-evex-promote"
     run_dump_test "avx10_2-512-media"
     run_dump_test "avx10_2-512-media-intel"
-- 
2.34.1



More information about the Binutils mailing list