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 | _______________________________________________ barebox mailing list barebox@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/barebox