Merge pull request #2976 from jeremy-lunarg/hayes-fix-2975
[platform/upstream/glslang.git] / Test / spv.accessChain.frag
1 #version 420\r
2 \r
3 struct S \r
4 {\r
5     vec3 color;\r
6 };\r
7 \r
8 layout(location = 0) out vec3 OutColor;\r
9 \r
10 flat in int u;\r
11 \r
12 void GetColor1(const S i) \r
13\r
14     OutColor += i.color.x;\r
15 }\r
16 \r
17 void GetColor2(const S i, int comp)\r
18\r
19     OutColor += i.color[comp];\r
20 }\r
21 \r
22 void GetColor3(const S i, int comp)\r
23\r
24     OutColor += i.color[comp].x;\r
25 }\r
26 \r
27 void GetColor4(const S i, int comp)\r
28\r
29     OutColor += i.color[comp].x;\r
30 }\r
31 \r
32 void GetColor5(const S i, int comp)\r
33\r
34     OutColor += i.color;\r
35 }\r
36 \r
37 void GetColor6(const S i, int comp)\r
38\r
39     OutColor += i.color.yx[comp];\r
40 }\r
41 \r
42 void GetColor7(const S i, int comp)\r
43\r
44     OutColor.xy += i.color.yxz.yx;\r
45 }\r
46 \r
47 void GetColor8(const S i, int comp)\r
48\r
49     OutColor += i.color.yzx.yx.x.x;\r
50 }\r
51 \r
52 void GetColor9(const S i, int comp)\r
53\r
54     OutColor.zxy += i.color;\r
55 }\r
56 \r
57 void GetColor10(const S i, int comp)\r
58\r
59     OutColor.zy += i.color.xy;\r
60 }\r
61 \r
62 void GetColor11(const S i, int comp)\r
63\r
64     OutColor.zxy.yx += i.color.xy;\r
65 }\r
66 \r
67 void GetColor12(const S i, int comp)\r
68\r
69     OutColor[comp] += i.color.x;\r
70 }\r
71 \r
72 void GetColor13(const S i, int comp)\r
73\r
74     OutColor.zy[comp] += i.color.x;\r
75 }\r
76 \r
77 void GetColor14(const S i, int comp)\r
78\r
79     OutColor.zyx[comp] = i.color.x;\r
80 }\r
81 \r
82 void main()\r
83 {\r
84     S s;\r
85     OutColor = vec3(0.0);\r
86     GetColor1(s);\r
87     GetColor2(s, u);\r
88     GetColor3(s, u);\r
89     GetColor4(s, u);\r
90     GetColor5(s, u);\r
91     GetColor6(s, u);\r
92     GetColor7(s, u);\r
93     GetColor8(s, u);\r
94     GetColor9(s, u);\r
95     GetColor10(s, u);\r
96     GetColor11(s, u);\r
97     GetColor12(s, u);\r
98     GetColor13(s, u);\r
99     GetColor14(s, u);\r
100 }\r