[PATCH] Remove unnecessary locking when reading iconv configuration [BZ #22062]
Florian Weimer
fweimer@redhat.com
Fri Nov 3 14:45:00 GMT 2017
On 11/01/2017 05:36 AM, Carlos O'Donell wrote:
> On 10/30/2017 09:24 AM, Florian Weimer wrote:
>>> -Â struct path_elem *result;
>>
>> I think it makes sense to keep the result variable because it can be
>> kept in a register across calls. In contrast, the global variable
>> has to be reloaded.
>
> What's the difference between loading the value of the global into result
> (a register or stack local) and then using it, versus using the value of
> the global directly, which gcc will optimize by loading it into a register
> or a pseudo (which may be given a stack slot)?
I doubt GCC will perform the optimization because you call quite a few
functions for which GCC does not know if they will modify the global or not.
Thanks,
Florian
More information about the Libc-alpha
mailing list