From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 121768 invoked by alias); 1 May 2015 11:11:30 -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 121758 invoked by uid 89); 1 May 2015 11:11:29 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-2.4 required=5.0 tests=AWL,BAYES_00,FREEMAIL_FROM,RCVD_IN_DNSWL_LOW,SPF_PASS autolearn=ham version=3.3.2 X-HELO: mail-wi0-f176.google.com Received: from mail-wi0-f176.google.com (HELO mail-wi0-f176.google.com) (209.85.212.176) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with (AES128-GCM-SHA256 encrypted) ESMTPS; Fri, 01 May 2015 11:11:26 +0000 Received: by wizk4 with SMTP id k4so49607184wiz.1 for ; Fri, 01 May 2015 04:11:22 -0700 (PDT) MIME-Version: 1.0 X-Received: by 10.194.120.3 with SMTP id ky3mr17232476wjb.156.1430478682613; Fri, 01 May 2015 04:11:22 -0700 (PDT) Received: by 10.28.104.138 with HTTP; Fri, 1 May 2015 04:11:22 -0700 (PDT) In-Reply-To: References: Date: Fri, 01 May 2015 11:11:00 -0000 Message-ID: Subject: Re: [PATCH, AArch64] Add Cortex-A53 erratum 843419 configure-time option From: Marcus Shawcroft To: Yvan Roux Cc: "gcc-patches@gcc.gnu.org" , Maxim Kuvyrkov , Richard Earnshaw , James Greenhalgh Content-Type: text/plain; charset=UTF-8 X-IsSubscribed: yes X-SW-Source: 2015-05/txt/msg00031.txt.bz2 On 1 May 2015 at 10:11, Yvan Roux wrote: > Hi all, > > As described in the thread bellow, there is a link-time workaround for > an erratum (843419) of some early revision of Cortex-A53. Similarly > to what was done for a previous erratum, this patch adds a new > configure-time option --enable-fix-cortex-a53-843419 that pass down > the linker option --fix-cortex-a53-843419. > > I haven't implemented flags to explicitly disable/enable it during > compilation as it is only a linker workaround, but I can do it if you > think it's necessary. Hi Yvan, In the case of the 835769 erratum, providing such GCC configury made (some) sense because the workaround included both a GCC and an LD component. GCC in effect needed the option to control GCC behaviour aswell as LD behaviour. The same is not true of 843419. The net effect of the proposed patch here is to provide a configure option in GCC to change the default behaviour of LD, with no other purpose within GCC itself. This seems rather bizarre to me. I would have thought that if the sole objective is to change the default behaviour of LD, then there should be configure time options on LD, rather than GCC. That said, I can also see that providing consistent behaviour across these various work around configure options and consistent run time options for the user will reduce confusion in the future, both for folks building toolchains and for the folks using them. From this perspective I think it would be better to go with this patch *and* include the flags explicitly such the both of the current workaround have equivalent configury behaviour and have equivalent user flags at run time. Cheers /Marcus > > https://sourceware.org/ml/binutils-cvs/2015-04/msg00012.html > > Is it ok for trunk and/or branches ? > > Thanks, > Yvan > > 2015-05-01 Yvan Roux > > * configure.ac: Add --enable-fix-cortex-a53-843419 option. > * configure: Regenerate. > * config/aarch64/aarch64-elf-raw.h (CA53_ERR_843419_SPEC): Define. > (LINK_SPEC): Include CA53_ERR_843419_SPEC. > * config/aarch64/aarch64-linux.h (CA53_ERR_843419_SPEC): Define. > (LINK_SPEC): Include CA53_ERR_843419_SPEC. > * doc/install.texi (aarch64*-*-*): Document > new --enable-fix-cortex-a53-843419 option.