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

Message ID 20260820093529.1865098-1-RohanRadhesh.Shenoy@amd.com
State New
Headers
Series [v3] x86: recognize both avx10.1aux and avx10v1aux |

Checks

Context Check Description
linaro-tcwg-bot/tcwg_binutils_build--master-arm success Build passed
linaro-tcwg-bot/tcwg_binutils_build--master-aarch64 success Build passed
linaro-tcwg-bot/tcwg_binutils_check--master-aarch64 success Test passed
linaro-tcwg-bot/tcwg_binutils_check--master-arm success Test passed

Commit Message

Rohan Shenoy Aug. 20, 2026, 9:35 a.m. UTC
  Accept both as names for the same feature. Keeps existing naming as well
as recognize avx10v1aux, aligning with gcc (and Clang eventually).
Subsequently, same applies to v2-aux when added.

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/avx10.1-aux-512-cvt.s: Change arch name.
	* testsuite/gas/i386/avx10.1-aux-256-media.s: Ditto.
---

Notes:
    Changes in v3 since v2:
    As per Jan's feedback,
    - Undo the renaming of test files (from i386.exp as well), as both
      avx10v1aux/avx10.1aux are recognized now.
    - Add avx10v1aux entries after avx10.1aux.
    
    Changes in v2 since v1:
    - Adds avx10v1aux rather than replacing avx10.1aux as per Jan's
      suggestion.
    - Update two of the four tests (256-cvt, 512-media) to use arch
      avx10.1aux, so that both names are used.

 gas/config/tc-i386.c                           | 1 +
 gas/doc/c-i386.texi                            | 4 +++-
 gas/testsuite/gas/i386/avx10.1-aux-256-media.s | 2 +-
 gas/testsuite/gas/i386/avx10.1-aux-512-cvt.s   | 2 +-
 4 files changed, 6 insertions(+), 3 deletions(-)
  

Comments

Jan Beulich Aug. 20, 2026, 10:12 a.m. UTC | #1
On 20.08.2026 11:35, Rohan Shenoy wrote:
> Accept both as names for the same feature. Keeps existing naming as well
> as recognize avx10v1aux, aligning with gcc (and Clang eventually).
> Subsequently, same applies to v2-aux when added.
> 
> 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/avx10.1-aux-512-cvt.s: Change arch name.
> 	* testsuite/gas/i386/avx10.1-aux-256-media.s: Ditto.

Okay.

Jan
  
Rohan Shenoy Aug. 25, 2026, 3:22 p.m. UTC | #2
AMD General

Hi Jan

As I don't have write access, could you please merge this on my behalf?

Thanks
Rohan

-----Original Message-----
From: Jan Beulich <jbeulich@suse.com>
Sent: 20 August 2026 15:43

On 20.08.2026 11:35, Rohan Shenoy wrote:
> Accept both as names for the same feature. Keeps existing naming as
> well as recognize avx10v1aux, aligning with gcc (and Clang eventually).
> Subsequently, same applies to v2-aux when added.
>
> 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/avx10.1-aux-512-cvt.s: Change arch name.
>       * testsuite/gas/i386/avx10.1-aux-256-media.s: Ditto.

Okay.

Jan
  
Jan Beulich Aug. 25, 2026, 3:25 p.m. UTC | #3
On 25.08.2026 17:22, Shenoy, Rohan Radhesh wrote:
> As I don't have write access, could you please merge this on my behalf?

Sure, can do, yet likely only later this week.

Jan
  

Patch

diff --git a/gas/config/tc-i386.c b/gas/config/tc-i386.c
index 1ce5a063c67..9bc32bf8832 100644
--- a/gas/config/tc-i386.c
+++ b/gas/config/tc-i386.c
@@ -1254,6 +1254,7 @@  static const arch_entry cpu_arch[] =
   SUBARCH (pbndkb, PBNDKB, PBNDKB, false),
   VECARCH (avx10.1, AVX10_1, ANY_AVX512F, set),
   VECARCH (avx10.1aux, AVX10_1_AUX, ANY_AVX10_1_AUX, set),
+  VECARCH (avx10v1aux, 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),
   SUBARCH (apx_f, APX_F, ANY_APX_F, false),
diff --git a/gas/doc/c-i386.texi b/gas/doc/c-i386.texi
index 66d94a141b9..a455c9cc86f 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{.avx10.1aux} @tab @samp{.avx10v1aux} @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-media.s b/gas/testsuite/gas/i386/avx10.1-aux-256-media.s
index b08070a47e7..c2306302557 100644
--- a/gas/testsuite/gas/i386/avx10.1-aux-256-media.s
+++ b/gas/testsuite/gas/i386/avx10.1-aux-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.s b/gas/testsuite/gas/i386/avx10.1-aux-512-cvt.s
index ecfca29329a..5d8e2284c69 100644
--- a/gas/testsuite/gas/i386/avx10.1-aux-512-cvt.s
+++ b/gas/testsuite/gas/i386/avx10.1-aux-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"