[PATCH v2][BINUTILS] aarch64: Enable Cortex-X4 CPU

Saurabh Jha saurabh.jha@arm.com
Wed Oct 4 13:48:41 GMT 2023


Hey,

Updated the previous patch by rebasing with latest master and also 
adding the missing "testsuite/gas/aarch64/cpu-cortex-x4.d" file.

Thanks,

Saurabh

---

Hey,


This patch adds support for the Cortex-X4 CPU to binutils.

Regression testing for aarch64-none-elf target and found no regressions.

Okay for binutils-master? I don't have commit access so if it looks 
okay, could someone please help me commit this?


Thanks,

Saurabh

bfd/ChangeLog
   * cpu-aarch64.c (processors): Add cortex-x4 core in processors array.

gas/ChangeLog
   * NEWS (Changes in current release): Add documentation for Cortex-X4.

   * config/tc-aarch64.c (aarch64_cpus): Add features of Cortex-X4.

   * doc/c-aarch64.texi (Options): Add mention of Cortex-X4.

   * testsuite/gas/aarch64/cpu-cortex-x4.d: New test for Cortex-X4.
-------------- next part --------------
diff --git a/bfd/cpu-aarch64.c b/bfd/cpu-aarch64.c
index df0d8c8c0dd..269177821bb 100644
--- a/bfd/cpu-aarch64.c
+++ b/bfd/cpu-aarch64.c
@@ -74,7 +74,8 @@ processors[] =
   { bfd_mach_aarch64,	  "cortex-a65ae"    },
   { bfd_mach_aarch64,	  "cortex-a76ae"    },
   { bfd_mach_aarch64,	  "cortex-a77"	    },
-  { bfd_mach_aarch64,	  "cortex-a720"	    }
+  { bfd_mach_aarch64,	  "cortex-a720"	    },
+  { bfd_mach_aarch64,     "cortex-x4"       },
 };
 
 static bool
diff --git a/gas/NEWS b/gas/NEWS
index 730ffad9bc9..71a1269b893 100644
--- a/gas/NEWS
+++ b/gas/NEWS
@@ -16,6 +16,8 @@
 
 * Add support for Cortex-A720 for AArch64.
 
+* Add support for Cortex-X4 for AArch64.
+
 Changes in 2.41:
 
 * Add support for the KVX instruction set.
diff --git a/gas/config/tc-aarch64.c b/gas/config/tc-aarch64.c
index 5f5ec1b3dbc..14788ce180f 100644
--- a/gas/config/tc-aarch64.c
+++ b/gas/config/tc-aarch64.c
@@ -10215,6 +10215,8 @@ static const struct aarch64_cpu_option_table aarch64_cpus[] = {
 					      SSBS, PROFILE), "Cortex-X1"},
   {"cortex-x2",		AARCH64_CPU_FEATURES (V9A, 4, BFLOAT16, I8MM, MEMTAG,
 					      SVE2_BITPERM), "Cortex-X2"},
+  {"cortex-x4",         AARCH64_CPU_FEATURES (V9_2A, 3, MEMTAG, PROFILE,
+                                              SVE2_BITPERM), "Cortex-X4"},
   {"generic",		AARCH64_ARCH_FEATURES (V8A), NULL},
 
   {NULL,		AARCH64_NO_FEATURES, NULL}
diff --git a/gas/doc/c-aarch64.texi b/gas/doc/c-aarch64.texi
index 5e8ac0b4e7c..fd67c77bbf8 100644
--- a/gas/doc/c-aarch64.texi
+++ b/gas/doc/c-aarch64.texi
@@ -90,8 +90,9 @@ on the target processor.  The following processor names are recognized:
 @code{xgene2},
 @code{cortex-r82},
 @code{cortex-x1},
+@code{cortex-x2},
 and
-@code{cortex-x2}.
+@code{cortex-x4}.
 The special name @code{all} may be used to allow the assembler to accept
 instructions valid for any supported processor, including all optional
 extensions.
diff --git a/gas/testsuite/gas/aarch64/cpu-cortex-x4.d b/gas/testsuite/gas/aarch64/cpu-cortex-x4.d
new file mode 100644
index 00000000000..eab7fab3709
--- /dev/null
+++ b/gas/testsuite/gas/aarch64/cpu-cortex-x4.d
@@ -0,0 +1,6 @@
+# name: Assemble and dump for cortex-x4 CPU
+# source: nop-asm.s
+# as: -mcpu=cortex-x4
+# objdump: -d -mcortex-x4
+
+#...
\ No newline at end of file


More information about the Binutils mailing list