From patchwork Wed Oct 31 16:33:06 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Gary Funck X-Patchwork-Id: 195933 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from sourceware.org (server1.sourceware.org [209.132.180.131]) by ozlabs.org (Postfix) with SMTP id DA9C02C00A4 for ; Thu, 1 Nov 2012 03:33:24 +1100 (EST) Comment: DKIM? See http://www.dkim.org DKIM-Signature: v=1; a=rsa-sha1; c=relaxed/relaxed; d=gcc.gnu.org; s=default; x=1352306005; h=Comment: DomainKey-Signature:Received:Received:Received:Received:Received: Received:Date:From:To:Cc:Subject:Message-ID:References: MIME-Version:Content-Type:Content-Disposition:In-Reply-To: User-Agent:Mailing-List:Precedence:List-Id:List-Unsubscribe: List-Archive:List-Post:List-Help:Sender:Delivered-To; bh=6MnqhYq RoxyMAO7LFUa/kQ/XIZE=; b=h3hnd2mPjzHQcDXysGzVkmyzH+zrMJqba9+otQx /avLEINW4H7nuLS4f9ub5c3/VNv7lSf5Ax5X+WmUEsz4Vr8Ea5tkduPkEatre5cW LcsfJAFBeuKVKgTGXlc4FgHGh0/2VbAFUmKBq+nmxNjlpa9x+vte8noX6K9fOxPX zKbI= Comment: DomainKeys? See http://antispam.yahoo.com/domainkeys DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=default; d=gcc.gnu.org; h=Received:Received:X-SWARE-Spam-Status:X-Spam-Check-By:Received:Received:Received:Received:Date:From:To:Cc:Subject:Message-ID:References:MIME-Version:Content-Type:Content-Disposition:In-Reply-To:User-Agent:X-IsSubscribed:Mailing-List:Precedence:List-Id:List-Unsubscribe:List-Archive:List-Post:List-Help:Sender:Delivered-To; b=ePwFk3zBllNSbrKxeM6sGQDbzwMutDX+auvih8SjH3Owg0PzGqLBEZ0cPK0OpD Xqrq21D30ktrX5uPqabfP4HK+K4SKe90/25+Q/tGADYtfK1wb7g4ThKj8aSXQ84q mF+qqmXUUvHEIeurXvwBTmdn7qmKPXWES6dUv4rC/i6DE=; Received: (qmail 32251 invoked by alias); 31 Oct 2012 16:33:17 -0000 Received: (qmail 32228 invoked by uid 22791); 31 Oct 2012 16:33:15 -0000 X-SWARE-Spam-Status: No, hits=-2.1 required=5.0 tests=AWL, BAYES_00, RP_MATCHES_RCVD X-Spam-Check-By: sourceware.org Received: from intrepid.intrepid.com (HELO mail.intrepid.com) (74.95.8.113) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Wed, 31 Oct 2012 16:33:08 +0000 Received: from screamer.local (screamer.local [10.10.1.2]) by mail.intrepid.com (8.14.5/8.14.5) with ESMTP id q9VGWpK4009167 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Wed, 31 Oct 2012 09:32:51 -0700 Received: from screamer.local (screamer.local [127.0.0.1]) by screamer.local (8.14.4/8.14.4) with ESMTP id q9VGX7mV009020; Wed, 31 Oct 2012 09:33:07 -0700 Received: (from gary@localhost) by screamer.local (8.14.4/8.14.4/Submit) id q9VGX79U009019; Wed, 31 Oct 2012 09:33:07 -0700 Date: Wed, 31 Oct 2012 09:33:06 -0700 From: Gary Funck To: Vladimir Makarov Cc: GCC Patches Subject: Re: patch to fix PR55106 Message-ID: <20121031163306.GI3805@intrepid.com> References: <508DD119.5040509@redhat.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <508DD119.5040509@redhat.com> User-Agent: Mutt/1.5.21 (2010-09-15) X-IsSubscribed: yes 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 On 10/28/12 20:43:05, Vladimir Makarov wrote: > The following patch fixes PR55106. A value in GENERAL_REGS is > inherited into a move with destination pseudo of SSE_REGS. It > results into secondary move for which inheritance is tried again an > again. It means cycling LRA passes. > > The patch was successfully bootstrapped on x86/x86-64. This patch fails on IA64, due to unused variables on an #ifndef path. This fix, or something like it is needed. Index: gcc/lra-constraints.c =================================================================== --- gcc/lra-constraints.c (revision 192988) +++ gcc/lra-constraints.c (working copy) @@ -3591,7 +3591,8 @@ skip_usage_debug_insns (rtx usage_insns) USAGE_INSNS after inserting inherited pseudo of class INHER_CL into the insn. */ static bool -check_secondary_memory_needed_p (enum reg_class inher_cl, rtx usage_insns) +check_secondary_memory_needed_p (enum reg_class inher_cl ATTRIBUTE_UNUSED, + rtx usage_insns ATTRIBUTE_UNUSED) { #ifndef SECONDARY_MEMORY_NEEDED return false;