Given the following code: ```hlsl StructuredBuffer<int4> In1 : register(t0); RWStructuredBuffer<int4> Out1 : register(u4); [numthreads(1,1,1)] void main() { // int Out1[0] = sign(In1[0]); int4 Tmp = {sign(In1[0].xyz), sign(In1[0].w)}; Out1[1] = Tmp; Out1[2].xy = sign(In1[0].xy); } ``` [Compiler Explorer](https://godbolt.org/z/48Y1j64x8) The generated SPIRV contains an invalid `OpVectorShuffle` instruction: ```spirv %69 = OpVectorShuffle %4 %66 %33 0 1 -1 -1 ``` [Compiler Explorer](https://godbolt.org/z/6ceMx9731)