aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJames Greenhalgh <james.greenhalgh@arm.com>2013-12-17 12:32:43 +0000
committerJames Greenhalgh <jgreenhalgh@gcc.gnu.org>2013-12-17 12:32:43 +0000
commit7f8b9e364177d95b03a9a2dbd9819f10769f8c7f (patch)
tree6f0849bbddfb755d894903f7aed9448171dad07a
parent222f9bd0864131fba63973505a24aca0b76daea1 (diff)
downloadgcc-7f8b9e364177d95b03a9a2dbd9819f10769f8c7f.zip
gcc-7f8b9e364177d95b03a9a2dbd9819f10769f8c7f.tar.gz
gcc-7f8b9e364177d95b03a9a2dbd9819f10769f8c7f.tar.bz2
[ARM 5/5 big.LITTLE] Add support for -mcpu=cortex-a57.cortex-a53
gcc/ * config/arm/arm-cores.def (cortex-a57.cortex-a53): New. * doc/invoke.texi: Document -mcpu=cortex-a57.cortex-a53. * config/arm/arm-tables.opt: Regenerate. * config/arm/arm-tune.md: Regenerate. * config/arm/bpabi.h (BE8_LINK_SPEC): Handle -mcpu=cortex-a57.cortex-a53. From-SVN: r206049
-rw-r--r--gcc/ChangeLog9
-rw-r--r--gcc/config/arm/arm-cores.def3
-rw-r--r--gcc/config/arm/arm-tables.opt3
-rw-r--r--gcc/config/arm/arm-tune.md2
-rw-r--r--gcc/config/arm/bpabi.h2
-rw-r--r--gcc/doc/invoke.texi4
6 files changed, 20 insertions, 3 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 6169639..b618d5e 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,14 @@
2013-12-17 James Greenhalgh <james.greenhalgh@arm.com>
+ * config/arm/arm-cores.def (cortex-a57.cortex-a53): New.
+ * doc/invoke.texi: Document -mcpu=cortex-a57.cortex-a53.
+ * config/arm/arm-tables.opt: Regenerate.
+ * config/arm/arm-tune.md: Regenerate.
+ * config/arm/bpabi.h
+ (BE8_LINK_SPEC): Handle -mcpu=cortex-a57.cortex-a53.
+
+2013-12-17 James Greenhalgh <james.greenhalgh@arm.com>
+
* config/arm/arm-cores.def (cortex-a57): New.
* doc/invoke.texi: Document -mcpu=cortex-a57.
* config/arm/arm-tables.opt: Regenerate.
diff --git a/gcc/config/arm/arm-cores.def b/gcc/config/arm/arm-cores.def
index d5e562b..9bd3f39 100644
--- a/gcc/config/arm/arm-cores.def
+++ b/gcc/config/arm/arm-cores.def
@@ -154,3 +154,6 @@ ARM_CORE("cortex-a15.cortex-a7", cortexa15cortexa7, cortexa7, 7A, FL_LDSCHED |
/* V8 Architecture Processors */
ARM_CORE("cortex-a53", cortexa53, cortexa53, 8A, FL_LDSCHED, cortex_a53)
ARM_CORE("cortex-a57", cortexa57, cortexa15, 8A, FL_LDSCHED, cortex_a15)
+
+/* V8 big.LITTLE implementations */
+ARM_CORE("cortex-a57.cortex-a53", cortexa57cortexa53, cortexa53, 8A, FL_LDSCHED | FL_THUMB_DIV | FL_ARM_DIV, cortex_a15)
diff --git a/gcc/config/arm/arm-tables.opt b/gcc/config/arm/arm-tables.opt
index 03c1560..702338c 100644
--- a/gcc/config/arm/arm-tables.opt
+++ b/gcc/config/arm/arm-tables.opt
@@ -291,6 +291,9 @@ Enum(processor_type) String(cortex-a53) Value(cortexa53)
EnumValue
Enum(processor_type) String(cortex-a57) Value(cortexa57)
+EnumValue
+Enum(processor_type) String(cortex-a57.cortex-a53) Value(cortexa57cortexa53)
+
Enum
Name(arm_arch) Type(int)
Known ARM architectures (for use with the -march= option):
diff --git a/gcc/config/arm/arm-tune.md b/gcc/config/arm/arm-tune.md
index d56956d..954cab8 100644
--- a/gcc/config/arm/arm-tune.md
+++ b/gcc/config/arm/arm-tune.md
@@ -30,5 +30,5 @@
cortexa15,cortexr4,cortexr4f,
cortexr5,cortexr7,cortexm4,
cortexm3,marvell_pj4,cortexa15cortexa7,
- cortexa53,cortexa57"
+ cortexa53,cortexa57,cortexa57cortexa53"
(const (symbol_ref "((enum attr_tune) arm_tune)")))
diff --git a/gcc/config/arm/bpabi.h b/gcc/config/arm/bpabi.h
index 796003b..5cfaeb8 100644
--- a/gcc/config/arm/bpabi.h
+++ b/gcc/config/arm/bpabi.h
@@ -64,6 +64,7 @@
|mcpu=marvell-pj4 \
|mcpu=cortex-a53 \
|mcpu=cortex-a57 \
+ |mcpu=cortex-a57.cortex-a53 \
|mcpu=generic-armv7-a \
|march=armv7-m|mcpu=cortex-m3 \
|march=armv7e-m|mcpu=cortex-m4 \
@@ -79,6 +80,7 @@
|mcpu=cortex-a15.cortex-a7 \
|mcpu=cortex-a53 \
|mcpu=cortex-a57 \
+ |mcpu=cortex-a57.cortex-a53 \
|mcpu=marvell-pj4 \
|mcpu=generic-armv7-a \
|march=armv7-m|mcpu=cortex-m3 \
diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
index 9743387..b102e13 100644
--- a/gcc/doc/invoke.texi
+++ b/gcc/doc/invoke.texi
@@ -12170,8 +12170,8 @@ assembly code. Permissible names are: @samp{arm2}, @samp{arm250},
@samp{fa606te}, @samp{fa626te}, @samp{fmp626}, @samp{fa726te}.
Additionally, this option can specify that GCC should tune the performance
-of the code for a big.LITTLE system. The only permissible name is:
-@samp{cortex-a15.cortex-a7}.
+of the code for a big.LITTLE system. Permissible names are:
+@samp{cortex-a15.cortex-a7}, @samp{cortex-a57.cortex-a53}.
@option{-mcpu=generic-@var{arch}} is also permissible, and is
equivalent to @option{-march=@var{arch} -mtune=generic-@var{arch}}.