Hi,

On Thu, 26 Jun 2014 08:43:46, Richard Biener wrote:
>
> 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.
>

well, of course, given the fact that the --param allow-store-data-races=0 is 
actually used now
by linux kernel makefiles we should keep this parameter.

I'd agree with Richard about the other parameters.

Note however that they are not really a secret any more:

See https://gcc.gnu.org/wiki/Atomic/GCCMM/ExecutiveSummary
where these --params are documented, should this page be adjusted too when
we remove them?


Bernd.

> Richard.
>
>>Thanks,
>>
>>Martin
>
>
                                          

Reply via email to