From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 103127 invoked by alias); 12 Feb 2020 06:50:15 -0000 Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Received: (qmail 103115 invoked by uid 89); 12 Feb 2020 06:50:15 -0000 Authentication-Results: sourceware.org; auth=none X-Spam-SWARE-Status: No, score=-24.3 required=5.0 tests=AWL,BAYES_00,GIT_PATCH_0,GIT_PATCH_1,GIT_PATCH_2,GIT_PATCH_3,SPF_PASS autolearn=ham version=3.3.1 spammy= X-HELO: smtp2.axis.com Received: from smtp2.axis.com (HELO smtp2.axis.com) (195.60.68.18) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Wed, 12 Feb 2020 06:50:14 +0000 IronPort-SDR: 7Kug0Pa6glw48Hg79n5jwSofX9vn7Ph6YgWPySpPOrZ42CZ8qJFI4+EMAiZVpSehi68KdtjNvS JE1cZK+voKMA302zN2lb8aKttdiRZJzKWpmd7Tws0vjJwXy8qucrLDfHCl8usZa0ogpZOjPYFm GwZyyVwfA4AZtEzpOiw+lwaj/QV0Ma2zNmOgyR2EXrGvyNxIwt3WZ4lrbHCAyL7/tPgl6gbdSV LbQewPhEfegUIiRys49GCETRM3QfpBpSR8UgbjhMrb8ZZi3QHUuHtUWI3JAnRDffdWDUsOELJd Zwc= Date: Wed, 12 Feb 2020 06:50:00 -0000 Message-ID: <202002120650.01C6oBH5026343@ignucius.se.axis.com> From: Hans-Peter Nilsson To: Subject: [cris-decc0 2/14] cris: Define TARGET_FLAGS_REGNUM. MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 8BIT Return-Path: hp@axis.com X-IsSubscribed: yes X-SW-Source: 2020-02/txt/msg00695.txt.bz2 * config/cris/cris.c (TARGET_FLAGS_REGNUM): Define. This made a whole lot of difference regarding regressions in the delay-slot filling. Before this, comparing __lshrdi3 for v10 before/after decc0ration and other nearby functions was worse by several missing delay-slot fills; now down to 1. Also, add a comment about *not* defining TARGET_FIXED_CONDITION_CODE_REGS. --- gcc/config/cris/cris.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/gcc/config/cris/cris.c b/gcc/config/cris/cris.c index 9fdabe2ac..eecda8384 100644 --- a/gcc/config/cris/cris.c +++ b/gcc/config/cris/cris.c @@ -219,6 +219,16 @@ int cris_cpu_version = CRIS_DEFAULT_CPU_VERSION; #undef TARGET_PREFERRED_RELOAD_CLASS #define TARGET_PREFERRED_RELOAD_CLASS cris_preferred_reload_class +/* We don't define TARGET_FIXED_CONDITION_CODE_REGS, as at the time of + this writing, it has an effect only on pre-reload CSE and when + scheduling (and for "macro fusion" at that). Neither applies for + CRIS so don't waste compilation cycles on enabling a pass that does + nothing. Beware of changes to its usage; it may make sense to enable + "later". */ + +#undef TARGET_FLAGS_REGNUM +#define TARGET_FLAGS_REGNUM CRIS_CC0_REGNUM + #undef TARGET_REGISTER_MOVE_COST #define TARGET_REGISTER_MOVE_COST cris_register_move_cost #undef TARGET_MEMORY_MOVE_COST -- 2.11.0 brgds, H-P