This patch moves LLVM::ShuffleVectorOp to assembly format and in the
process drops the extra type that can be inferred (both operand types
are required to be the same) and switches to a dense integer array.
The syntax change:
// Before %0 = llvm.shufflevector %0, %1 [0 : i32, 0 : i32, 0 : i32, 0 : i32] : vector<4xf32>, vector<4xf32> // After %0 = llvm.shufflevector %0, %1 [0, 0, 0, 0] : vector<4xf32>
I think the mask should be I32, not I64, per LangRef doc. Of maybe the doc is not up-to-date?