bitcast (shuf V, MaskC) --> shuf (bitcast V), MaskC'
This is the widen shuffle elements enhancement to D76727. It builds on the analysis and simplifications in D77881 and rG6a7e958a423e.
The phase ordering tests show that we can simplify inverse shuffles across a binop in both directions (widen/narrow or narrow/widen) now.
There's another potential transform visible in some of the remaining TODOs - move a bitcasted operand of a shuffle after the shuffle.
Move the assert just below the ScaleFactor?