1b2a28edaSopenharmony_ci{
2b2a28edaSopenharmony_ci  "revision" : 6,
3b2a28edaSopenharmony_ci  "instructions" : [
4b2a28edaSopenharmony_ci    {
5b2a28edaSopenharmony_ci      "opname" : "Kernel",
6b2a28edaSopenharmony_ci      "opcode" : 1,
7b2a28edaSopenharmony_ci      "operands" : [
8b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Kernel" },
9b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Name" },
10b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "NumArguments", "quantifier" : "?" },
11b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Flags", "quantifier" : "?"  },
12b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Attributes", "quantifier" : "?"  }
13b2a28edaSopenharmony_ci      ]
14b2a28edaSopenharmony_ci    },
15b2a28edaSopenharmony_ci    {
16b2a28edaSopenharmony_ci      "opname" : "ArgumentInfo",
17b2a28edaSopenharmony_ci      "opcode" : 2,
18b2a28edaSopenharmony_ci      "operands" : [
19b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Name" },
20b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Type Name", "quantifier" : "?" },
21b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Address Qualifier", "quantifier" : "?" },
22b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Access Qualifier", "quantifier" : "?" },
23b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Type Qualifier", "quantifier" : "?" }
24b2a28edaSopenharmony_ci      ]
25b2a28edaSopenharmony_ci    },
26b2a28edaSopenharmony_ci    {
27b2a28edaSopenharmony_ci      "opname" : "ArgumentStorageBuffer",
28b2a28edaSopenharmony_ci      "opcode" : 3,
29b2a28edaSopenharmony_ci      "operands" : [
30b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Decl" },
31b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Ordinal" },
32b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "DescriptorSet" },
33b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Binding" },
34b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "ArgInfo", "quantifier" : "?" }
35b2a28edaSopenharmony_ci      ]
36b2a28edaSopenharmony_ci    },
37b2a28edaSopenharmony_ci    {
38b2a28edaSopenharmony_ci      "opname" : "ArgumentUniform",
39b2a28edaSopenharmony_ci      "opcode" : 4,
40b2a28edaSopenharmony_ci      "operands" : [
41b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Decl" },
42b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Ordinal" },
43b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "DescriptorSet" },
44b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Binding" },
45b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "ArgInfo", "quantifier" : "?" }
46b2a28edaSopenharmony_ci      ]
47b2a28edaSopenharmony_ci    },
48b2a28edaSopenharmony_ci    {
49b2a28edaSopenharmony_ci      "opname" : "ArgumentPodStorageBuffer",
50b2a28edaSopenharmony_ci      "opcode" : 5,
51b2a28edaSopenharmony_ci      "operands" : [
52b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Decl" },
53b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Ordinal" },
54b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "DescriptorSet" },
55b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Binding" },
56b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Offset" },
57b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Size" },
58b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "ArgInfo", "quantifier" : "?" }
59b2a28edaSopenharmony_ci      ]
60b2a28edaSopenharmony_ci    },
61b2a28edaSopenharmony_ci    {
62b2a28edaSopenharmony_ci      "opname" : "ArgumentPodUniform",
63b2a28edaSopenharmony_ci      "opcode" : 6,
64b2a28edaSopenharmony_ci      "operands" : [
65b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Decl" },
66b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Ordinal" },
67b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "DescriptorSet" },
68b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Binding" },
69b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Offset" },
70b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Size" },
71b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "ArgInfo", "quantifier" : "?" }
72b2a28edaSopenharmony_ci      ]
73b2a28edaSopenharmony_ci    },
74b2a28edaSopenharmony_ci    {
75b2a28edaSopenharmony_ci      "opname" : "ArgumentPodPushConstant",
76b2a28edaSopenharmony_ci      "opcode" : 7,
77b2a28edaSopenharmony_ci      "operands" : [
78b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Decl" },
79b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Ordinal" },
80b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Offset" },
81b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Size" },
82b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "ArgInfo", "quantifier" : "?" }
83b2a28edaSopenharmony_ci      ]
84b2a28edaSopenharmony_ci    },
85b2a28edaSopenharmony_ci    {
86b2a28edaSopenharmony_ci      "opname" : "ArgumentSampledImage",
87b2a28edaSopenharmony_ci      "opcode" : 8,
88b2a28edaSopenharmony_ci      "operands" : [
89b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Decl" },
90b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Ordinal" },
91b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "DescriptorSet" },
92b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Binding" },
93b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "ArgInfo", "quantifier" : "?" }
94b2a28edaSopenharmony_ci      ]
95b2a28edaSopenharmony_ci    },
96b2a28edaSopenharmony_ci    {
97b2a28edaSopenharmony_ci      "opname" : "ArgumentStorageImage",
98b2a28edaSopenharmony_ci      "opcode" : 9,
99b2a28edaSopenharmony_ci      "operands" : [
100b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Decl" },
101b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Ordinal" },
102b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "DescriptorSet" },
103b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Binding" },
104b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "ArgInfo", "quantifier" : "?" }
105b2a28edaSopenharmony_ci      ]
106b2a28edaSopenharmony_ci    },
107b2a28edaSopenharmony_ci    {
108b2a28edaSopenharmony_ci      "opname" : "ArgumentSampler",
109b2a28edaSopenharmony_ci      "opcode" : 10,
110b2a28edaSopenharmony_ci      "operands" : [
111b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Decl" },
112b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Ordinal" },
113b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "DescriptorSet" },
114b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Binding" },
115b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "ArgInfo", "quantifier" : "?" }
116b2a28edaSopenharmony_ci      ]
117b2a28edaSopenharmony_ci    },
118b2a28edaSopenharmony_ci    {
119b2a28edaSopenharmony_ci      "opname" : "ArgumentWorkgroup",
120b2a28edaSopenharmony_ci      "opcode" : 11,
121b2a28edaSopenharmony_ci      "operands" : [
122b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Decl" },
123b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Ordinal" },
124b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "SpecId" },
125b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "ElemSize" },
126b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "ArgInfo", "quantifier" : "?" }
127b2a28edaSopenharmony_ci      ]
128b2a28edaSopenharmony_ci    },
129b2a28edaSopenharmony_ci    {
130b2a28edaSopenharmony_ci      "opname" : "SpecConstantWorkgroupSize",
131b2a28edaSopenharmony_ci      "opcode" : 12,
132b2a28edaSopenharmony_ci      "operands" : [
133b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "X" },
134b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Y" },
135b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Z" }
136b2a28edaSopenharmony_ci      ]
137b2a28edaSopenharmony_ci    },
138b2a28edaSopenharmony_ci    {
139b2a28edaSopenharmony_ci      "opname" : "SpecConstantGlobalOffset",
140b2a28edaSopenharmony_ci      "opcode" : 13,
141b2a28edaSopenharmony_ci      "operands" : [
142b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "X" },
143b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Y" },
144b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Z" }
145b2a28edaSopenharmony_ci      ]
146b2a28edaSopenharmony_ci    },
147b2a28edaSopenharmony_ci    {
148b2a28edaSopenharmony_ci      "opname" : "SpecConstantWorkDim",
149b2a28edaSopenharmony_ci      "opcode" : 14,
150b2a28edaSopenharmony_ci      "operands" : [
151b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Dim" }
152b2a28edaSopenharmony_ci      ]
153b2a28edaSopenharmony_ci    },
154b2a28edaSopenharmony_ci    {
155b2a28edaSopenharmony_ci      "opname" : "PushConstantGlobalOffset",
156b2a28edaSopenharmony_ci      "opcode" : 15,
157b2a28edaSopenharmony_ci      "operands" : [
158b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Offset" },
159b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Size" }
160b2a28edaSopenharmony_ci      ]
161b2a28edaSopenharmony_ci    },
162b2a28edaSopenharmony_ci    {
163b2a28edaSopenharmony_ci      "opname" : "PushConstantEnqueuedLocalSize",
164b2a28edaSopenharmony_ci      "opcode" : 16,
165b2a28edaSopenharmony_ci      "operands" : [
166b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Offset" },
167b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Size" }
168b2a28edaSopenharmony_ci      ]
169b2a28edaSopenharmony_ci    },
170b2a28edaSopenharmony_ci    {
171b2a28edaSopenharmony_ci      "opname" : "PushConstantGlobalSize",
172b2a28edaSopenharmony_ci      "opcode" : 17,
173b2a28edaSopenharmony_ci      "operands" : [
174b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Offset" },
175b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Size" }
176b2a28edaSopenharmony_ci      ]
177b2a28edaSopenharmony_ci    },
178b2a28edaSopenharmony_ci    {
179b2a28edaSopenharmony_ci      "opname" : "PushConstantRegionOffset",
180b2a28edaSopenharmony_ci      "opcode" : 18,
181b2a28edaSopenharmony_ci      "operands" : [
182b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Offset" },
183b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Size" }
184b2a28edaSopenharmony_ci      ]
185b2a28edaSopenharmony_ci    },
186b2a28edaSopenharmony_ci    {
187b2a28edaSopenharmony_ci      "opname" : "PushConstantNumWorkgroups",
188b2a28edaSopenharmony_ci      "opcode" : 19,
189b2a28edaSopenharmony_ci      "operands" : [
190b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Offset" },
191b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Size" }
192b2a28edaSopenharmony_ci      ]
193b2a28edaSopenharmony_ci    },
194b2a28edaSopenharmony_ci    {
195b2a28edaSopenharmony_ci      "opname" : "PushConstantRegionGroupOffset",
196b2a28edaSopenharmony_ci      "opcode" : 20,
197b2a28edaSopenharmony_ci      "operands" : [
198b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Offset" },
199b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Size" }
200b2a28edaSopenharmony_ci      ]
201b2a28edaSopenharmony_ci    },
202b2a28edaSopenharmony_ci    {
203b2a28edaSopenharmony_ci      "opname" : "ConstantDataStorageBuffer",
204b2a28edaSopenharmony_ci      "opcode" : 21,
205b2a28edaSopenharmony_ci      "operands" : [
206b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "DescriptorSet" },
207b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Binding" },
208b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Data" }
209b2a28edaSopenharmony_ci      ]
210b2a28edaSopenharmony_ci    },
211b2a28edaSopenharmony_ci    {
212b2a28edaSopenharmony_ci      "opname" : "ConstantDataUniform",
213b2a28edaSopenharmony_ci      "opcode" : 22,
214b2a28edaSopenharmony_ci      "operands" : [
215b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "DescriptorSet" },
216b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Binding" },
217b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Data" }
218b2a28edaSopenharmony_ci      ]
219b2a28edaSopenharmony_ci    },
220b2a28edaSopenharmony_ci    {
221b2a28edaSopenharmony_ci      "opname" : "LiteralSampler",
222b2a28edaSopenharmony_ci      "opcode" : 23,
223b2a28edaSopenharmony_ci      "operands" : [
224b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "DescriptorSet" },
225b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Binding" },
226b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Mask" }
227b2a28edaSopenharmony_ci      ]
228b2a28edaSopenharmony_ci    },
229b2a28edaSopenharmony_ci    {
230b2a28edaSopenharmony_ci      "opname" : "PropertyRequiredWorkgroupSize",
231b2a28edaSopenharmony_ci      "opcode" : 24,
232b2a28edaSopenharmony_ci      "operands" : [
233b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Kernel" },
234b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "X" },
235b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Y" },
236b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Z" }
237b2a28edaSopenharmony_ci      ]
238b2a28edaSopenharmony_ci    },
239b2a28edaSopenharmony_ci    {
240b2a28edaSopenharmony_ci      "opname" : "SpecConstantSubgroupMaxSize",
241b2a28edaSopenharmony_ci      "opcode" : 25,
242b2a28edaSopenharmony_ci      "operands" : [
243b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Size" }
244b2a28edaSopenharmony_ci      ]
245b2a28edaSopenharmony_ci    },
246b2a28edaSopenharmony_ci    {
247b2a28edaSopenharmony_ci      "opname" : "ArgumentPointerPushConstant",
248b2a28edaSopenharmony_ci      "opcode" : 26,
249b2a28edaSopenharmony_ci      "operands": [
250b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Kernel" },
251b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Ordinal" },
252b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Offset" },
253b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Size" },
254b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "ArgInfo", "quantifier" : "?" }
255b2a28edaSopenharmony_ci      ]
256b2a28edaSopenharmony_ci    },
257b2a28edaSopenharmony_ci    {
258b2a28edaSopenharmony_ci      "opname" : "ArgumentPointerUniform",
259b2a28edaSopenharmony_ci      "opcode" : 27,
260b2a28edaSopenharmony_ci      "operands": [
261b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Kernel" },
262b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Ordinal" },
263b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "DescriptorSet" },
264b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Binding" },
265b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Offset" },
266b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Size" },
267b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "ArgInfo", "quantifier" : "?" }
268b2a28edaSopenharmony_ci      ]
269b2a28edaSopenharmony_ci    },
270b2a28edaSopenharmony_ci    {
271b2a28edaSopenharmony_ci      "opname" : "ProgramScopeVariablesStorageBuffer",
272b2a28edaSopenharmony_ci      "opcode" : 28,
273b2a28edaSopenharmony_ci      "operands": [
274b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "DescriptorSet" },
275b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Binding" },
276b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Data" }
277b2a28edaSopenharmony_ci      ]
278b2a28edaSopenharmony_ci    },
279b2a28edaSopenharmony_ci    {
280b2a28edaSopenharmony_ci      "opname" : "ProgramScopeVariablePointerRelocation",
281b2a28edaSopenharmony_ci      "opcode" : 29,
282b2a28edaSopenharmony_ci      "operands": [
283b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "ObjectOffset" },
284b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "PointerOffset" },
285b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "PointerSize" }
286b2a28edaSopenharmony_ci      ]
287b2a28edaSopenharmony_ci    },
288b2a28edaSopenharmony_ci    {
289b2a28edaSopenharmony_ci      "opname" : "ImageArgumentInfoChannelOrderPushConstant",
290b2a28edaSopenharmony_ci      "opcode" : 30,
291b2a28edaSopenharmony_ci      "operands": [
292b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Kernel" },
293b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Ordinal" },
294b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Offset" },
295b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Size" }
296b2a28edaSopenharmony_ci      ]
297b2a28edaSopenharmony_ci    },
298b2a28edaSopenharmony_ci    {
299b2a28edaSopenharmony_ci      "opname" : "ImageArgumentInfoChannelDataTypePushConstant",
300b2a28edaSopenharmony_ci      "opcode" : 31,
301b2a28edaSopenharmony_ci      "operands": [
302b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Kernel" },
303b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Ordinal" },
304b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Offset" },
305b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Size" }
306b2a28edaSopenharmony_ci      ]
307b2a28edaSopenharmony_ci    },
308b2a28edaSopenharmony_ci    {
309b2a28edaSopenharmony_ci      "opname" : "ImageArgumentInfoChannelOrderUniform",
310b2a28edaSopenharmony_ci      "opcode" : 32,
311b2a28edaSopenharmony_ci      "operands": [
312b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Kernel" },
313b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Ordinal" },
314b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "DescriptorSet" },
315b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Binding" },
316b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Offset" },
317b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Size" }
318b2a28edaSopenharmony_ci      ]
319b2a28edaSopenharmony_ci    },
320b2a28edaSopenharmony_ci    {
321b2a28edaSopenharmony_ci      "opname" : "ImageArgumentInfoChannelDataTypeUniform",
322b2a28edaSopenharmony_ci      "opcode" : 33,
323b2a28edaSopenharmony_ci      "operands": [
324b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Kernel" },
325b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Ordinal" },
326b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "DescriptorSet" },
327b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Binding" },
328b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Offset" },
329b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Size" }
330b2a28edaSopenharmony_ci      ]
331b2a28edaSopenharmony_ci    },
332b2a28edaSopenharmony_ci    {
333b2a28edaSopenharmony_ci      "opname" : "ArgumentStorageTexelBuffer",
334b2a28edaSopenharmony_ci      "opcode" : 34,
335b2a28edaSopenharmony_ci      "operands" : [
336b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Decl" },
337b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Ordinal" },
338b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "DescriptorSet" },
339b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Binding" },
340b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "ArgInfo", "quantifier" : "?" }
341b2a28edaSopenharmony_ci      ]
342b2a28edaSopenharmony_ci    },
343b2a28edaSopenharmony_ci    {
344b2a28edaSopenharmony_ci      "opname" : "ArgumentUniformTexelBuffer",
345b2a28edaSopenharmony_ci      "opcode" : 35,
346b2a28edaSopenharmony_ci      "operands" : [
347b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Decl" },
348b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Ordinal" },
349b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "DescriptorSet" },
350b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Binding" },
351b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "ArgInfo", "quantifier" : "?" }
352b2a28edaSopenharmony_ci      ]
353b2a28edaSopenharmony_ci    },
354b2a28edaSopenharmony_ci    {
355b2a28edaSopenharmony_ci      "opname" : "ConstantDataPointerPushConstant",
356b2a28edaSopenharmony_ci      "opcode" : 36,
357b2a28edaSopenharmony_ci      "operands" : [
358b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Offset"},
359b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Size"},
360b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Data" }
361b2a28edaSopenharmony_ci      ]
362b2a28edaSopenharmony_ci    },
363b2a28edaSopenharmony_ci    {
364b2a28edaSopenharmony_ci      "opname" : "ProgramScopeVariablePointerPushConstant",
365b2a28edaSopenharmony_ci      "opcode" : 37,
366b2a28edaSopenharmony_ci      "operands" : [
367b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Offset"},
368b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Size"},
369b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Data" }
370b2a28edaSopenharmony_ci      ]
371b2a28edaSopenharmony_ci    },
372b2a28edaSopenharmony_ci    {
373b2a28edaSopenharmony_ci      "opname" : "PrintfInfo",
374b2a28edaSopenharmony_ci      "opcode" : 38,
375b2a28edaSopenharmony_ci      "operands" : [
376b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "PrintfID" },
377b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "FormatString" },
378b2a28edaSopenharmony_ci        { "kind" : "IdRef", "quantifier" : "*", "name" : "ArgumentSizes"}
379b2a28edaSopenharmony_ci      ]
380b2a28edaSopenharmony_ci    },
381b2a28edaSopenharmony_ci    {
382b2a28edaSopenharmony_ci      "opname" : "PrintfBufferStorageBuffer",
383b2a28edaSopenharmony_ci      "opcode" : 39,
384b2a28edaSopenharmony_ci      "operands" : [
385b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "DescriptorSet" },
386b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "Binding" },
387b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "BufferSize"}
388b2a28edaSopenharmony_ci      ]
389b2a28edaSopenharmony_ci    },
390b2a28edaSopenharmony_ci    {
391b2a28edaSopenharmony_ci    "opname" : "PrintfBufferPointerPushConstant",
392b2a28edaSopenharmony_ci    "opcode" : 40,
393b2a28edaSopenharmony_ci    "operands" : [
394b2a28edaSopenharmony_ci      { "kind" : "IdRef", "name" : "Offset" },
395b2a28edaSopenharmony_ci      { "kind" : "IdRef", "name" : "Size"},
396b2a28edaSopenharmony_ci      { "kind" : "IdRef", "name" : "BufferSize"}
397b2a28edaSopenharmony_ci      ]
398b2a28edaSopenharmony_ci    },
399b2a28edaSopenharmony_ci    {
400b2a28edaSopenharmony_ci    "opname" : "NormalizedSamplerMaskPushConstant",
401b2a28edaSopenharmony_ci    "opcode" : 41,
402b2a28edaSopenharmony_ci    "operands" : [
403b2a28edaSopenharmony_ci      { "kind" : "IdRef", "name" : "Kernel" },
404b2a28edaSopenharmony_ci      { "kind" : "IdRef", "name" : "Ordinal" },
405b2a28edaSopenharmony_ci      { "kind" : "IdRef", "name" : "Offset" },
406b2a28edaSopenharmony_ci      { "kind" : "IdRef", "name" : "Size" }
407b2a28edaSopenharmony_ci      ]
408b2a28edaSopenharmony_ci    }
409b2a28edaSopenharmony_ci  ],
410b2a28edaSopenharmony_ci  "operand_kinds" : [
411b2a28edaSopenharmony_ci    {
412b2a28edaSopenharmony_ci      "category" : "BitEnum",
413b2a28edaSopenharmony_ci      "kind" : "KernelPropertyFlags",
414b2a28edaSopenharmony_ci      "enumerants" : [
415b2a28edaSopenharmony_ci        {
416b2a28edaSopenharmony_ci          "enumerant" : "None",
417b2a28edaSopenharmony_ci          "value" : "0x0"
418b2a28edaSopenharmony_ci        },
419b2a28edaSopenharmony_ci        {
420b2a28edaSopenharmony_ci          "enumerant" : "MayUsePrintf",
421b2a28edaSopenharmony_ci          "value" : "0x1"
422b2a28edaSopenharmony_ci        }
423b2a28edaSopenharmony_ci      ]
424b2a28edaSopenharmony_ci    }
425b2a28edaSopenharmony_ci  ]
426b2a28edaSopenharmony_ci}
427