From f0cd49c501a98050f8b2c71b6866f57e94a4c1c6 Mon Sep 17 00:00:00 2001 From: Richard Earnshaw Date: Fri, 16 Jun 2017 21:04:52 +0000 Subject: [PATCH] [arm] Explicitly set .fpu in cmse_nonsecure_call.S This file is missing a .fpu directive and was relying on the compiler driver passing through a -mfpu= command line option. When the FPU is auto, that will not be passed through correctly, so set something suitable within the file itself. libgcc: * config/arm/cmse_nonsecure_call.S: Explicitly set the FPU. From-SVN: r249297 --- libgcc/ChangeLog | 4 ++++ libgcc/config/arm/cmse_nonsecure_call.S | 8 ++++++++ 2 files changed, 12 insertions(+) diff --git a/libgcc/ChangeLog b/libgcc/ChangeLog index 9a97dba918f..63b973c58e6 100644 --- a/libgcc/ChangeLog +++ b/libgcc/ChangeLog @@ -1,3 +1,7 @@ +2017-06-16 Richard Earnshaw + + * config/arm/cmse_nonsecure_call.S: Explicitly set the FPU. + 2017-06-09 Martin Liska * libgcov-profiler.c (__gcov_indirect_call_profiler_v2): diff --git a/libgcc/config/arm/cmse_nonsecure_call.S b/libgcc/config/arm/cmse_nonsecure_call.S index 653ad149291..9b7dbb4f574 100644 --- a/libgcc/config/arm/cmse_nonsecure_call.S +++ b/libgcc/config/arm/cmse_nonsecure_call.S @@ -24,6 +24,14 @@ . */ .syntax unified +#ifdef __ARM_PCS_VFP +# if __ARM_FP & 0x8 + .fpu fpv5-d16 +# else + .fpu fpv4-sp-d16 +# endif +#endif + .thumb .global __gnu_cmse_nonsecure_call __gnu_cmse_nonsecure_call: