[PATCH] Convert __builtin_expect to __glibc_(un)likely throughout elf/.

Joseph Myers joseph@codesourcery.com
Mon Jun 4 14:36:00 GMT 2018


On Sat, 2 Jun 2018, Zack Weinberg wrote:

> I would appreciate someone checking over this patch very carefully
> indeed.  In a whole bunch of places, __builtin_expect was used in a
> way that did not map mechanically to the newer convention.  The test
> suite caught one mistake; I'm not confident I didn't make any more.

I think this means there is a case for splitting this patch up into a part 
that doesn't change installed stripped shared libraries (on one platform - 
so at least the sense of comparisons etc. is unchanged on that platform 
after the patch, even if likely/unlikely could be wrong sometimes without 
being detected by such a comparison of installed stripped shared 
libraries), and a part that does (presumably because the mapping isn't 
purely mechanical so compiler IR changes enough to result in different 
code generated), with the latter needing more careful review that no 
semantics have changed.

-- 
Joseph S. Myers
joseph@codesourcery.com



More information about the Libc-alpha mailing list