From patchwork Wed Feb 12 06:50:11 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Hans-Peter Nilsson X-Patchwork-Id: 1236646 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=gcc.gnu.org (client-ip=209.132.180.131; helo=sourceware.org; envelope-from=gcc-patches-return-519385-incoming=patchwork.ozlabs.org@gcc.gnu.org; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=axis.com Authentication-Results: ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=gcc.gnu.org header.i=@gcc.gnu.org header.a=rsa-sha1 header.s=default header.b=XiGbuJaD; dkim-atps=neutral Received: from sourceware.org (server1.sourceware.org [209.132.180.131]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 48HVdW58lrz9s1x for ; Wed, 12 Feb 2020 17:50:22 +1100 (AEDT) DomainKey-Signature: a=rsa-sha1; c=nofws; d=gcc.gnu.org; h=list-id :list-unsubscribe:list-archive:list-post:list-help:sender:date :message-id:from:to:subject:mime-version:content-type :content-transfer-encoding; q=dns; s=default; b=wkGZPdwAahOgtiTb bPo66dsg2C8D2LcqNSbU6EvdpFqodBIsuewTE+OXIetaKUvBqitFtSity5Ivryg9 /ilutvxc97JtomsLLW8tfEmpu2OQPB5r/5x4cP27hZQ92W5GQEmGx06zFPNYzVHb g5CHUuhO9gyzLft1OAtzeBFhE/Q= 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:date :message-id:from:to:subject:mime-version:content-type :content-transfer-encoding; s=default; bh=faj2xhJrbKPgY315Ck0zch IPID0=; b=XiGbuJaDM+CUXLo6JNZnyiwBLDnxn1B5pe/wpiZfNA0YhAYjoJKl4l yvYAXSyHkNe9suanFMYIy2ny4wVKibSCcjovMQG8EuEfC9Eth7e+rVBdfpURUfyT cjDRkkmKKOwYbYlc0DA0OCiff0LaqL8jOeHK6Z5noI8lSvrx4gkYQ= 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-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 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 07:50:11 +0100 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 X-IsSubscribed: yes * 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