Currently we only match bswap intrinsics from or(shl(),lshr()) style patterns when we could often match bitreverse intrinsics almost as cheaply.
I've currently limited this to bitreverse of i16 or less (as a similar bswap limit is i128 or less) - I'm not certain how much we should be trying to do in InstCombine vs AggressiveInstCombine (where I plan to have a similar path with no specific bitwidth limits) - should we bother with matching in InstCombine at all?