From patchwork Tue Nov 1 17:12:33 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Kyrill Tkachov X-Patchwork-Id: 80386 Delivered-To: patch@linaro.org Received: by 10.80.142.83 with SMTP id 19csp753118edx; Tue, 1 Nov 2016 10:13:04 -0700 (PDT) X-Received: by 10.99.123.87 with SMTP id k23mr18874866pgn.101.1478020384455; Tue, 01 Nov 2016 10:13:04 -0700 (PDT) Return-Path: Received: from sourceware.org (server1.sourceware.org. [209.132.180.131]) by mx.google.com with ESMTPS id e6si26245889pan.151.2016.11.01.10.13.04 for (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 01 Nov 2016 10:13:04 -0700 (PDT) Received-SPF: pass (google.com: domain of gcc-patches-return-440077-patch=linaro.org@gcc.gnu.org designates 209.132.180.131 as permitted sender) client-ip=209.132.180.131; Authentication-Results: mx.google.com; dkim=pass header.i=@gcc.gnu.org; spf=pass (google.com: domain of gcc-patches-return-440077-patch=linaro.org@gcc.gnu.org designates 209.132.180.131 as permitted sender) smtp.mailfrom=gcc-patches-return-440077-patch=linaro.org@gcc.gnu.org DomainKey-Signature: a=rsa-sha1; c=nofws; d=gcc.gnu.org; h=list-id :list-unsubscribe:list-archive:list-post:list-help:sender :message-id:date:from:mime-version:to:cc:subject:content-type; q=dns; s=default; b=XEJXkd1NqJnYkXE8v3EE6tGeHBV3hIg3c4d7Li9Luo6 O1W0DWRQE2wq7nuJ4aP4UhkCTASkDRQiD7fYGVDWwznpVrOVaQO1A0rknvBRQuJG WQ7kK498Tt4AzguYSmd19la3CgIdjtDu3r4bWoWbtotM36Y4ROzSoma0BQCJAv54 = DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=gcc.gnu.org; h=list-id :list-unsubscribe:list-archive:list-post:list-help:sender :message-id:date:from:mime-version:to:cc:subject:content-type; s=default; bh=omCkpJfAECOraQg9yFirTZrZbGc=; b=li32WWXFDk30MluHM Io/3JW9D3U8T0UFuMzlIyWa0ZBak6FlPel6PnCHu4WBYczXZwbbjYLbIpP3CHyx2 dvgqYKLDesL7UzGx+n4vhpX+X4n0dktNovoPe+0bJAjucUyL6slqdxO9IlxB86Sg moI6ypd5jZBA941ds4y6S+cpuM= Received: (qmail 12071 invoked by alias); 1 Nov 2016 17:12:47 -0000 Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Delivered-To: mailing list gcc-patches@gcc.gnu.org Received: (qmail 12039 invoked by uid 89); 1 Nov 2016 17:12:46 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-3.4 required=5.0 tests=BAYES_00, KAM_LAZY_DOMAIN_SECURITY, RP_MATCHES_RCVD autolearn=ham version=3.3.2 spammy=transitional X-HELO: foss.arm.com Received: from foss.arm.com (HELO foss.arm.com) (217.140.101.70) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Tue, 01 Nov 2016 17:12:36 +0000 Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.72.51.249]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 2637816; Tue, 1 Nov 2016 10:12:35 -0700 (PDT) Received: from [10.2.207.77] (e100706-lin.cambridge.arm.com [10.2.207.77]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 88BD63F41F; Tue, 1 Nov 2016 10:12:34 -0700 (PDT) Message-ID: <5818CD01.9010003@foss.arm.com> Date: Tue, 01 Nov 2016 17:12:33 +0000 From: Kyrill Tkachov User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.2.0 MIME-Version: 1.0 To: GCC Patches CC: Ramana Radhakrishnan , Richard Earnshaw Subject: [PATCH][ARM][1/2] Use generic_extra_costs in all remaining tuning structs 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,