diff options
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/config/arm/arm-c.c | 8 |
2 files changed, 12 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 5bfb202..72f0e9e 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2015-11-16 Christian Bruel <christian.bruel@st.com> + + PR target/65837 + * config/arm/arm-c.c (arm_cpu_builtins): Conditionally set and reset + __ARM_FEATURE_FMA and __ARM_NEON_FP, __ARM_FP. + 2015-11-16 James Greenhalgh <james.greenhalgh@arm.com> * config/aarch64/aarch64.c (cortexa57_branch_costs): New. diff --git a/gcc/config/arm/arm-c.c b/gcc/config/arm/arm-c.c index e94fa10..c336a16 100644 --- a/gcc/config/arm/arm-c.c +++ b/gcc/config/arm/arm-c.c @@ -129,18 +129,22 @@ arm_cpu_builtins (struct cpp_reader* pfile) if (TARGET_ARM_FP) builtin_define_with_int_value ("__ARM_FP", TARGET_ARM_FP); + else + cpp_undef (pfile, "__ARM_FP"); + if (arm_fp16_format == ARM_FP16_FORMAT_IEEE) builtin_define ("__ARM_FP16_FORMAT_IEEE"); if (arm_fp16_format == ARM_FP16_FORMAT_ALTERNATIVE) builtin_define ("__ARM_FP16_FORMAT_ALTERNATIVE"); - if (TARGET_FMA) - builtin_define ("__ARM_FEATURE_FMA"); + def_or_undef_macro (pfile, "__ARM_FEATURE_FMA", TARGET_FMA); def_or_undef_macro (pfile, "__ARM_NEON__", TARGET_NEON); def_or_undef_macro (pfile, "__ARM_NEON", TARGET_NEON); if (TARGET_NEON_FP) builtin_define_with_int_value ("__ARM_NEON_FP", TARGET_NEON_FP); + else + cpp_undef (pfile, "__ARM_NEON_FP"); /* Add a define for interworking. Needed when building libgcc.a. */ if (arm_cpp_interwork) |