aboutsummaryrefslogtreecommitdiff
path: root/gcc/config
diff options
context:
space:
mode:
authorJames Greenhalgh <james.greenhalgh@arm.com>2015-11-16 10:30:21 +0000
committerJames Greenhalgh <jgreenhalgh@gcc.gnu.org>2015-11-16 10:30:21 +0000
commit67707f65c09d25a16dc09d801a99977f3bf3cd00 (patch)
treea69423ada68aaa64c63d8669b7d7e73439f76fa0 /gcc/config
parentc91062822060a9cab744b3d10fda6456822740aa (diff)
downloadgcc-67707f65c09d25a16dc09d801a99977f3bf3cd00.zip
gcc-67707f65c09d25a16dc09d801a99977f3bf3cd00.tar.gz
gcc-67707f65c09d25a16dc09d801a99977f3bf3cd00.tar.bz2
[AArch64] Cortex-A57 Choose some new branch costs.
gcc/ * config/aarch64/aarch64.c (cortexa57_branch_costs): New. (cortexa57_tunings): Use it. From-SVN: r230409
Diffstat (limited to 'gcc/config')
-rw-r--r--gcc/config/aarch64/aarch64.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/gcc/config/aarch64/aarch64.c b/gcc/config/aarch64/aarch64.c
index 5ec7f08..96df9ed 100644
--- a/gcc/config/aarch64/aarch64.c
+++ b/gcc/config/aarch64/aarch64.c
@@ -338,6 +338,13 @@ static const struct cpu_branch_cost generic_branch_cost =
2 /* Unpredictable. */
};
+/* Branch costs for Cortex-A57. */
+static const struct cpu_branch_cost cortexa57_branch_cost =
+{
+ 1, /* Predictable. */
+ 3 /* Unpredictable. */
+};
+
static const struct tune_params generic_tunings =
{
&cortexa57_extra_costs,
@@ -393,7 +400,7 @@ static const struct tune_params cortexa57_tunings =
&cortexa57_addrcost_table,
&cortexa57_regmove_cost,
&cortexa57_vector_cost,
- &generic_branch_cost,
+ &cortexa57_branch_cost,
4, /* memmov_cost */
3, /* issue_rate */
(AARCH64_FUSE_MOV_MOVK | AARCH64_FUSE_ADRP_ADD