Following the suggestion in D59450, I'm moving the code for constructing a ConstantRange from KnownBits out of ValueTracking, which also allows us to add a couple of unit tests...
I'm adding this method to ConstantRange rather than KnownBits (which would have been a bit nicer) to avoid creating a dependency from Support to IR, where ConstantRange lives.
PS: C++14 binary literals would be great for these kinds of tests...
Last-minute thought: should there be a assert(!Known.hasConflict() && "Expected valid KnownBits"); ?
The used methods of KnownBits won't assert that by themselves..