From 9bbbdb49b4f8b0657893acc8f23ca952745d93ae Mon Sep 17 00:00:00 2001 From: Segher Boessenkool Date: Sun, 18 Feb 2018 15:29:05 +0100 Subject: [PATCH] Do not mess with rs6000_{single,double}_float (PR68028) For e500 family cores we do some questionable things with those flags, which does not work with LTO. So don't. * config/rs6000/rs6000.c (rs6000_option_override_internal): Don't handle rs6000_single_float and rs6000_double_float specially for e500 family CPUs. From-SVN: r257790 --- gcc/ChangeLog | 6 ++++++ gcc/config/rs6000/rs6000.c | 19 ------------------- 2 files changed, 6 insertions(+), 19 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index b47d2821373..044fbedb451 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2018-02-18 Segher Boessenkool + + * config/rs6000/rs6000.c (rs6000_option_override_internal): Don't + handle rs6000_single_float and rs6000_double_float specially for + e500 family CPUs. + 2018-02-16 Jeff Law * config/rx/rx.c (add_pop_cfi_notes): New function.; diff --git a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c index 4a6c4590ff7..d0de4b5224d 100644 --- a/gcc/config/rs6000/rs6000.c +++ b/gcc/config/rs6000/rs6000.c @@ -4820,25 +4820,6 @@ rs6000_option_override_internal (bool global_init_p) if (TARGET_DEBUG_REG || TARGET_DEBUG_TARGET) rs6000_print_isa_options (stderr, 0, "after subtarget", rs6000_isa_flags); - /* For the E500 family of cores, reset the single/double FP flags to let us - check that they remain constant across attributes or pragmas. */ - - switch (rs6000_cpu) - { - case PROCESSOR_PPC8540: - case PROCESSOR_PPC8548: - case PROCESSOR_PPCE500MC: - case PROCESSOR_PPCE500MC64: - case PROCESSOR_PPCE5500: - case PROCESSOR_PPCE6500: - rs6000_single_float = 0; - rs6000_double_float = 0; - break; - - default: - break; - } - if (main_target_opt) { if (main_target_opt->x_rs6000_single_float != rs6000_single_float) -- 2.30.2