This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH, AArch64] Add Cortex-A53 erratum 843419 configure-time option
- From: Yvan Roux <yvan dot roux at linaro dot org>
- To: Marcus Shawcroft <marcus dot shawcroft at gmail dot com>
- Cc: "gcc-patches at gcc dot gnu dot org" <gcc-patches at gcc dot gnu dot org>, Maxim Kuvyrkov <maxim dot kuvyrkov at linaro dot org>, Richard Earnshaw <Richard dot Earnshaw at arm dot com>, James Greenhalgh <james dot greenhalgh at arm dot com>
- Date: Fri, 1 May 2015 13:39:23 +0200
- Subject: Re: [PATCH, AArch64] Add Cortex-A53 erratum 843419 configure-time option
- Authentication-results: sourceware.org; auth=none
- References: <CAD57uCdGEc4PH=V4DQpTVuCvTSJx35pvS_yAE_vQGmUYRDrZBA at mail dot gmail dot com> <CAFqB+PzJmQo25P1NR8cfA814EoeSquPYE5Vt_8mhU9Xctm_AAQ at mail dot gmail dot com>
Hi Marcus,
(Sorry wanted to cc you in my first mail but seems that gmail prefers
Maxim to Marcus ! ;)
On 1 May 2015 at 13:11, Marcus Shawcroft <marcus.shawcroft@gmail.com> wrote:
> On 1 May 2015 at 10:11, Yvan Roux <yvan.roux@linaro.org> 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.
Yes indeed.
> 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.
Ok I'll add the -mfix-cortex-a53-843419 flags to be consistent.
Cheers
Yvan
> 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 <yvan.roux@linaro.org>
>>
>> * 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.