arm: Add support for Arm Cortex-M52 CPU.
commit6e249a9ad9d26fb01b147d33be9f9bfebca85c24
authorChung-Ju Wu <jasonwucj@gmail.com>
Tue, 9 Jan 2024 06:26:18 +0000 (9 14:26 +0800)
committerChung-Ju Wu <jasonwucj@gmail.com>
Tue, 9 Jan 2024 06:26:18 +0000 (9 14:26 +0800)
treeb54d594d252e1cc1c11af4ebdf6788d60465f51b
parentab6224dfe12bd57f02343375a03c8a979e927d93
arm: Add support for Arm Cortex-M52 CPU.

This patch adds the -mcpu support for the Arm Cortex-M52 CPU which is
an Armv8.1-M Mainline CPU supporting MVE and PACBTI by default.

-mcpu=cortex-m52 switch by default matches to -march=armv8.1-m.main+pacbti+mve.fp+fp.dp.

The cde feature is supported by specifying +cdecpN (e.g. -mcpu=cortex-m52+cdecp<N>),
where N is the coprocessor number 0 to 7.

Also following options are provided to disable default features.
+nomve.fp (disables MVE Floating point)
+nomve (disables MVE Integer and MVE Floating point)
+nodsp (disables dsp, MVE Integer and MVE Floating point)
+nopacbti (disables pacbti)
+nofp (disables floating point and MVE floating point)

Signed-off-by: Chung-Ju Wu <jasonwucj@gmail.com>
gcc/ChangeLog:

* config/arm/arm-cpus.in (cortex-m52): New cpu.
* config/arm/arm-tables.opt: Regenerate.
* config/arm/arm-tune.md: Regenerate.
gcc/config/arm/arm-cpus.in
gcc/config/arm/arm-tables.opt
gcc/config/arm/arm-tune.md