From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 5217 invoked by alias); 20 May 2011 11:41:43 -0000 Received: (qmail 5192 invoked by uid 22791); 20 May 2011 11:41:42 -0000 X-SWARE-Spam-Status: No, hits=-2.6 required=5.0 tests=AWL,BAYES_00,RCVD_IN_DNSWL_LOW X-Spam-Check-By: sourceware.org Received: from mail-ww0-f51.google.com (HELO mail-ww0-f51.google.com) (74.125.82.51) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Fri, 20 May 2011 11:41:27 +0000 Received: by wwf26 with SMTP id 26so3614734wwf.8 for ; Fri, 20 May 2011 04:41:26 -0700 (PDT) Received: by 10.227.206.66 with SMTP id ft2mr4035769wbb.94.1305891686489; Fri, 20 May 2011 04:41:26 -0700 (PDT) Received: from [192.168.32.37] (fw-lnat.cambridge.arm.com [217.140.96.63]) by mx.google.com with ESMTPS id s20sm2229631wbh.6.2011.05.20.04.41.24 (version=SSLv3 cipher=OTHER); Fri, 20 May 2011 04:41:24 -0700 (PDT) Message-ID: <4DD65363.5010102@linaro.org> Date: Fri, 20 May 2011 13:28:00 -0000 From: Ramana Radhakrishnan User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.2.17) Gecko/20110424 Lightning/1.0b2 Thunderbird/3.1.10 MIME-Version: 1.0 To: Chung-Lin Tang 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> In-Reply-To: <4DD273C4.6020104@codesourcery.com> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit 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/msg01447.txt.bz2 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 ? 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. cheers Ramana