On June 26, 2014 12:03:21 AM CEST, Martin Jambor <mjam...@suse.cz> wrote: >Hi, > >On Wed, Jun 25, 2014 at 03:14:31PM -0600, Jeff Law wrote: >> On 06/24/14 14:19, Martin Jambor wrote: >> >On Mon, Jun 23, 2014 at 03:35:01PM +0200, Bernd Edlinger wrote: >> >>Hi Martin, >> >> >> >>>> >> >>>>Well actually, I am not sure if we ever wanted to have a race >condition here. >> >>>>Have you seen any impact of --param allow-store-data-races on any >benchmark? >> >>> >> >>>It's trivially to write one. The only pass that checks the param >is >> >>>tree loop invariant motion and it does that when it applies >store-motion. >> >>>Register pressure increase is increased by a factor of two. >> >>> >> >>>So I'd agree that we might want to disable this again for -Ofast. >> >>> >> >>>As nothing tests for the PACKED variants nor for the LOAD variant >> >>>I'd rather remove those. Claiming we don't create races for those >> >>>when you disable it via the param is simply not true. >> >>> >> >>>Thanks, >> >>>Richard. >> >>> >> >> >> >>OK, please go ahead with your patch. >> > >> >Perhaps not unsurprisingly, the patch is very similar. Bootstrapped >> >and tested on x86_64-linux. OK for trunk? >> > >> >Thanks, >> > >> >Martin >> > >> > >> >2014-06-24 Martin Jambor <mjam...@suse.cz> >> > >> > * params.def (PARAM_ALLOW_LOAD_DATA_RACES) >> > (PARAM_ALLOW_PACKED_LOAD_DATA_RACES) >> > (PARAM_ALLOW_PACKED_STORE_DATA_RACES): Removed. >> > (PARAM_ALLOW_STORE_DATA_RACES): Set default to zero. >> > * opts.c (default_options_optimization): Set >> > PARAM_ALLOW_STORE_DATA_RACES to one at -Ofast. >> > * doc/invoke.texi (allow-load-data-races) >> > (allow-packed-load-data-races, allow-packed-store-data-races): >> > Removed. >> > (allow-store-data-races): Document the new default. >> > >> >testsuite/ >> > * g++.dg/simulate-thread/bitfields-2.C: Remove >allow-load-data-races >> > parameter. >> > * g++.dg/simulate-thread/bitfields.C: Likewise. >> > * gcc.dg/simulate-thread/strict-align-global.c: Remove >> > allow-packed-store-data-races parameter. >> > * gcc.dg/simulate-thread/subfields.c: Likewise. >> > * gcc.dg/tree-ssa/20050314-1.c: Set parameter >allow-store-data-races >> > to one. >> Don't we want to deprecate, not remove the dead options? >> > >Is there a mechanism for deprecating parameters (I could not quickly >find any) or do you mean to leave them there and only document them as >deprecated? > >I am not really concerned how we deal with the unused parameters, >removing or any form of deprecating is fine with me.
--params are not a stable interface, so we can just remove those. Of course this would be the opportunity to introduce a real option for this task and leave the param as an implementation detail. Richard. >Thanks, > >Martin