| uniform half4 colorRed, colorGreen; | |
| struct S { | |
| half i; | |
| half j; | |
| }; | |
| half4 main(float2 coords) { | |
| // All of these assignments can be preserved. | |
| half4 x = half4(3, 2, 1, 0); | |
| x.xyz = x.zyx; | |
| S s; | |
| s.i = 2; | |
| s.j = 2; | |
| s.i = s.j; | |
| s.j = s.i; | |
| half a[2]; | |
| a[0] = 1; | |
| a[1] = 0; | |
| a[1] = a[0]; | |
| // All of these assignments should be eliminated. | |
| x.wy = x.wy; | |
| x.xyz = x.xyz; | |
| x = x; | |
| s.i = s.i; | |
| s.j = s.j; | |
| a[0] = a[0]; | |
| a[1] = a[1]; | |
| return half4(x.w, s.i / s.j, a[0] - a[1], a[0] * a[1]); | |
| } |