LVI::getPredicateInBlock is like LVI::getPredicateAt, but uses the more
powerful getValueInBlock API, instead of getValueAt. This lets it solve
things like x & y < z.
This came out of a discussion in D44102, in which sanjoy@ realized that
getConstantRange, which calls getValueInBlock, was more powerful than
getPredicateAt, which calls getValueAt.
Can we pick the block from CxtI?