[PATCH] Drop profile reproducibility flag as it is not used.
Martin Liška
mliska@suse.cz
Tue Jan 26 11:47:24 GMT 2021
On 1/25/21 3:55 PM, Jan Hubicka wrote:
>> I've just installed the patch.
>>
>> About the negative total value. Something similar can handle it:
>> diff --git a/libgcc/libgcov.h b/libgcc/libgcov.h
>> index df08e882dd7..ddc688509bd 100644
>> --- a/libgcc/libgcov.h
>> +++ b/libgcc/libgcov.h
>> @@ -443,7 +443,13 @@ gcov_topn_add_value (gcov_type *counters, gcov_type value, gcov_type count,
>> int use_atomic, int increment_total)
>> {
>> if (increment_total)
>> - gcov_counter_add (&counters[0], 1, use_atomic);
>> + {
>> + /* In the multi-threaded mode, we can have an already merged profile
>> + with a negative total value. In that case, we should bail out. */
>> + if (counters[0] < 0)
>> + return 0;
>> + gcov_counter_add (&counters[0], 1, use_atomic);
>> + }
>> struct gcov_kvp *prev_node = NULL;
>> struct gcov_kvp *minimal_node = NULL;
>>
>> What do you think?
>
> Looks good to me, modlo the obvious race condition of concurent upate
> between if and gcov, but that makes the chance significantly smaller
> than before (between merging and stream-out). So I think it makes sense
> to do it.
All right, I've just installed the patch.
Thanks,
Martin
>
> Thanks,
> Honza
>
More information about the Gcc-patches
mailing list