[PATCH v2] x86: recognize both avx10.1aux and avx10v1aux
Rohan Shenoy <[email protected]>
| Newsgroups | gmane.comp.gnu.binutils |
|---|---|
| Message-ID | <[email protected]> |
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