From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 94391 invoked by alias); 20 Apr 2015 20:30:07 -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 94326 invoked by uid 89); 20 Apr 2015 20:30:06 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-0.9 required=5.0 tests=AWL,BAYES_00,SPF_PASS,T_RP_MATCHES_RCVD,UNSUBSCRIBE_BODY autolearn=no version=3.3.2 X-HELO: cam-smtp0.cambridge.arm.com Received: from fw-tnat.cambridge.arm.com (HELO cam-smtp0.cambridge.arm.com) (217.140.96.140) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with (AES256-SHA encrypted) ESMTPS; Mon, 20 Apr 2015 20:30:05 +0000 Received: from arm.com (e106375-lin.cambridge.arm.com [10.2.206.37]) by cam-smtp0.cambridge.arm.com (8.13.8/8.13.8) with ESMTP id t3KKU1Wp024231; Mon, 20 Apr 2015 21:30:02 +0100 Date: Mon, 20 Apr 2015 20:30:00 -0000 From: James Greenhalgh To: Kyrill Tkachov Cc: GCC Patches , Marcus Shawcroft , Richard Earnshaw Subject: Re: [PATCH][AArch64] Increase static buffer size in aarch64_rewrite_selected_cpu Message-ID: <20150420203001.GB7414@arm.com> References: <55352847.8080302@arm.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <55352847.8080302@arm.com> User-Agent: Mutt/1.5.21 (2010-09-15) X-IsSubscribed: yes X-SW-Source: 2015-04/txt/msg01098.txt.bz2 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. James