This is an archive of the discontinued LLVM Phabricator instance.

[ELF] - Change shift2 constant of GNU_HASH from 6->11.
AbandonedPublic

Authored by grimar on Jan 12 2018, 7:07 AM.

Details

Summary

This is for PR35536 ("Bug 35536 - lld might be creating DSOs that takes more time to
load for the dynamic loader than those created by gold").

shift2 is shift count used by the Bloom filter.

latest benchmark performed today of fresh configuration
(previous my results are available on bug page)
shows this change reduces run time of "ninja check-llvm"
for LLVM built with and -DBUILD_SHARED_LIBS=ON from ~413.45s to ~401.93s.
gold time is: ~411.1s

Diff Detail

Event Timeline

grimar created this revision.Jan 12 2018, 7:07 AM
ruiu added a comment.Jan 12 2018, 11:58 AM

I also wonder how these initial values (6 and 5) were decided.

In D41993#975015, @ruiu wrote:

I also wonder how these initial values (6 and 5) were decided.

As far as I can remember, these values were selected more or less arbitrary as log2(TargetBits). If other values prove to be more optimal, there are no objections from me to using the new ones.

grimar abandoned this revision.Jan 24 2018, 4:56 AM

Suspended basing on discussion in mail list.