From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 64961 invoked by alias); 16 Jan 2017 15:34:10 -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 64943 invoked by uid 89); 16 Jan 2017 15:34:09 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-4.1 required=5.0 tests=BAYES_00,KAM_LAZY_DOMAIN_SECURITY,RP_MATCHES_RCVD autolearn=ham version=3.3.2 spammy=Hx-languages-length:1406 X-HELO: foss.arm.com Received: from foss.arm.com (HELO foss.arm.com) (217.140.101.70) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Mon, 16 Jan 2017 15:34:08 +0000 Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.72.51.249]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id ED1FD707; Mon, 16 Jan 2017 07:34:06 -0800 (PST) Received: from [10.2.207.77] (e100706-lin.cambridge.arm.com [10.2.207.77]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 3918E3F3D6; Mon, 16 Jan 2017 07:34:06 -0800 (PST) Message-ID: <587CE7EC.6090208@foss.arm.com> Date: Mon, 16 Jan 2017 15:34:00 -0000 From: Kyrill Tkachov User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.2.0 MIME-Version: 1.0 To: James Greenhalgh CC: GCC Patches , Richard Earnshaw , Marcus Shawcroft Subject: Re: [PATCH][AArch64][GCC 6] PR target/79041: Correct -mpc-relative-literal-loads logic in aarch64_classify_symbol References: <58765E2D.5030609@foss.arm.com> <20170113163549.GC39391@arm.com> In-Reply-To: <20170113163549.GC39391@arm.com> Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit X-SW-Source: 2017-01/txt/msg01107.txt.bz2 On 13/01/17 16:35, James Greenhalgh wrote: > On Wed, Jan 11, 2017 at 04:32:45PM +0000, Kyrill Tkachov wrote: >> Hi all, >> >> In this PR we generated ADRP/ADD instructions with :lo12: relocations on >> symbols even though -mpc-relative-literal-loads is used. This is due to the >> confusing double-negative logic of the nopcrelative_literal_loads aarch64 >> variable and its relation to the aarch64_nopcrelative_literal_loads global >> variable in the GCC 6 branch. >> >> Wilco fixed this on trunk as part of a larger patch (r237607) and parts of >> that patch were backported, but other parts weren't and that patch now >> doesn't apply cleanly to the branch. > As I commented to Jakub at the time he made the first partial backport, > I'd much rather just see all of Wilco's patch backported. We're not on > the verge of a 6 release now, so please just backport Wilco's patch (as > should have been done all along if this had been correctly identified as > a fix rather than a clean-up). Unfortunately simply backporting the patch does not fix this PR. The aarch64_classify_symbol changes do not have the desired effect and the :lo12: relocations are generated. I'll look into it, but I believe that would require a bigger change than this one-liner. Thanks, Kyri > Thanks, > James > >