[ARM] Add support for Cortex-A55 and Cortex-A75.
authorJames Greenhalgh <james.greenhalgh@arm.com>
Wed, 5 Jul 2017 11:04:37 +0000 (12:04 +0100)
committerRichard Earnshaw <Richard.Earnshaw@arm.com>
Wed, 5 Jul 2017 11:04:37 +0000 (12:04 +0100)
This patch adds support for the ARM Cortex-A55 and
Cortex-A75 processors.

The ARM Cortex-A55 and Cortex-A75 procsessors implement the ARMv8-A
architecture, with support for the ARMv8.1-A and ARMv8.2-A extensions,
including support for the 16-bit floating point extensions.

The 16-bit floating-point extensions are optional, and we haven't defined
an option mapping straight to them thus far, so this patch first needs to
add one of those in include/opcode/arm.h, then we can simply add the CPU names
as usual in config/tc-arm.c .

Tested on arm-none-eabi.

2017-07-05  James Greenhalgh  <james.greenhalgh@arm.com>

* config/tc-arm.c (arm_cpus): Add Cortex-A55 and Cortex-A75.
* doc/c-arm.texi (-mcpu): Document Cortex-A55 and Cortex-A75.

gas/ChangeLog
gas/config/tc-arm.c
gas/doc/c-arm.texi

index a57b5d30905f8f2f4528a80223c9be6cc0bc607f..829256a9432053f36e649fac6ab1e53864dee820 100644 (file)
@@ -1,3 +1,8 @@
+2017-07-05  James Greenhalgh  <james.greenhalgh@arm.com>
+
+       * config/tc-arm.c (arm_cpus): Add Cortex-A55 and Cortex-A75.
+       * doc/c-arm.texi (-mcpu): Document Cortex-A55 and Cortex-A75.
+
 2017-07-05  Borislav Petkov  <bp@suse.de>
 
        * testsuite/gas/i386/opcode.s: Add tests for ModRM.reg == 6 variants.
index e22ffe676f36912afd40f6ffa46cb4159ed91386..08ce141d673d2bc4697140620a3cce00b44bf58e 100644 (file)
@@ -25858,6 +25858,9 @@ static const struct arm_cpu_option_table arm_cpus[] =
   ARM_CPU_OPT ("cortex-a53",     "Cortex-A53",        ARM_ARCH_V8A,
               ARM_FEATURE_COPROC (CRC_EXT_ARMV8),
               FPU_ARCH_CRYPTO_NEON_VFP_ARMV8),
+  ARM_CPU_OPT ("cortex-a55",    "Cortex-A55",         ARM_ARCH_V8_2A,
+              ARM_FEATURE_CORE_HIGH (ARM_EXT2_FP16_INST),
+              FPU_ARCH_CRYPTO_NEON_VFP_ARMV8),
   ARM_CPU_OPT ("cortex-a57",     "Cortex-A57",        ARM_ARCH_V8A,
               ARM_FEATURE_COPROC (CRC_EXT_ARMV8),
               FPU_ARCH_CRYPTO_NEON_VFP_ARMV8),
@@ -25867,6 +25870,9 @@ static const struct arm_cpu_option_table arm_cpus[] =
   ARM_CPU_OPT ("cortex-a73",     "Cortex-A73",        ARM_ARCH_V8A,
              ARM_FEATURE_COPROC (CRC_EXT_ARMV8),
              FPU_ARCH_CRYPTO_NEON_VFP_ARMV8),
+  ARM_CPU_OPT ("cortex-a75",    "Cortex-A75",         ARM_ARCH_V8_2A,
+              ARM_FEATURE_CORE_HIGH (ARM_EXT2_FP16_INST),
+              FPU_ARCH_CRYPTO_NEON_VFP_ARMV8),
   ARM_CPU_OPT ("cortex-r4",      "Cortex-R4",         ARM_ARCH_V7R,
               ARM_ARCH_NONE,
               FPU_NONE),
index 15c3acd8d8173245bcf4d6e885652d7c6d238571..9606de4b2ede8729e4fccdd4a16fc8106a59cad7 100644 (file)
@@ -123,9 +123,11 @@ recognized:
 @code{cortex-a32},
 @code{cortex-a35},
 @code{cortex-a53},
+@code{cortex-a55},
 @code{cortex-a57},
 @code{cortex-a72},
 @code{cortex-a73},
+@code{cortex-a75},
 @code{cortex-r4},
 @code{cortex-r4f},
 @code{cortex-r5},