diff options
author | gjl <gjl@138bc75d-0d04-0410-961f-82ee72b054a4> | 2019-10-17 15:06:22 +0000 |
---|---|---|
committer | gjl <gjl@138bc75d-0d04-0410-961f-82ee72b054a4> | 2019-10-17 15:06:22 +0000 |
commit | 42828cb2ba31270fa5fe71cd5947df6731d4b8bd (patch) | |
tree | 5bc39326a1c73231feade718a58f7012bc7584ad | |
parent | 8f6446e7ad2edea046322889ca6bcbe90d20d826 (diff) |
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@277115 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r-- | gcc/ChangeLog | 9 | ||||
-rw-r--r-- | gcc/common/config/avr/avr-common.c | 5 | ||||
-rw-r--r-- | 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 <avr@gjlay.de> + + 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 <hongjiu.lu@intel.com> * 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(). */ |