We previously only created a vector phi node for an induction variable if its type matched the type of the canonical induction variable. I don't recall why this restriction exists, but it doesn't seem to be necessary.
I'm planning to extend vector phi creation with a few more follow-ons. First, we don't need to require constant-steps (the steps only need to be loop invariant). And second, we can merge the floating point induction widening code into the integer widening code. There's already some overlap, and if we do so, we'll be able to create vector phi nodes for some floating point inductions.