These patches together improve the gimple type merging WPA hash bottleneck that I'm seeing when building the Linux kernel with LTO.
Mostly it's micro optimization to the hashing, better hash functions, various tweaks. Individual patches result in 2-4% build time improvements each and somewhat lower the memory consumption. In addition I also fixed and improved the broken -flto-report http://halobates.de/kernel-lto.pdf has some additional information. Passes bootstrap and test suite on x86_64-linux. -Andi