From bc77eb4b51c60080abee30c7985a3ec9e1eb1331 Mon Sep 17 00:00:00 2001 From: Jim Wilson Date: Thu, 12 Nov 2015 17:27:13 +0000 Subject: [PATCH] Add initial qualcomm support. gcc/ * config/aarch64/aarch64-cores.def (qdf24xx): New. * config/aarch64/aarch64-tune.md: Regenerated. * config/arm/arm-cores.def (qdf24xx): New. * config/arm/arm-tables.opt, config/arm/arm-tune.md: Regenerated. * config/arm/bpabi.h (BE8_LINK_SPEC): Add qdf24xx support. * doc/invoke.texi (AArch64 Options/-mtune): Add "qdf24xx". (ARM Options/-mtune); Likewise. From-SVN: r230268 --- gcc/ChangeLog | 10 ++++++++++ gcc/config/aarch64/aarch64-cores.def | 1 + gcc/config/aarch64/aarch64-tune.md | 2 +- gcc/config/arm/arm-cores.def | 1 + gcc/config/arm/arm-tables.opt | 3 +++ gcc/config/arm/arm-tune.md | 4 ++-- gcc/config/arm/bpabi.h | 2 ++ gcc/doc/invoke.texi | 3 ++- 8 files changed, 22 insertions(+), 4 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 4770f0f5e23..35cdf196caa 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,13 @@ +2015-11-12 Jim Wilson + + * config/aarch64/aarch64-cores.def (qdf24xx): New. + * config/aarch64/aarch64-tune.md: Regenerated. + * config/arm/arm-cores.def (qdf24xx): New. + * config/arm/arm-tables.opt, config/arm/arm-tune.md: Regenerated. + * config/arm/bpabi.h (BE8_LINK_SPEC): Add qdf24xx support. + * doc/invoke.texi (AArch64 Options/-mtune): Add "qdf24xx". + (ARM Options/-mtune); Likewise. + 2015-11-12 Martin Liska * config/i386/i386.c (ix86_valid_target_attribute_p): diff --git a/gcc/config/aarch64/aarch64-cores.def b/gcc/config/aarch64/aarch64-cores.def index 0ab1ca839e2..4af70ca613c 100644 --- a/gcc/config/aarch64/aarch64-cores.def +++ b/gcc/config/aarch64/aarch64-cores.def @@ -44,6 +44,7 @@ AARCH64_CORE("cortex-a53", cortexa53, cortexa53, 8A, AARCH64_FL_FOR_ARCH8 | AA AARCH64_CORE("cortex-a57", cortexa57, cortexa57, 8A, AARCH64_FL_FOR_ARCH8 | AARCH64_FL_CRC, cortexa57, "0x41", "0xd07") AARCH64_CORE("cortex-a72", cortexa72, cortexa57, 8A, AARCH64_FL_FOR_ARCH8 | AARCH64_FL_CRC, cortexa72, "0x41", "0xd08") AARCH64_CORE("exynos-m1", exynosm1, cortexa57, 8A, AARCH64_FL_FOR_ARCH8 | AARCH64_FL_CRC | AARCH64_FL_CRYPTO, cortexa72, "0x53", "0x001") +AARCH64_CORE("qdf24xx", qdf24xx, cortexa57, 8A, AARCH64_FL_FOR_ARCH8 | AARCH64_FL_CRC | AARCH64_FL_CRYPTO, cortexa57, "0x51", "0x800") AARCH64_CORE("thunderx", thunderx, thunderx, 8A, AARCH64_FL_FOR_ARCH8 | AARCH64_FL_CRC | AARCH64_FL_CRYPTO, thunderx, "0x43", "0x0a1") AARCH64_CORE("xgene1", xgene1, xgene1, 8A, AARCH64_FL_FOR_ARCH8, xgene1, "0x50", "0x000") diff --git a/gcc/config/aarch64/aarch64-tune.md b/gcc/config/aarch64/aarch64-tune.md index 7d063e45e7d..c65a12420ad 100644 --- a/gcc/config/aarch64/aarch64-tune.md +++ b/gcc/config/aarch64/aarch64-tune.md @@ -1,5 +1,5 @@ ;; -*- buffer-read-only: t -*- ;; Generated automatically by gentune.sh from aarch64-cores.def (define_attr "tune" - "cortexa53,cortexa57,cortexa72,exynosm1,thunderx,xgene1,cortexa57cortexa53,cortexa72cortexa53" + "cortexa53,cortexa57,cortexa72,exynosm1,qdf24xx,thunderx,xgene1,cortexa57cortexa53,cortexa72cortexa53" (const (symbol_ref "((enum attr_tune) aarch64_tune)"))) diff --git a/gcc/config/arm/arm-cores.def b/gcc/config/arm/arm-cores.def index 4c35200b3f8..86ed0cb1dbe 100644 --- a/gcc/config/arm/arm-cores.def +++ b/gcc/config/arm/arm-cores.def @@ -169,6 +169,7 @@ ARM_CORE("cortex-a53", cortexa53, cortexa53, 8A, ARM_FSET_MAKE_CPU1 (FL_LDSCHED ARM_CORE("cortex-a57", cortexa57, cortexa57, 8A, ARM_FSET_MAKE_CPU1 (FL_LDSCHED | FL_CRC32 | FL_FOR_ARCH8A), cortex_a57) ARM_CORE("cortex-a72", cortexa72, cortexa57, 8A, ARM_FSET_MAKE_CPU1 (FL_LDSCHED | FL_CRC32 | FL_FOR_ARCH8A), cortex_a57) ARM_CORE("exynos-m1", exynosm1, cortexa57, 8A, ARM_FSET_MAKE_CPU1 (FL_LDSCHED | FL_CRC32 | FL_FOR_ARCH8A), cortex_a57) +ARM_CORE("qdf24xx", qdf24xx, cortexa57, 8A, ARM_FSET_MAKE_CPU1 (FL_LDSCHED | FL_CRC32 | FL_FOR_ARCH8A), cortex_a57) ARM_CORE("xgene1", xgene1, xgene1, 8A, ARM_FSET_MAKE_CPU1 (FL_LDSCHED | FL_FOR_ARCH8A), xgene1) /* V8 big.LITTLE implementations */ diff --git a/gcc/config/arm/arm-tables.opt b/gcc/config/arm/arm-tables.opt index 77e44aac0b8..41bf1ff250b 100644 --- a/gcc/config/arm/arm-tables.opt +++ b/gcc/config/arm/arm-tables.opt @@ -315,6 +315,9 @@ Enum(processor_type) String(cortex-a72) Value(cortexa72) EnumValue Enum(processor_type) String(exynos-m1) Value(exynosm1) +EnumValue +Enum(processor_type) String(qdf24xx) Value(qdf24xx) + EnumValue Enum(processor_type) String(xgene1) Value(xgene1) diff --git a/gcc/config/arm/arm-tune.md b/gcc/config/arm/arm-tune.md index 8b21d179e04..e56b5ad8cb5 100644 --- a/gcc/config/arm/arm-tune.md +++ b/gcc/config/arm/arm-tune.md @@ -33,6 +33,6 @@ cortexm7,cortexm4,cortexm3, marvell_pj4,cortexa15cortexa7,cortexa17cortexa7, cortexa53,cortexa57,cortexa72, - exynosm1,xgene1,cortexa57cortexa53, - cortexa72cortexa53" + exynosm1,qdf24xx,xgene1, + cortexa57cortexa53,cortexa72cortexa53" (const (symbol_ref "((enum attr_tune) arm_tune)"))) diff --git a/gcc/config/arm/bpabi.h b/gcc/config/arm/bpabi.h index ceaf2cc3385..8af460549b0 100644 --- a/gcc/config/arm/bpabi.h +++ b/gcc/config/arm/bpabi.h @@ -74,6 +74,7 @@ |mcpu=cortex-a72 \ |mcpu=cortex-a72.cortex-a53 \ |mcpu=exynos-m1 \ + |mcpu=qdf24xx \ |mcpu=xgene1 \ |mcpu=cortex-m1.small-multiply \ |mcpu=cortex-m0.small-multiply \ @@ -99,6 +100,7 @@ |mcpu=cortex-a72 \ |mcpu=cortex-a72.cortex-a53 \ |mcpu=exynos-m1 \ + |mcpu=qdf24xx \ |mcpu=xgene1 \ |mcpu=cortex-m1.small-multiply \ |mcpu=cortex-m0.small-multiply \ diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi index fb908b3a2bc..c18df986f05 100644 --- a/gcc/doc/invoke.texi +++ b/gcc/doc/invoke.texi @@ -12577,7 +12577,7 @@ processors implementing the target architecture. Specify the name of the target processor for which GCC should tune the performance of the code. Permissible values for this option are: @samp{generic}, @samp{cortex-a53}, @samp{cortex-a57}, @samp{cortex-a72}, -@samp{exynos-m1}, @samp{thunderx}, @samp{xgene1}. +@samp{exynos-m1}, @samp{qdf24xx}, @samp{thunderx}, @samp{xgene1}. Additionally, this option can specify that GCC should tune the performance of the code for a big.LITTLE system. Permissible values for this @@ -13564,6 +13564,7 @@ Permissible names are: @samp{arm2}, @samp{arm250}, @samp{cortex-m0.small-multiply}, @samp{cortex-m0plus.small-multiply}, @samp{exynos-m1}, +@samp{qdf24xx}, @samp{marvell-pj4}, @samp{xscale}, @samp{iwmmxt}, @samp{iwmmxt2}, @samp{ep9312}, @samp{fa526}, @samp{fa626}, -- 2.30.2