]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
arm: support +CDECP<n> options on cortex-m85
authorRichard Earnshaw <rearnsha@arm.com>
Thu, 16 Apr 2026 13:50:07 +0000 (14:50 +0100)
committerRichard Earnshaw <rearnsha@arm.com>
Thu, 16 Apr 2026 14:11:12 +0000 (15:11 +0100)
The Cortex-m85 CPU supports the CDE extension, which requires use of the
+cdecp<n> CPU name modifiers.  This patch enables these options.  This is
all pretty-much boiler-plate since Srinath added support on Cortex-m55.

gcc/ChangeLog:

* config/arm/arm-cpus.in (cortex-m85): Allow +cdecp<n>.
* doc/invoke.texi: Document this

gcc/testsuite/ChangeLog:

* gcc.target/arm/multilib.exp: Test CDE options on cortex-m85.

gcc/config/arm/arm-cpus.in
gcc/doc/invoke.texi
gcc/testsuite/gcc.target/arm/multilib.exp

index f66870a303dcd499e6d189d0a9cb839cfbb9a845..db674b85af1fff02c6d5172314c58f298d17bbc0 100644 (file)
@@ -1694,6 +1694,14 @@ begin cpu cortex-m85
  option nomve remove mve mve_float
  option nofp remove ALL_FP mve_float
  option nodsp remove MVE mve_float
+ option cdecp0 add cdecp0
+ option cdecp1 add cdecp1
+ option cdecp2 add cdecp2
+ option cdecp3 add cdecp3
+ option cdecp4 add cdecp4
+ option cdecp5 add cdecp5
+ option cdecp6 add cdecp6
+ option cdecp7 add cdecp7
  isa quirk_no_asmcpu quirk_vlldm
  costs v7m
  part 0xd23
index a3ac487eeaa6295d57f7bb04d2b9daa3be0c75f0..dc83623d48ba73b9b000e91e63dbbf9e0f79f104 100644 (file)
@@ -23683,7 +23683,7 @@ instructions on @samp{cortex-m52}, @samp{cortex-m55} and @samp{cortex-m85}.
 @item +cdecp0, +cdecp1, ... , +cdecp7
 Enable the Custom Datapath Extension (CDE) on selected coprocessors according
 to the numbers given in the options in the range 0 to 7 on @samp{cortex-m52},
-@samp{cortex-m55} and @samp{star-mc1}.
+@samp{cortex-m55}, @samp{cortex-m85} and @samp{star-mc1}.
 
 @item  +nofp
 Disables the floating-point instructions on @samp{arm9e},
index b824173e79875e44e91b9322f9a286faee8fcd50..29376c49df80c1431bf7f5f93bb085027f4056e3 100644 (file)
@@ -526,6 +526,7 @@ if {[multilib_config "rmprofile"] } {
        {-mcpu=cortex-m23 -mfpu=fpv5-d16 -mfloat-abi=soft} "thumb/v8-m.base/nofp"
        {-mcpu=cortex-m33 -mfpu=fpv5-d16 -mfloat-abi=soft} "thumb/v8-m.main/nofp"
        {-mcpu=cortex-m7+nofp.dp -mfpu=fpv5-d16 -mfloat-abi=soft} "thumb/v7e-m/nofp"
+
        {-mcpu=cortex-m85+nopacbti -mfpu=auto -mfloat-abi=soft} "thumb/v8-m.main/nofp"
        {-mcpu=cortex-m85+nopacbti+nofp -mfpu=auto -mfloat-abi=soft} "thumb/v8-m.main/nofp"
        {-mcpu=cortex-m85+nopacbti+nomve -mfpu=auto -mfloat-abi=soft} "thumb/v8-m.main/nofp"
@@ -535,6 +536,16 @@ if {[multilib_config "rmprofile"] } {
        {-mcpu=cortex-m85+nomve.fp -mfpu=auto -mfloat-abi=soft} "thumb/v8-m.main/nofp"
        {-mcpu=cortex-m85+nomve -mfpu=auto -mfloat-abi=soft} "thumb/v8-m.main/nofp"
        {-mcpu=cortex-m85+nodsp -mfpu=auto -mfloat-abi=soft} "thumb/v8-m.main/nofp"
+       {-mcpu=cortex-m85+nopacbti+cdecp0 -mfpu=auto -mfloat-abi=soft} "thumb/v8-m.main/nofp"
+       {-mcpu=cortex-m85+nopacbti+cdecp1+nofp -mfpu=auto -mfloat-abi=soft} "thumb/v8-m.main/nofp"
+       {-mcpu=cortex-m85+nopacbti+cdecp7+nomve -mfpu=auto -mfloat-abi=soft} "thumb/v8-m.main/nofp"
+       {-mcpu=cortex-m85+nopacbti+cdecp0+cdecp1+nodsp -mfpu=auto -mfloat-abi=soft} "thumb/v8-m.main/nofp"
+       {-mcpu=cortex-m85+nopacbti+cdecp0+cdecp1+cdecp2+cdecp3+cdecp4+cdecp5+cdecp6+cdecp7+nomve.fp -mfpu=auto -mfloat-abi=soft} "thumb/v8-m.main/nofp"
+       {-mcpu=cortex-m85+cdecp6 -mfpu=auto -mfloat-abi=soft} "thumb/v8-m.main/nofp"
+       {-mcpu=cortex-m85+cdecp4+nomve.fp -mfpu=auto -mfloat-abi=soft} "thumb/v8-m.main/nofp"
+       {-mcpu=cortex-m85+cdecp5+nomve -mfpu=auto -mfloat-abi=soft} "thumb/v8-m.main/nofp"
+       {-mcpu=cortex-m85+cdecp2+nodsp -mfpu=auto -mfloat-abi=soft} "thumb/v8-m.main/nofp"
+
        {-mcpu=cortex-m4 -mfpu=auto -mfloat-abi=hard} "thumb/v7e-m+fp/hard"
        {-mcpu=cortex-m7 -mfpu=auto -mfloat-abi=hard} "thumb/v7e-m+dp/hard"
        {-mcpu=cortex-m33 -mfpu=auto -mfloat-abi=hard} "thumb/v8-m.main+fp/hard"