From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 3771 invoked by alias); 22 Mar 2019 04:01:29 -0000 Mailing-List: contact crossgcc-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: crossgcc-owner@sourceware.org Received: (qmail 3650 invoked by uid 89); 22 Mar 2019 04:01:15 -0000 Authentication-Results: sourceware.org; auth=none X-Spam-SWARE-Status: Yes, score=6.5 required=5.0 tests=AWL,BAYES_99,BAYES_999,CROSSGCC_BAD,FREEMAIL_FROM,GIT_PATCH_2,HTML_MESSAGE,RCVD_IN_DNSWL_NONE,SPF_PASS autolearn=no version=3.3.1 spammy=Solutions, Amtsgericht, amtsgericht, eK X-HELO: mail-ot1-f41.google.com Received: from mail-ot1-f41.google.com (HELO mail-ot1-f41.google.com) (209.85.210.41) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Fri, 22 Mar 2019 04:01:13 +0000 Received: by mail-ot1-f41.google.com with SMTP id d24so768384otl.11 for ; Thu, 21 Mar 2019 21:01:12 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=Lu0oxfkGl11onqnSdYCT5R/CC2Z0/b5OuoVoENqFMXQ=; b=aEkwXx2+/NvRE0/yya5rE+x2qQhKvZ2hfTNOZU2YxQqaYuwNRnnG+BzIYet+dWZICk Wd8owFszUDYmZGmtSjJBXY/FaDtBwuHsyIME1MDEaws8MSc/7PekpihnrZFa9iUztAax o3rR+1R2lCN3os2N0RAZd7Duu59cQLwG15uazGxK29mFD5aaP4oOLeSJuHTNPg51ae1o JV9182k8Ew6zAbYRe4Kpkox9M8VrWjT1D6bfghFfAli5w3ZMgSCfMAG3hcARpWh46HdH CT8SNfDTQCAWBW/QUaVKE7gF7ezCtKYMbWQoXXMrS/mrPmzzmGwITW6NxxH9DhonXGoL s2Lw== MIME-Version: 1.0 References: <20190320075215.7j36mofzoewd5qfa@pengutronix.de> <20190321073332.b3725avve4p6ascg@pengutronix.de> <20190321080614.jmpycfyetz4rugui@pengutronix.de> In-Reply-To: From: Austin Morton Date: Fri, 22 Mar 2019 04:01:00 -0000 Message-ID: Subject: Re: selected processor does not support `rev r7,r7' To: Lewis Zhou Cc: crossgcc maillist , Sascha Hauer Content-Type: text/plain; charset="UTF-8" X-IsSubscribed: yes X-SW-Source: 2019-03/txt/msg00015.txt.bz2 You are correct, that is the root of the issue. Can you add -v to that gcc invocation and post the output? On Thu, Mar 21, 2019, 23:58 Lewis Zhou wrote: > Hi, > > I am pretty sure the root cause is this: > ~/OpenProj/linux-beagleboard/scripts$ arm-cortex_a8-linux-gnueabihf > -Werror -march=armv7-a -c -x c /dev/null -o "$$TMP" > cc1: error: -mfloat-abi=hard: selected processor lacks an FPU > > Why does the arm-cortex_a8-linux-gnueabihf toolchain built by ct-ng > emit this error? Which make the Kbuild believe the CC not support > armv7-a! > > > Kind regards, > Lewis > > On Fri, Mar 22, 2019 at 11:30 AM Lewis Zhou wrote: > > > > Hi, > > > > I was using arm-cortex_a8-linux-gnueabihf built by ct-ng to compile > > Linux-4.19 and got a stranger cc-option -march=armv5t > > -Wa,-march=armv7-a which is believed to cause the make failure. > > > > After some investigations, I guess that a line in the > > ./arch/arm/Makefile below generated the strange cc-option: > > > > arch-$(CONFIG_CPU_32v7) =-D__LINUX_ARM_ARCH__=7 $(call > > cc-option,-march=armv7-a,-march=armv5t -Wa$(comma)-march=armv7-a) > > > > But I have no idea why. I have tried the arm-linux-gnueabihf package > > on Ubuntu, that works ok. > > > > Kind regards, > > Lewis > > > > On Thu, Mar 21, 2019 at 4:40 PM Austin Morton > wrote: > > > > > > Any recent version of gcc should spit out a list of supported March > values if invoked with an invalid value. (read gcc 7 or higher). > > > > > > What does this command output on your compiler? > > > > > > # gcc -E -march=help -xc /dev/null > > > > > > > https://stackoverflow.com/questions/47299458/how-can-i-determine-what-architectures-gcc-supports > > > > > > On Thu, Mar 21, 2019, 04:25 Lewis Zhou wrote: > > >> > > >> Hi, > > >> > > >> I recently tried to compile the barebox bootloaer with the > > >> arm-cortex_a8-linux-gnueabihf configuration which is based on the > > >> sample configuration arm-cortex_a8-linux-gnueabi with the hardware > > >> float enabled. > > >> > > >> However, the compiler (gcc) seems not support -march=armv7-a flag. I > > >> think something is wrong as the cortex_a8 is a sub-architecture of > > >> armv7-a. > > >> > > >> The toolchain failed to compile both the barebox and the linux kernel > > >> (4.19). Please help! Attached is a response from the barebox mailing > > >> list. > > >> > > >> > > >> Kind regards, > > >> Lewis > > >> > > >> ---------- Forwarded message --------- > > >> From: Sascha Hauer > > >> Date: Thu, Mar 21, 2019 at 4:06 PM > > >> Subject: Re: selected processor does not support `rev r7,r7' > > >> To: Lewis Zhou > > >> Cc: > > >> > > >> > > >> On Thu, Mar 21, 2019 at 03:53:06PM +0800, Lewis Zhou wrote: > > >> > Hi Sascha, > > >> > > > >> > Here's the log: > > >> > > > >> > make -f scripts/Makefile.build obj=common > > >> > > > >> > arm-cortex_a8-linux-gnueabihf-gcc -Wp,-MD,common/.memory.o.d > > >> > -nostdinc -isystem > > >> > > /home/lewis/x-tools/arm-cortex_a8-linux-gnueabihf/lib/gcc/arm-cortex_a8-linux-gnueabihf/8.3.0/include > > >> > -D__KERNEL__ -D__BAREBOX__ -Iinclude > > >> > -I/home/lewis/OpenProj/barebox/dts/include > > >> > -I/home/lewis/OpenProj/barebox/arch/arm/include > > >> > -I/home/lewis/OpenProj/barebox/arch/arm/include -include > > >> > /home/lewis/OpenProj/barebox/include/linux/kconfig.h -fno-builtin > > >> > -ffreestanding -D__ARM__ -fno-strict-aliasing -marm -mlittle-endian > > >> > -mabi=aapcs-linux -mno-thumb-interwork -D__LINUX_ARM_ARCH__=7 > > >> > -march=armv5t -Wa,-march=armv7-a -msoft-float -mthumb > > >> > > >> -march=armv5t -Wa,-march=armv7-a shouldn't be here. It comes from this > > >> line in arch/arm/Makefile: > > >> > > >> arch-$(CONFIG_CPU_32v7) :=-D__LINUX_ARM_ARCH__=7 $(call > > >> cc-option,-march=armv7-a,-march=armv5t -Wa$(comma)-march=armv7-a) > > >> > > >> This means the build process will use "-march=armv7-a" when the > compiler > > >> supports it. Apparently it does not, so it will fall back to > > >> "-march=armv5t -Wa,-march=armv7-a". armv5t doesn't support thumb2 > code, > > >> only thumb and as it seems thumb does not support the "rev" > instruction. > > >> > > >> Your compiler should really support "-march=armv7-a". If it doesn't I > > >> really think there is something wrong with it. > > >> > > >> Sascha > > >> > > >> -- > > >> Pengutronix e.K. | > | > > >> Industrial Linux Solutions | > http://www.pengutronix.de/ | > > >> Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: > +49-5121-206917-0 | > > >> Amtsgericht Hildesheim, HRA 2686 | Fax: > +49-5121-206917-5555 | >