From: Senthil Kumar Selvaraj Date: Tue, 2 Feb 2016 16:01:45 +0000 (+0000) Subject: avr.c (avr_option_override): Set PARAM_ALLOW_STORE_DATA_RACES to 1. X-Git-Tag: upstream/12.2.0~49030 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=c7088aeac8250400734696d8bb606764880ab5c3;p=platform%2Fupstream%2Fgcc.git avr.c (avr_option_override): Set PARAM_ALLOW_STORE_DATA_RACES to 1. * config/avr/avr.c (avr_option_override): Set PARAM_ALLOW_STORE_DATA_RACES to 1. From-SVN: r233078 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 3b548f5..c2d824e 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2016-02-02 Senthil Kumar Selvaraj + + * config/avr/avr.c (avr_option_override): Set + PARAM_ALLOW_STORE_DATA_RACES to 1. + 2016-02-02 Richard Biener PR tree-optimization/69595 diff --git a/gcc/config/avr/avr.c b/gcc/config/avr/avr.c index e557772..a7728e3 100644 --- a/gcc/config/avr/avr.c +++ b/gcc/config/avr/avr.c @@ -43,6 +43,7 @@ #include "expr.h" #include "langhooks.h" #include "cfgrtl.h" +#include "params.h" #include "builtins.h" #include "context.h" #include "tree-pass.h" @@ -410,6 +411,15 @@ 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(). */