{"push_id":971203294,"size":1,"distinct_size":1,"ref":"refs/heads/master","head":"422764545c720f696bf7061513eac30941d39cf4","before":"866b44cbaee7b6a9dd767c98e0a61a0cf3a6fee7","commits":[{"sha":"422764545c720f696bf7061513eac30941d39cf4","author":{"email":"be9c68790499145e81c8b6c162e8905a95f7aa89@apple.com","name":"Nadav Rotem"},"message":"[Runtime] Improve the metadata hashing function.\n\nThe inputs to the hash function is pointers that have a predictable patten. The\nhashes that we were generating and using for the metadata caches were not very\ngood, and as a result we generated very deep search trees. A small change that\nimproved the utilization of the 'length' field and another bit-rotate round\nimproved the quality of the hash function.\n\nI am going to attach to the github commit two pictures. The first picture is the\nbinary with the old hash. The first tree is very deep and sparse. The second\npicture is with the new hash function and the tree is very wide and uniform.  I\nused the benchmark 'TypeFlood' in debug mode to generate huge amounts of\nmetadata.","distinct":true,"url":"https://api.github.com/repos/gottesmm/swift/commits/422764545c720f696bf7061513eac30941d39cf4"}]}