From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 10830 invoked by alias); 10 Feb 2014 14:10:51 -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 10819 invoked by uid 89); 10 Feb 2014 14:10:51 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-1.3 required=5.0 tests=AWL,BAYES_00,RCVD_IN_DNSWL_LOW,SPF_PASS autolearn=ham version=3.3.2 X-HELO: service87.mimecast.com Received: from service87.mimecast.com (HELO service87.mimecast.com) (91.220.42.44) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Mon, 10 Feb 2014 14:10:50 +0000 Received: from cam-owa1.Emea.Arm.com (fw-tnat.cambridge.arm.com [217.140.96.21]) by service87.mimecast.com; Mon, 10 Feb 2014 14:10:48 +0000 Received: from [10.1.208.33] ([10.1.255.212]) by cam-owa1.Emea.Arm.com with Microsoft SMTPSVC(6.0.3790.3959); Mon, 10 Feb 2014 14:10:46 +0000 Message-ID: <52F8DDE6.6060000@arm.com> Date: Mon, 10 Feb 2014 14:10:00 -0000 From: Richard Earnshaw User-Agent: Mozilla/5.0 (X11; Linux i686 on x86_64; rv:15.0) Gecko/20120907 Thunderbird/15.0.1 MIME-Version: 1.0 To: Jeff Law CC: Vladimir Makarov , GCC Patches Subject: Re: RFA: patch for PR59535 References: <52F523D1.30805@redhat.com> <52F558FD.1020408@redhat.com> In-Reply-To: <52F558FD.1020408@redhat.com> X-MC-Unique: 114021014104801301 Content-Type: text/plain; charset=WINDOWS-1252 Content-Transfer-Encoding: quoted-printable X-IsSubscribed: yes X-SW-Source: 2014-02/txt/msg00595.txt.bz2 On 07/02/14 22:06, Jeff Law wrote: > On 02/07/14 11:20, Vladimir Makarov wrote: >> The following patch improves code size for ARM. Before the patch >> CSiBE size generated by GCC configured --with-arch=3Darmv7-a >> --with-fpu=3Dvfpv3-d16 --with-float=3Dhard (with -mthumb) was >> >> 2414926 >> >> After the patch the size is >> >> 2396798 >> >> For comparison, when the reload pass is used the size is >> >> 2400154 >> >> The change in arm.h is to prevent reloading sp as an address by LRA. >> Reload has no such problem as it uses legitimate address hook and LRA >> mostly relies on base_reg_class. >> >> Richard, is this part ok to commit to the trunk? > I think so. It's fixing a P1 regression, that makes it "in scope" as=20 > far as I'm concerned. >=20 While this is a useful fix for Thumb2 (which had regressed slightly), the PR is for Thumb1. I tried this patch when compiling CSiBE with -mthumb -mcpu=3Darm7tdmi -Os. Sadly it made no difference at all to the numbers there. So this does not resolve PR59535. R. >=20 >> >> The change in lra-constraints.c is for correct alternative choice in >> move patterns when pseudo is of class of general reg and one alternative >> contains lo regs and another one contains hi regs. >> >> The patch was bootstrapped on x86/x86-64 and arm. >> >> 2014-02-07 Vladimir Makarov >> >> PR rtl-optimization/59535 >> * lra-constraints.c (process_alt_operands): Encourage alternati= ve >> when unassigned pseudo class is superset of the alternative cla= ss. >> * config/arm/arm.h (MODE_BASE_REG_CLASS): Return CORE_REGS for >> Thumb2 for LRA. > Just one nit in the comment in lra-constraints.c > s/stil/still/ > Jeff >=20 >=20 >=20