Perform better analysis when trying to vectorize PHIs.
- Do not try to vectorize vector PHIs.
- Do deeper analysis for more profitable nodes for the vectorization.
Before we just tried to vectorize the PHIs of the same type. Patch
improves this and tries to vectorize PHIs with incoming values which
come from the same basic block, have the same and/or alternative
opcodes.
It allows to save the compile time and provides better vectorization
results in general.
Part of D57059.
NIT (to match the order in the previous lambda):