This combine causes problems in many situations. (Not sure exactly when it's safe; suggestions welcome.)
Fixes https://llvm.org/bugs/show_bug.cgi?id=31364 . Partially fixes https://llvm.org/bugs/show_bug.cgi?id=31301.
It's possible the change to combineShuffleOfScalars is a little too restrictive... but I'm not sure what a good heuristic would be.