Hi James, This commit (SVN r206045) seems to have introduced a problem when compiling multiple source files if a -mcpu option is also present on the command line.
This can be reproduced in a arm-unknown-linux-gnueabihf build with any source file which use floating point arguments/results. For example ===== t.c float f(void) { return 1.0f;} ===== Note that the example command line here specifies t.c twice, although any two source files can be used. It is the second compilation which triggers the error. $ ~/tools/tools-arm-unknown-linux-gnueabihf-trunk/bin/arm-unknown-linux-gnueabihf-gcc -mcpu=cortex-a15 -O2 -c t.c t.c t.c: In function âfâ: t.c:2:1: sorry, unimplemented: Thumb-1 hard-float VFP ABI float f(void) { return 1.0f;} ^ Thanks in advance for taking a look Charles On 17 December 2013 11:53, Richard Earnshaw <rearn...@arm.com> wrote: > On 17/12/13 10:40, James Greenhalgh wrote: >> >> Hi, >> >> This patch adds machinery to the driver to ensure that big.LITTLE >> style tuning names are rewritten before they are passed to the >> assembler. This reduces the coupling needed between GCC versions >> and assembler versions. >> >> The rule is simple, we truncate the CPU name at the first '.' >> character we see. >> >> Thus -mcpu=cortex-a15.cortex-a7 would be truncated to -mcpu=cortex-a15. >> >> Bootstrapped on a ChromeBook and checked for an arm-none-eabi and >> an arm-none-linux-gnueabi build. >> >> Thanks, >> James >> >> --- >> gcc/ >> >> 2013-12-17 James Greenhalgh <james.greenha...@arm.com> >> >> * common/config/arm/arm-common.c (arm_rewrite_selected_cpu): New. >> (arm_rewrite_mcpu): Likewise. >> * config/arm/arm-protos.h (arm_rewrite_selected_cpu): New. >> * config/arm/arm.h (BIG_LITTLE_SPEC): New. >> (BIG_LITTLE_SPEC_FUNCTIONS): Likewise. >> (EXTRA_SPEC_FUNCTIONS): Include BIG_LITTLE_SPEC_FUNCTIONS. >> (ASM_CPU_SPEC): Include BIG_LITTLE_SPEC. >> * config/arm/arm.c (arm_file_start): Rewrite arm_selecetd_cpu values. >> > > OK. > > R. > >