This is the mail archive of the
mailing list for the GCC project.
Re: [PATCH][AArch64] Increase static buffer size in aarch64_rewrite_selected_cpu
- From: James Greenhalgh <james dot greenhalgh at arm dot com>
- To: Kyrill Tkachov <kyrylo dot tkachov at arm dot com>
- Cc: GCC Patches <gcc-patches at gcc dot gnu dot org>, Marcus Shawcroft <Marcus dot Shawcroft at arm dot com>, Richard Earnshaw <Richard dot Earnshaw at arm dot com>
- Date: Mon, 20 Apr 2015 21:30:01 +0100
- Subject: Re: [PATCH][AArch64] Increase static buffer size in aarch64_rewrite_selected_cpu
- Authentication-results: sourceware.org; auth=none
- References: <55352847 dot 8080302 at arm dot com>
On Mon, Apr 20, 2015 at 05:24:39PM +0100, Kyrill Tkachov wrote:
> Hi all,
> When trying to compile a testcase with -mcpu=cortex-a57+crypto+nocrc I got
> the weird assembler error:
> Assembler messages:
> Error: missing architectural extension
> Error: unrecognized option -mcpu=cortex-a57+crypto+no
> The problem is the aarch64_rewrite_selected_cpu that is used to rewrite -mcpu
> for big.LITTLE options has a limit of 20 characters in what it handles, which
> we can exhaust quickly if we specify architectural extensions in a
> fine-grained manner.
> This patch increases that character limit to 128 and adds an assert to
> confirm that no bad things happen.
You've implemented this as a hard ICE, was that intended?
> It also fixes another problem: If we pass a big.LITTLE combination with
> feature modifiers like: -mcpu=cortex-a57.cortex-a53+nosimd
> the code will truncate everything after '.', thus destroying the extensions
> that we want to pass. The patch adds code to stitch the extensions back on
> after the LITTLE cpu is removed.
UGH, I should not be allowed near strings! This code is on my list of
things I'd love to rewrite to this year! For now, this is OK and please
also queue it for 5.2 when that opens for patches.
> Ok for trunk?
Yes, thanks. And sorry again for introducing this in the first place.