From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 8555 invoked by alias); 20 May 2011 11:47:09 -0000 Received: (qmail 8546 invoked by uid 22791); 20 May 2011 11:47:08 -0000 X-SWARE-Spam-Status: No, hits=-1.8 required=5.0 tests=AWL,BAYES_00,T_RP_MATCHES_RCVD X-Spam-Check-By: sourceware.org Received: from mail.codesourcery.com (HELO mail.codesourcery.com) (38.113.113.100) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Fri, 20 May 2011 11:46:54 +0000 Received: (qmail 6497 invoked from network); 20 May 2011 11:46:53 -0000 Received: from unknown (HELO ?192.168.1.16?) (cltang@127.0.0.2) by mail.codesourcery.com with ESMTPA; 20 May 2011 11:46:53 -0000 Message-ID: <4DD654AE.7070301@codesourcery.com> Date: Fri, 20 May 2011 13:49:00 -0000 From: Chung-Lin Tang User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2.17) Gecko/20110414 Thunderbird/3.1.10 MIME-Version: 1.0 To: Ramana Radhakrishnan CC: gcc-patches , Richard Earnshaw , Ramana Radhakrishnan , rdsandiford@googlemail.com Subject: Re: [patch, ARM] Fix PR42017, LR not used in leaf functions References: <4DB8DB6D.1050107@codesourcery.com> <4DD273C4.6020104@codesourcery.com> <4DD65363.5010102@linaro.org> In-Reply-To: <4DD65363.5010102@linaro.org> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-IsSubscribed: yes 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 X-SW-Source: 2011-05/txt/msg01449.txt.bz2 On 2011/5/20 下午 07:41, Ramana Radhakrishnan wrote: > On 17/05/11 14:10, Chung-Lin Tang wrote: >> On 2011/5/13 04:26 PM, Richard Sandiford wrote: >>> Richard Sandiford writes: >>>> Chung-Lin Tang writes: >>>>> My fix here simply adds 'reload_completed' as an additional condition >>>>> for EPILOGUE_USES to return true for LR_REGNUM. I think this should be >>>>> valid, as correct LR save/restoring is handled by the >>>>> epilogue/prologue >>>>> code; it should be safe for IRA to treat it as a normal call-used >>>>> register. >>>> >>>> FWIW, epilogue_completed might be a more accurate choice. >>> >>> I still stand by this, although I realise no other target does it. >> >> Did a re-test of the patch just to be sure, as expected the test results >> were also clear. Attached is the updated patch. > > Can you specify what you tested with this patch ? Native bootstrap success, plus C/C++ and libstdc++ tests. IIRC I also saw one or two FAIL->PASS in the results too (forgot specific testcases) > > So, it's interesting to note that the use of this was changed in 2007 by > zadeck as a part of the df merge. > > I can't find the patch trail beyond this on the lists. > > http://gcc.gnu.org/viewvc/branches/dataflow-branch/gcc/config/arm/arm.h?r1=120281&r2=121501 > > > It might be better to understand why this was done in the first place > for the ARM port as part of the Dataflow bring up and why folks wanted > to make this unconditional. Oh dear, more archeology... Thanks, Chung-Lin