arm: enable cortex-a710 CPU

Message ID PAXPR08MB66213B04F5ECB3A0B372461CE4BC9@PAXPR08MB6621.eurprd08.prod.outlook.com
State Committed
Commit 9701f153f6dfcc365ac0d96cdcf7df69a2de81dc
Headers
Series arm: enable cortex-a710 CPU |

Commit Message

Przemyslaw Wirkus Oct. 18, 2021, 9:39 a.m. UTC
  Hi, 

This patch is adding support for Cortex-A710 CPU [0].

  [0] https://www.arm.com/products/silicon-ip-cpu/cortex-a/cortex-a710

OK for master?

gcc/ChangeLog:

	* config/arm/arm-cpus.in (cortex-a710): New CPU.
	* config/arm/arm-tables.opt: Regenerate.
	* config/arm/arm-tune.md: Regenerate.
	* doc/invoke.texi: Update docs.
  

Comments

Przemyslaw Wirkus Nov. 8, 2021, 10:34 a.m. UTC | #1
Ping :)

> -----Original Message-----
> From: Przemyslaw Wirkus
> Sent: 18 October 2021 10:40
> To: gcc-patches@gcc.gnu.org
> Cc: Richard Earnshaw <Richard.Earnshaw@arm.com>; Ramana Radhakrishnan 
> <Ramana.Radhakrishnan@arm.com>; Kyrylo Tkachov 
> <Kyrylo.Tkachov@arm.com>; nickc@redhat.com
> Subject: [PATCH][GCC] arm: enable cortex-a710 CPU
> 
> Hi,
> 
> This patch is adding support for Cortex-A710 CPU [0].
> 
>   [0] https://www.arm.com/products/silicon-ip-cpu/cortex-a/cortex-a710
> 
> OK for master?
> 
> gcc/ChangeLog:
> 
> 	* config/arm/arm-cpus.in (cortex-a710): New CPU.
> 	* config/arm/arm-tables.opt: Regenerate.
> 	* config/arm/arm-tune.md: Regenerate.
> 	* doc/invoke.texi: Update docs.
> 
> --
> kind regards,
> Przemyslaw Wirkus
> 
> Staff Compiler Engineer | Arm
> . . . . . . . . . . . . . . . . . . . . . . . . . .
> 
> Arm.com
  
Kyrylo Tkachov Nov. 8, 2021, 10:41 a.m. UTC | #2
> -----Original Message-----
> From: Przemyslaw Wirkus <Przemyslaw.Wirkus@arm.com>
> Sent: Monday, November 8, 2021 10:35 AM
> To: gcc-patches@gcc.gnu.org
> Cc: Richard Earnshaw <Richard.Earnshaw@arm.com>; Ramana
> Radhakrishnan <Ramana.Radhakrishnan@arm.com>; Kyrylo Tkachov
> <Kyrylo.Tkachov@arm.com>; nickc@redhat.com
> Subject: RE: [PATCH][GCC] arm: enable cortex-a710 CPU
> 
> Ping :)
> 
> > -----Original Message-----
> > From: Przemyslaw Wirkus
> > Sent: 18 October 2021 10:40
> > To: gcc-patches@gcc.gnu.org
> > Cc: Richard Earnshaw <Richard.Earnshaw@arm.com>; Ramana
> Radhakrishnan
> > <Ramana.Radhakrishnan@arm.com>; Kyrylo Tkachov
> > <Kyrylo.Tkachov@arm.com>; nickc@redhat.com
> > Subject: [PATCH][GCC] arm: enable cortex-a710 CPU
> >
> > Hi,
> >
> > This patch is adding support for Cortex-A710 CPU [0].
> >
> >   [0] https://www.arm.com/products/silicon-ip-cpu/cortex-a/cortex-a710
> >
> > OK for master?

Ok.
Thanks,
Kyrill

> >
> > gcc/ChangeLog:
> >
> > 	* config/arm/arm-cpus.in (cortex-a710): New CPU.
> > 	* config/arm/arm-tables.opt: Regenerate.
> > 	* config/arm/arm-tune.md: Regenerate.
> > 	* doc/invoke.texi: Update docs.
> >
> > --
> > kind regards,
> > Przemyslaw Wirkus
> >
> > Staff Compiler Engineer | Arm
> > . . . . . . . . . . . . . . . . . . . . . . . . . .
> >
> > Arm.com
  
Przemyslaw Wirkus Nov. 10, 2021, 2:13 p.m. UTC | #3
> > Hi,
> >
> > This patch is adding support for Cortex-A710 CPU [0].
> >
> >   [0] https://www.arm.com/products/silicon-ip-cpu/cortex-a/cortex-a710
> >
> > OK for master?

> Ok.
> Thanks,
> Kyrill

commit 9701f153f6dfcc365ac0d96cdcf7df69a2de81dc


> >
> > gcc/ChangeLog:
> >
> >      * config/arm/arm-cpus.in (cortex-a710): New CPU.
> >      * config/arm/arm-tables.opt: Regenerate.
> >      * config/arm/arm-tune.md: Regenerate.
> >      * doc/invoke.texi: Update docs.
> >
> > --
> > kind regards,
> > Przemyslaw Wirkus
> >
> > Staff Compiler Engineer | Arm
> > . . . . . . . . . . . . . . . . . . . . . . . . . .
> >
> > Arm.com
  

Patch

diff --git a/gcc/config/arm/arm-cpus.in b/gcc/config/arm/arm-cpus.in
index 3756ba56c6ea36fa9d017347bd73b27ab7752325..a6a8e4319a69be0913281701f3a85610d637922e 100644
--- a/gcc/config/arm/arm-cpus.in
+++ b/gcc/config/arm/arm-cpus.in
@@ -1513,6 +1513,17 @@  begin cpu cortex-a78c
  part d4b
 end cpu cortex-a78c
 
+begin cpu cortex-a710
+ cname cortexa710
+ tune for cortex-a57
+ tune flags LDSCHED
+ architecture armv9-a+fp16+bf16+i8mm
+ option crypto add FP_ARMv8 CRYPTO
+ costs cortex_a57
+ vendor 41
+ part d47
+end cpu cortex-a710
+
 begin cpu cortex-x1
  cname cortexx1
  tune for cortex-a57
diff --git a/gcc/config/arm/arm-tables.opt b/gcc/config/arm/arm-tables.opt
index c00e252ec5aa0f1a9004718dbea3cf969a4e5be6..6e457fb250223eac22c033424dae406cb74b7df8 100644
--- a/gcc/config/arm/arm-tables.opt
+++ b/gcc/config/arm/arm-tables.opt
@@ -249,6 +249,9 @@  Enum(processor_type) String(cortex-a78ae) Value( TARGET_CPU_cortexa78ae)
 EnumValue
 Enum(processor_type) String(cortex-a78c) Value( TARGET_CPU_cortexa78c)
 
+EnumValue
+Enum(processor_type) String(cortex-a710) Value( TARGET_CPU_cortexa710)
+
 EnumValue
 Enum(processor_type) String(cortex-x1) Value( TARGET_CPU_cortexx1)
 
diff --git a/gcc/config/arm/arm-tune.md b/gcc/config/arm/arm-tune.md
index 6482833fc35b5758f66f2c7082e89c8ded250242..54e701f439b1a6f33267fd54248623755acef3b4 100644
--- a/gcc/config/arm/arm-tune.md
+++ b/gcc/config/arm/arm-tune.md
@@ -46,8 +46,9 @@  (define_attr "tune"
 	cortexa73cortexa53,cortexa55,cortexa75,
 	cortexa76,cortexa76ae,cortexa77,
 	cortexa78,cortexa78ae,cortexa78c,
-	cortexx1,neoversen1,cortexa75cortexa55,
-	cortexa76cortexa55,neoversev1,neoversen2,
-	cortexm23,cortexm33,cortexm35p,
-	cortexm55,cortexr52,cortexr52plus"
+	cortexa710,cortexx1,neoversen1,
+	cortexa75cortexa55,cortexa76cortexa55,neoversev1,
+	neoversen2,cortexm23,cortexm33,
+	cortexm35p,cortexm55,cortexr52,
+	cortexr52plus"
 	(const (symbol_ref "((enum attr_tune) arm_tune)")))
diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
index ce738e830a948016d89e456539fef5f5b18688fb..c5966de3231f9b50df68c0ad434789b0abe7f616 100644
--- a/gcc/doc/invoke.texi
+++ b/gcc/doc/invoke.texi
@@ -20477,7 +20477,7 @@  Permissible names are: @samp{arm7tdmi}, @samp{arm7tdmi-s}, @samp{arm710t},
 @samp{cortex-a32}, @samp{cortex-a35}, @samp{cortex-a53}, @samp{cortex-a55},
 @samp{cortex-a57}, @samp{cortex-a72}, @samp{cortex-a73}, @samp{cortex-a75},
 @samp{cortex-a76}, @samp{cortex-a76ae}, @samp{cortex-a77},
-@samp{cortex-a78}, @samp{cortex-a78ae}, @samp{cortex-a78c},
+@samp{cortex-a78}, @samp{cortex-a78ae}, @samp{cortex-a78c}, @samp{cortex-a710},
 @samp{ares}, @samp{cortex-r4}, @samp{cortex-r4f}, @samp{cortex-r5},
 @samp{cortex-r7}, @samp{cortex-r8}, @samp{cortex-r52}, @samp{cortex-r52plus},
 @samp{cortex-m0}, @samp{cortex-m0plus}, @samp{cortex-m1}, @samp{cortex-m3},