From: Srinath Parvathaneni Date: Mon, 14 Nov 2022 15:45:59 +0000 (+0000) Subject: arm: Add support for Cortex-X1C CPU. X-Git-Tag: upstream/13.1.0~3222 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=23a121d495ea0d2c423afcc1305c23acc7379397;p=platform%2Fupstream%2Fgcc.git arm: Add support for Cortex-X1C CPU. This patch adds the -mcpu support for the Arm Cortex-X1C CPU. gcc/ChangeLog: 2022-11-09 Srinath Parvathaneni * config/arm/arm-cpus.in (cortex-x1c): Define new CPU. * config/arm/arm-tables.opt: Regenerate. * config/arm/arm-tune.md: Likewise. * doc/invoke.texi: Document Cortex-X1C CPU. gcc/testsuite/ChangeLog: 2022-11-09 Srinath Parvathaneni * gcc.target/arm/multilib.exp: Add tests for Cortex-X1C. --- diff --git a/gcc/config/arm/arm-cpus.in b/gcc/config/arm/arm-cpus.in index 5a63bc5..5ed4db3 100644 --- a/gcc/config/arm/arm-cpus.in +++ b/gcc/config/arm/arm-cpus.in @@ -1542,6 +1542,17 @@ begin cpu cortex-x1 part d44 end cpu cortex-x1 +begin cpu cortex-x1c + cname cortexx1c + tune for cortex-a57 + tune flags LDSCHED + architecture armv8.2-a+fp16+dotprod + option crypto add FP_ARMv8 CRYPTO + costs cortex_a57 + vendor 41 + part d4c +end cpu cortex-x1c + begin cpu neoverse-n1 cname neoversen1 alias !ares diff --git a/gcc/config/arm/arm-tables.opt b/gcc/config/arm/arm-tables.opt index e6461ab..a10a09e 100644 --- a/gcc/config/arm/arm-tables.opt +++ b/gcc/config/arm/arm-tables.opt @@ -256,6 +256,9 @@ EnumValue Enum(processor_type) String(cortex-x1) Value( TARGET_CPU_cortexx1) EnumValue +Enum(processor_type) String(cortex-x1c) Value( TARGET_CPU_cortexx1c) + +EnumValue Enum(processor_type) String(neoverse-n1) Value( TARGET_CPU_neoversen1) EnumValue diff --git a/gcc/config/arm/arm-tune.md b/gcc/config/arm/arm-tune.md index abc290e..8af8c93 100644 --- a/gcc/config/arm/arm-tune.md +++ b/gcc/config/arm/arm-tune.md @@ -46,7 +46,7 @@ cortexa73cortexa53,cortexa55,cortexa75, cortexa76,cortexa76ae,cortexa77, cortexa78,cortexa78ae,cortexa78c, - cortexa710,cortexx1,neoversen1, + cortexa710,cortexx1,cortexx1c,neoversen1, cortexa75cortexa55,cortexa76cortexa55,neoversev1, neoversen2,cortexm23,cortexm33, cortexm35p,cortexm55,starmc1, diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi index e406136..e8ea71f 100644 --- a/gcc/doc/invoke.texi +++ b/gcc/doc/invoke.texi @@ -21886,7 +21886,7 @@ Permissible names are: @samp{arm7tdmi}, @samp{arm7tdmi-s}, @samp{arm710t}, @samp{cortex-r7}, @samp{cortex-r8}, @samp{cortex-r52}, @samp{cortex-r52plus}, @samp{cortex-m0}, @samp{cortex-m0plus}, @samp{cortex-m1}, @samp{cortex-m3}, @samp{cortex-m4}, @samp{cortex-m7}, @samp{cortex-m23}, @samp{cortex-m33}, -@samp{cortex-m35p}, @samp{cortex-m55}, @samp{cortex-x1}, +@samp{cortex-m35p}, @samp{cortex-m55}, @samp{cortex-x1}, @samp{cortex-x1c}, @samp{cortex-m1.small-multiply}, @samp{cortex-m0.small-multiply}, @samp{cortex-m0plus.small-multiply}, @samp{exynos-m1}, @samp{marvell-pj4}, @samp{neoverse-n1}, @samp{neoverse-n2}, @samp{neoverse-v1}, @samp{xscale}, diff --git a/gcc/testsuite/gcc.target/arm/multilib.exp b/gcc/testsuite/gcc.target/arm/multilib.exp index 2fa648c..f903f02 100644 --- a/gcc/testsuite/gcc.target/arm/multilib.exp +++ b/gcc/testsuite/gcc.target/arm/multilib.exp @@ -450,6 +450,9 @@ if {[multilib_config "aprofile"] } { {-march=armv8-a -mfpu=crypto-neon-fp-armv8 -mfloat-abi=hard -mthumb} "thumb/v8-a+simd/hard" {-march=armv7-a -mfpu=crypto-neon-fp-armv8 -mfloat-abi=softfp -mthumb} "thumb/v7-a+simd/softfp" {-march=armv8-a -mfpu=crypto-neon-fp-armv8 -mfloat-abi=softfp -mthumb} "thumb/v8-a+simd/softfp" + {-mcpu=cortex-x1c -mfpu=auto -mfloat-abi=softfp -mthumb} "thumb/v8-a+simd/softfp" + {-mcpu=cortex-x1c -mfpu=auto -mfloat-abi=hard -mthumb} "thumb/v8-a+simd/hard" + {-mcpu=cortex-x1c -mfpu=auto -mfloat-abi=soft -mthumb} "thumb/v8-a/nofp" } { check_multi_dir $opts $dir }