This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
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
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |