Update test results for pull request #68, SPIRV: Decorate matrices and arrays with...
[platform/upstream/glslang.git] / Test / baseResults / spv.atomic.comp.out
1 spv.atomic.comp\r
2 Warning, version 310 is not yet complete; most version-specific features are present, but some are missing.\r
3 \r
4 \r
5 Linked compute stage:\r
6 \r
7 \r
8 TBD functionality: Is atomic_uint an opaque handle in the uniform storage class, or an addresses in the atomic storage class?\r
9 // Module Version 99\r
10 // Generated by (magic number): 51a00bb\r
11 // Id's are bound by 75\r
12 \r
13                               Source ESSL 310\r
14                               Capability Shader\r
15                1:             ExtInstImport  "GLSL.std.450"\r
16                               MemoryModel Logical GLSL450\r
17                               EntryPoint GLCompute 4  "main"\r
18                               Name 4  "main"\r
19                               Name 11  "func(au1;"\r
20                               Name 10  "c"\r
21                               Name 13  "atoms("\r
22                               Name 22  "counter"\r
23                               Name 23  "param"\r
24                               Name 26  "val"\r
25                               Name 30  "countArr"\r
26                               Name 39  "origi"\r
27                               Name 41  "atomi"\r
28                               Name 45  "origu"\r
29                               Name 47  "atomu"\r
30                               Name 49  "value"\r
31                               Name 72  "arrX"\r
32                               Name 73  "arrY"\r
33                               Name 74  "arrZ"\r
34                               Decorate 22(counter) Binding 0\r
35                               Decorate 28 ArrayStride 4\r
36                               Decorate 30(countArr) Binding 0\r
37                               Decorate 70 ArrayStride 4\r
38                               Decorate 72(arrX) NoStaticUse\r
39                               Decorate 70 ArrayStride 4\r
40                               Decorate 73(arrY) NoStaticUse\r
41                               Decorate 70 ArrayStride 4\r
42                               Decorate 74(arrZ) NoStaticUse\r
43                2:             TypeVoid\r
44                3:             TypeFunction 2\r
45                7:             TypeInt 32 0\r
46                8:             TypePointer Function 7(int)\r
47                9:             TypeFunction 7(int) 8(ptr)\r
48               16:      7(int) Constant 1\r
49               17:      7(int) Constant 0\r
50               20:      7(int) Constant 256\r
51               21:             TypePointer UniformConstant 7(int)\r
52      22(counter):     21(ptr) Variable UniformConstant\r
53               27:      7(int) Constant 4\r
54               28:             TypeArray 7(int) 27\r
55               29:             TypePointer UniformConstant 28\r
56     30(countArr):     29(ptr) Variable UniformConstant\r
57               31:             TypeInt 32 1\r
58               32:     31(int) Constant 2\r
59               38:             TypePointer Function 31(int)\r
60               40:             TypePointer WorkgroupLocal 31(int)\r
61        41(atomi):     40(ptr) Variable WorkgroupLocal\r
62               43:     31(int) Constant 3\r
63               46:             TypePointer WorkgroupLocal 7(int)\r
64        47(atomu):     46(ptr) Variable WorkgroupLocal\r
65        49(value):     21(ptr) Variable UniformConstant\r
66               53:      7(int) Constant 7\r
67               61:     31(int) Constant 7\r
68               67:      7(int) Constant 10\r
69               70:             TypeArray 31(int) 16\r
70               71:             TypePointer PrivateGlobal 70\r
71         72(arrX):     71(ptr) Variable PrivateGlobal\r
72         73(arrY):     71(ptr) Variable PrivateGlobal\r
73         74(arrZ):     71(ptr) Variable PrivateGlobal\r
74          4(main):           2 Function None 3\r
75                5:             Label\r
76        23(param):      8(ptr) Variable Function\r
77          26(val):      8(ptr) Variable Function\r
78                               MemoryBarrier 16 20\r
79               24:      7(int) Load 22(counter)\r
80                               Store 23(param) 24\r
81               25:      7(int) FunctionCall 11(func(au1;) 23(param)\r
82               33:     21(ptr) AccessChain 30(countArr) 32\r
83               34:      7(int) Load 33\r
84               35:      7(int) AtomicLoad 34 16 17\r
85                               Store 26(val) 35\r
86               36:      7(int) Load 22(counter)\r
87               37:      7(int) AtomicIDecrement 36 16 17\r
88                               Branch 6\r
89                6:             Label\r
90                               Return\r
91                               FunctionEnd\r
92    11(func(au1;):      7(int) Function None 9\r
93            10(c):      8(ptr) FunctionParameter\r
94               12:             Label\r
95               15:      7(int) Load 10(c)\r
96               18:      7(int) AtomicIIncrement 15 16 17\r
97                               ReturnValue 18\r
98                               FunctionEnd\r
99       13(atoms():           2 Function None 3\r
100               14:             Label\r
101        39(origi):     38(ptr) Variable Function\r
102        45(origu):      8(ptr) Variable Function\r
103               42:     31(int) Load 41(atomi)\r
104               44:     31(int) AtomicIAdd 42 16 17 43\r
105                               Store 39(origi) 44\r
106               48:      7(int) Load 47(atomu)\r
107               50:      7(int) Load 49(value)\r
108               51:      7(int) AtomicAnd 48 16 17 50\r
109                               Store 45(origu) 51\r
110               52:      7(int) Load 47(atomu)\r
111               54:      7(int) AtomicOr 52 16 17 53\r
112                               Store 45(origu) 54\r
113               55:      7(int) Load 47(atomu)\r
114               56:      7(int) AtomicXor 55 16 17 53\r
115                               Store 45(origu) 56\r
116               57:      7(int) Load 47(atomu)\r
117               58:      7(int) Load 49(value)\r
118               59:      7(int) AtomicSMin 57 16 17 58\r
119                               Store 45(origu) 59\r
120               60:     31(int) Load 41(atomi)\r
121               62:     31(int) AtomicSMax 60 16 17 61\r
122                               Store 39(origi) 62\r
123               63:     31(int) Load 41(atomi)\r
124               64:     31(int) Load 39(origi)\r
125               65:     31(int) AtomicExchange 63 16 17 64\r
126                               Store 39(origi) 65\r
127               66:      7(int) Load 47(atomu)\r
128               68:      7(int) Load 49(value)\r
129               69:      7(int) AtomicCompareExchange 66 16 17 67 68\r
130                               Store 45(origu) 69\r
131                               Return\r
132                               FunctionEnd\r