[KnownBits] Introduce anyext instead of passing a flag into zext
This was a very odd API, where you had to pass a flag into a zext
function to say whether the extended bits really were zero or not. All
callers passed in a literal true or false.
I think it's much clearer to make the function name reflect the
operation being performed on the value we're tracking (rather than on
the KnownBits Zero and One fields), so zext means the value is being
zero extended and new function anyext means the value is being extended
with unknown bits.
Subscribers: hiraditya, llvm-commits
Differential Revision: https://reviews.llvm.org/D74482