When using a predicated bitwise intrinsic with an immediate operand, if the
predicate used is all lanes active, use a unpredicated immediate form of
This also includes a new complex isel pattern which allows matching an
all active predicate when the types are different but the predicate is a
superset of the type being used. For example, to allow a b8 ptrue for a
b32 predicate operand.
Co-authored-by: Paul Walker <email@example.com>