1uniform half4 testInputs, colorBlack, colorGreen, colorRed; 2 3half4 non_constant_swizzle() { 4 half4 v = half4(testInputs); 5 int4 i = int4(colorBlack); 6 half x = v[i[0]]; 7 half y = v[i[1]]; 8 half z = v[i[2]]; 9 half w = v[i[3]]; 10 return half4(x, y, z, w); // -1.25, -1.25, -1.25, 0 11} 12 13half4 main(float2 coords) { 14 return non_constant_swizzle() == half4(-1.25, -1.25, -1.25, 0) ? colorGreen : colorRed; 15} 16