arm-cpus.in (armv8_3, [...]): New
authorTamar Christina <tamar.christina@arm.com>
Wed, 15 Nov 2017 16:11:07 +0000 (16:11 +0000)
committerTamar Christina <tnfchris@gcc.gnu.org>
Wed, 15 Nov 2017 16:11:07 +0000 (16:11 +0000)
2017-11-15  Tamar Christina  <tamar.christina@arm.com>

        * config/arm/arm-cpus.in (armv8_3, ARMv8_3a, armv8.3-a): New
        * config/arm/arm-tables.opt (armv8.3-a): Regenerated.
        * doc/invoke.texi (ARM Options): Add armv8.3-a.

From-SVN: r254776

gcc/ChangeLog
gcc/config/arm/arm-cpus.in
gcc/config/arm/arm-tables.opt
gcc/doc/invoke.texi

index b4f1fcbdba76a62c3ceb88ac0b3a82be3574e790..ce156f2ab82959cf02357500f9a96573d8a932df 100644 (file)
@@ -1,3 +1,9 @@
+2017-11-15  Tamar Christina  <tamar.christina@arm.com>
+
+       * config/arm/arm-cpus.in (armv8_3, ARMv8_3a, armv8.3-a): New
+       * config/arm/arm-tables.opt (armv8.3-a): Regenerated.
+       * doc/invoke.texi (ARM Options): Add armv8.3-a.
+
 2017-11-15  Tamar Christina  <tamar.christina@arm.com>
 
        * config/arm/arm.h (TARGET_DOTPROD): Add arm_arch8_2.
index 0820ad74c2e75f209bf09ef598c23cdd6116d29d..281ec162db8c982128462d8efac2be1d21959cf7 100644 (file)
@@ -114,9 +114,12 @@ define feature iwmmxt2
 # Architecture rel 8.1.
 define feature armv8_1
 
-# Architecutre rel 8.2.
+# Architecture rel 8.2.
 define feature armv8_2
 
+# Architecture rel 8.3.
+define feature armv8_3
+
 # M-Profile security extensions.
 define feature cmse
 
@@ -238,6 +241,7 @@ define fgroup ARMv7em     ARMv7m armv7em
 define fgroup ARMv8a      ARMv7ve armv8
 define fgroup ARMv8_1a    ARMv8a crc32 armv8_1
 define fgroup ARMv8_2a    ARMv8_1a armv8_2
+define fgroup ARMv8_3a    ARMv8_2a armv8_3
 define fgroup ARMv8m_base ARMv6m armv8 cmse tdiv
 define fgroup ARMv8m_main ARMv7m armv8 cmse
 define fgroup ARMv8r      ARMv8a
@@ -579,6 +583,20 @@ begin arch armv8.2-a
  option dotprod add FP_ARMv8 DOTPROD
 end arch armv8.2-a
 
+begin arch armv8.3-a
+ tune for cortex-a53
+ tune flags CO_PROC
+ base 8A
+ profile A
+ isa ARMv8_3a
+ option simd add FP_ARMv8 NEON
+ option fp16 add fp16 FP_ARMv8 NEON
+ option crypto add FP_ARMv8 CRYPTO
+ option nocrypto remove ALL_CRYPTO
+ option nofp remove ALL_FP
+ option dotprod add FP_ARMv8 DOTPROD
+end arch armv8.3-a
+
 begin arch armv8-m.base
  tune for cortex-m23
  base 8M_BASE
index 4e508b1555a77628ff6e7cfea39c98b87caa840a..f7937256cd79296ba33d109232bcf0d6f7b03917 100644 (file)
@@ -452,19 +452,22 @@ EnumValue
 Enum(arm_arch) String(armv8.2-a) Value(28)
 
 EnumValue
-Enum(arm_arch) String(armv8-m.base) Value(29)
+Enum(arm_arch) String(armv8.3-a) Value(29)
 
 EnumValue
-Enum(arm_arch) String(armv8-m.main) Value(30)
+Enum(arm_arch) String(armv8-m.base) Value(30)
 
 EnumValue
-Enum(arm_arch) String(armv8-r) Value(31)
+Enum(arm_arch) String(armv8-m.main) Value(31)
 
 EnumValue
-Enum(arm_arch) String(iwmmxt) Value(32)
+Enum(arm_arch) String(armv8-r) Value(32)
 
 EnumValue
-Enum(arm_arch) String(iwmmxt2) Value(33)
+Enum(arm_arch) String(iwmmxt) Value(33)
+
+EnumValue
+Enum(arm_arch) String(iwmmxt2) Value(34)
 
 Enum
 Name(arm_fpu) Type(enum fpu_type)
index 44273284483e2595de557b20c3f068050a4b3a2c..163e16819e63e119f2b8a7e0cf37282e23372b86 100644 (file)
@@ -15537,7 +15537,7 @@ Permissible names are:
 @samp{armv6}, @samp{armv6j}, @samp{armv6k}, @samp{armv6kz}, @samp{armv6t2},
 @samp{armv6z}, @samp{armv6zk},
 @samp{armv7}, @samp{armv7-a}, @samp{armv7ve}, 
-@samp{armv8-a}, @samp{armv8.1-a}, @samp{armv8.2-a},
+@samp{armv8-a}, @samp{armv8.1-a}, @samp{armv8.2-a}, @samp{armv8.3-a},
 @samp{armv7-r},
 @samp{armv8-r},
 @samp{armv6-m}, @samp{armv6s-m},