This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
[PATCH][ARM][1/2] Use generic_extra_costs in all remaining tuning structs
- From: Kyrill Tkachov <kyrylo dot tkachov at foss dot arm dot com>
- To: GCC Patches <gcc-patches at gcc dot gnu dot org>
- Cc: Ramana Radhakrishnan <ramana dot radhakrishnan at arm dot com>, Richard Earnshaw <Richard dot Earnshaw at arm dot com>
- Date: Tue, 01 Nov 2016 17:12:33 +0000
- Subject: [PATCH][ARM][1/2] Use generic_extra_costs in all remaining tuning structs
- Authentication-results: sourceware.org; auth=none
Hi all,
This is the first of two patches to do away with the transitional -mold-rtx-costs option and finalise
the transition to the table-based RTX costs approach.
This first patch switches the remaining tuning structs to use generic_extra_costs so that the 2nd
patch can remove the rtx_costs function pointer in tune_params. This essentially makes the transitional
option -mnew-generic-costs the default (though it will be removed in the second patch).
Bootstrapped and tested on arm-none-linux-gnueabihf.
Ok for trunk?
Thanks,
Kyrill
2016-11-01 Kyrylo Tkachov kyrylo.tkachov@arm.com
* config/arm/arm.c (arm_slowmul_tune): Use generic_extra_costs.
(arm_fastmul_tune): Likewise.
(arm_strongarm_tune): Likewise.
(arm_xscale_tune): Likewise.
(arm_9e_tune): Likewise.
(arm_marvell_pj4_tune): Likewise.
(arm_v6t2_tune): Likewise.
(arm_v6m_tune): Likewise.
(arm_fa726te_tune): Likewise.
diff --git a/gcc/config/arm/arm.c b/gcc/config/arm/arm.c
index 74c4041a5f5173714dec36a3ad37b8b63cd5cc49..6bc588f7993979659ffe69646d8606f0f72cf608 100644
--- a/gcc/config/arm/arm.c
+++ b/gcc/config/arm/arm.c
@@ -1682,7 +1682,7 @@ const struct cpu_cost_table v7m_extra_costs =
const struct tune_params arm_slowmul_tune =
{
arm_slowmul_rtx_costs,
- NULL, /* Insn extra costs. */
+ &generic_extra_costs, /* Insn extra costs. */
NULL, /* Sched adj cost. */
arm_default_branch_cost,
&arm_default_vec_cost,
@@ -1705,7 +1705,7 @@ const struct tune_params arm_slowmul_tune =
const struct tune_params arm_fastmul_tune =
{
arm_fastmul_rtx_costs,
- NULL, /* Insn extra costs. */
+ &generic_extra_costs, /* Insn extra costs. */
NULL, /* Sched adj cost. */
arm_default_branch_cost,
&arm_default_vec_cost,
@@ -1731,7 +1731,7 @@ const struct tune_params arm_fastmul_tune =
const struct tune_params arm_strongarm_tune =
{
arm_fastmul_rtx_costs,
- NULL, /* Insn extra costs. */
+ &generic_extra_costs, /* Insn extra costs. */
NULL, /* Sched adj cost. */
arm_default_branch_cost,
&arm_default_vec_cost,
@@ -1754,7 +1754,7 @@ const struct tune_params arm_strongarm_tune =
const struct tune_params arm_xscale_tune =
{
arm_xscale_rtx_costs,
- NULL, /* Insn extra costs. */
+ &generic_extra_costs, /* Insn extra costs. */
xscale_sched_adjust_cost,
arm_default_branch_cost,
&arm_default_vec_cost,
@@ -1777,7 +1777,7 @@ const struct tune_params arm_xscale_tune =
const struct tune_params arm_9e_tune =
{
arm_9e_rtx_costs,
- NULL, /* Insn extra costs. */
+ &generic_extra_costs, /* Insn extra costs. */
NULL, /* Sched adj cost. */
arm_default_branch_cost,
&arm_default_vec_cost,
@@ -1800,7 +1800,7 @@ const struct tune_params arm_9e_tune =
const struct tune_params arm_marvell_pj4_tune =
{
arm_9e_rtx_costs,
- NULL, /* Insn extra costs. */
+ &generic_extra_costs, /* Insn extra costs. */
NULL, /* Sched adj cost. */
arm_default_branch_cost,
&arm_default_vec_cost,
@@ -1823,7 +1823,7 @@ const struct tune_params arm_marvell_pj4_tune =
const struct tune_params arm_v6t2_tune =
{
arm_9e_rtx_costs,
- NULL, /* Insn extra costs. */
+ &generic_extra_costs, /* Insn extra costs. */
NULL, /* Sched adj cost. */
arm_default_branch_cost,
&arm_default_vec_cost,
@@ -2230,7 +2230,7 @@ const struct tune_params arm_cortex_m7_tune =
const struct tune_params arm_v6m_tune =
{
arm_9e_rtx_costs,
- NULL, /* Insn extra costs. */
+ &generic_extra_costs, /* Insn extra costs. */
NULL, /* Sched adj cost. */
arm_default_branch_cost,
&arm_default_vec_cost, /* Vectorizer costs. */
@@ -2253,7 +2253,7 @@ const struct tune_params arm_v6m_tune =
const struct tune_params arm_fa726te_tune =
{
arm_9e_rtx_costs,
- NULL, /* Insn extra costs. */
+ &generic_extra_costs, /* Insn extra costs. */
fa726te_sched_adjust_cost,
arm_default_branch_cost,
&arm_default_vec_cost,