From 4c3784ae0fb0a3cc3a3a6c262e6dff0908a0d795 Mon Sep 17 00:00:00 2001 From: Georg-Johann Lay Date: Thu, 17 Oct 2019 15:06:22 +0000 Subject: [PATCH] Fix breakage introduced by r276985. * config/avr/avr.c (avr_option_override): Remove set of PARAM_ALLOW_STORE_DATA_RACES. * common/config/avr/avr-common.c (avr_option_optimization_table) [OPT_LEVELS_ALL]: Turn on -fallow-store-data-races. From-SVN: r277115 --- gcc/ChangeLog | 9 +++++++++ gcc/common/config/avr/avr-common.c | 5 +++++ gcc/config/avr/avr.c | 9 --------- 3 files changed, 14 insertions(+), 9 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 7cc72d7ee02..2d91ec1938b 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,12 @@ +2019-10-17 Georg-Johann Lay + + Fix breakage introduced by r276985. + + * config/avr/avr.c (avr_option_override): Remove set of + PARAM_ALLOW_STORE_DATA_RACES. + * common/config/avr/avr-common.c (avr_option_optimization_table) + [OPT_LEVELS_ALL]: Turn on -fallow-store-data-races. + 2019-10-17 H.J. Lu * config/i386/i386.h (processor_costs): Add clear_ratio. diff --git a/gcc/common/config/avr/avr-common.c b/gcc/common/config/avr/avr-common.c index 15ba4403216..dae42e7d46d 100644 --- a/gcc/common/config/avr/avr-common.c +++ b/gcc/common/config/avr/avr-common.c @@ -38,6 +38,11 @@ static const struct default_options avr_option_optimization_table[] = { OPT_LEVELS_ALL, OPT_fcaller_saves, NULL, 0 }, { OPT_LEVELS_1_PLUS_NOT_DEBUG, OPT_mgas_isr_prologues, NULL, 1 }, { OPT_LEVELS_1_PLUS, OPT_mmain_is_OS_task, NULL, 1 }, + /* Allow optimizer to introduce store data races. This used to be the + default -- it was changed because bigger targets did not see any + performance decrease. For the AVR though, disallowing data races + introduces additional code in LIM and increases reg pressure. */ + { OPT_LEVELS_ALL, OPT_fallow_store_data_races, NULL, 1 }, { OPT_LEVELS_NONE, 0, NULL, 0 } }; diff --git a/gcc/config/avr/avr.c b/gcc/config/avr/avr.c index 3ccff8ebedc..c630a309229 100644 --- a/gcc/config/avr/avr.c +++ b/gcc/config/avr/avr.c @@ -741,15 +741,6 @@ avr_option_override (void) if (avr_strict_X) flag_caller_saves = 0; - /* Allow optimizer to introduce store data races. This used to be the - default - it was changed because bigger targets did not see any - performance decrease. For the AVR though, disallowing data races - introduces additional code in LIM and increases reg pressure. */ - - maybe_set_param_value (PARAM_ALLOW_STORE_DATA_RACES, 1, - global_options.x_param_values, - global_options_set.x_param_values); - /* Unwind tables currently require a frame pointer for correctness, see toplev.c:process_options(). */