From: Christian Bruel Date: Mon, 16 Nov 2015 11:20:02 +0000 (+0100) Subject: re PR target/65837 ([arm-linux-gnueabihf] lto1 target specific builtin not available) X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=b8c7c62b2dbbdf355adb56d8250e68222ae0febb;p=gcc.git re PR target/65837 ([arm-linux-gnueabihf] lto1 target specific builtin not available) 2015-11-16 Christian Bruel PR target/65837 * config/arm/arm-c.c (arm_cpu_builtins): Conditionally set and reset __ARM_FEATURE_FMA and __ARM_NEON_FP, __ARM_FP. From-SVN: r230410 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 5bfb202226b..72f0e9e2a0c 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2015-11-16 Christian Bruel + + 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 * 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 e94fa107537..c336a167086 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)