1#[doc = "Extended instruction operand kinds."]
6#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash)]
7#[allow(clippy::upper_case_acronyms)]
8pub enum ExtOperandKind {
9 DebugInfoFlags,
10 DebugBaseTypeAttributeEncoding,
11 DebugCompositeType,
12 DebugTypeQualifier,
13 DebugOperation,
14 DebugImportedEntity,
15}
16static OPENCL_DEBUGINFO_100_INSTRUCTIONS: &[ExtendedInstruction<'static>] = &[
17 ext_inst!(
18 OpenclDebuginfo100,
19 OpenclDebuginfo100Op,
20 DebugInfoNone,
21 [],
22 [],
23 [],
24 ),
25 ext_inst!(
26 OpenclDebuginfo100,
27 OpenclDebuginfo100Op,
28 DebugCompilationUnit,
29 [],
30 [],
31 [
32 (OperandKind::LiteralInteger, One),
33 (OperandKind::LiteralInteger, One),
34 (OperandKind::IdRef, One),
35 (OperandKind::SourceLanguage, One)
36 ],
37 ),
38 ext_inst!(
39 OpenclDebuginfo100,
40 OpenclDebuginfo100Op,
41 DebugTypeBasic,
42 [],
43 [],
44 [
45 (OperandKind::IdRef, One),
46 (OperandKind::IdRef, One),
47 (
48 OperandKind::OpenclDebuginfo100(ExtOperandKind::DebugBaseTypeAttributeEncoding),
49 One
50 )
51 ],
52 ),
53 ext_inst!(
54 OpenclDebuginfo100,
55 OpenclDebuginfo100Op,
56 DebugTypePointer,
57 [],
58 [],
59 [
60 (OperandKind::IdRef, One),
61 (OperandKind::StorageClass, One),
62 (
63 OperandKind::OpenclDebuginfo100(ExtOperandKind::DebugInfoFlags),
64 One
65 )
66 ],
67 ),
68 ext_inst!(
69 OpenclDebuginfo100,
70 OpenclDebuginfo100Op,
71 DebugTypeQualifier,
72 [],
73 [],
74 [
75 (OperandKind::IdRef, One),
76 (
77 OperandKind::OpenclDebuginfo100(ExtOperandKind::DebugTypeQualifier),
78 One
79 )
80 ],
81 ),
82 ext_inst!(
83 OpenclDebuginfo100,
84 OpenclDebuginfo100Op,
85 DebugTypeArray,
86 [],
87 [],
88 [(OperandKind::IdRef, One), (OperandKind::IdRef, ZeroOrMore)],
89 ),
90 ext_inst!(
91 OpenclDebuginfo100,
92 OpenclDebuginfo100Op,
93 DebugTypeVector,
94 [],
95 [],
96 [
97 (OperandKind::IdRef, One),
98 (OperandKind::LiteralInteger, One)
99 ],
100 ),
101 ext_inst!(
102 OpenclDebuginfo100,
103 OpenclDebuginfo100Op,
104 DebugTypedef,
105 [],
106 [],
107 [
108 (OperandKind::IdRef, One),
109 (OperandKind::IdRef, One),
110 (OperandKind::IdRef, One),
111 (OperandKind::LiteralInteger, One),
112 (OperandKind::LiteralInteger, One),
113 (OperandKind::IdRef, One)
114 ],
115 ),
116 ext_inst!(
117 OpenclDebuginfo100,
118 OpenclDebuginfo100Op,
119 DebugTypeFunction,
120 [],
121 [],
122 [
123 (
124 OperandKind::OpenclDebuginfo100(ExtOperandKind::DebugInfoFlags),
125 One
126 ),
127 (OperandKind::IdRef, One),
128 (OperandKind::IdRef, ZeroOrMore)
129 ],
130 ),
131 ext_inst!(
132 OpenclDebuginfo100,
133 OpenclDebuginfo100Op,
134 DebugTypeEnum,
135 [],
136 [],
137 [
138 (OperandKind::IdRef, One),
139 (OperandKind::IdRef, One),
140 (OperandKind::IdRef, One),
141 (OperandKind::LiteralInteger, One),
142 (OperandKind::LiteralInteger, One),
143 (OperandKind::IdRef, One),
144 (OperandKind::IdRef, One),
145 (
146 OperandKind::OpenclDebuginfo100(ExtOperandKind::DebugInfoFlags),
147 One
148 ),
149 (OperandKind::PairIdRefIdRef, ZeroOrMore)
150 ],
151 ),
152 ext_inst!(
153 OpenclDebuginfo100,
154 OpenclDebuginfo100Op,
155 DebugTypeComposite,
156 [],
157 [],
158 [
159 (OperandKind::IdRef, One),
160 (
161 OperandKind::OpenclDebuginfo100(ExtOperandKind::DebugCompositeType),
162 One
163 ),
164 (OperandKind::IdRef, One),
165 (OperandKind::LiteralInteger, One),
166 (OperandKind::LiteralInteger, One),
167 (OperandKind::IdRef, One),
168 (OperandKind::IdRef, One),
169 (OperandKind::IdRef, One),
170 (
171 OperandKind::OpenclDebuginfo100(ExtOperandKind::DebugInfoFlags),
172 One
173 ),
174 (OperandKind::IdRef, ZeroOrMore)
175 ],
176 ),
177 ext_inst!(
178 OpenclDebuginfo100,
179 OpenclDebuginfo100Op,
180 DebugTypeMember,
181 [],
182 [],
183 [
184 (OperandKind::IdRef, One),
185 (OperandKind::IdRef, One),
186 (OperandKind::IdRef, One),
187 (OperandKind::LiteralInteger, One),
188 (OperandKind::LiteralInteger, One),
189 (OperandKind::IdRef, One),
190 (OperandKind::IdRef, One),
191 (OperandKind::IdRef, One),
192 (
193 OperandKind::OpenclDebuginfo100(ExtOperandKind::DebugInfoFlags),
194 One
195 ),
196 (OperandKind::IdRef, ZeroOrOne)
197 ],
198 ),
199 ext_inst!(
200 OpenclDebuginfo100,
201 OpenclDebuginfo100Op,
202 DebugTypeInheritance,
203 [],
204 [],
205 [
206 (OperandKind::IdRef, One),
207 (OperandKind::IdRef, One),
208 (OperandKind::IdRef, One),
209 (OperandKind::IdRef, One),
210 (
211 OperandKind::OpenclDebuginfo100(ExtOperandKind::DebugInfoFlags),
212 One
213 )
214 ],
215 ),
216 ext_inst!(
217 OpenclDebuginfo100,
218 OpenclDebuginfo100Op,
219 DebugTypePtrToMember,
220 [],
221 [],
222 [(OperandKind::IdRef, One), (OperandKind::IdRef, One)],
223 ),
224 ext_inst!(
225 OpenclDebuginfo100,
226 OpenclDebuginfo100Op,
227 DebugTypeTemplate,
228 [],
229 [],
230 [(OperandKind::IdRef, One), (OperandKind::IdRef, ZeroOrMore)],
231 ),
232 ext_inst!(
233 OpenclDebuginfo100,
234 OpenclDebuginfo100Op,
235 DebugTypeTemplateParameter,
236 [],
237 [],
238 [
239 (OperandKind::IdRef, One),
240 (OperandKind::IdRef, One),
241 (OperandKind::IdRef, One),
242 (OperandKind::IdRef, One),
243 (OperandKind::LiteralInteger, One),
244 (OperandKind::LiteralInteger, One)
245 ],
246 ),
247 ext_inst!(
248 OpenclDebuginfo100,
249 OpenclDebuginfo100Op,
250 DebugTypeTemplateTemplateParameter,
251 [],
252 [],
253 [
254 (OperandKind::IdRef, One),
255 (OperandKind::IdRef, One),
256 (OperandKind::IdRef, One),
257 (OperandKind::LiteralInteger, One),
258 (OperandKind::LiteralInteger, One)
259 ],
260 ),
261 ext_inst!(
262 OpenclDebuginfo100,
263 OpenclDebuginfo100Op,
264 DebugTypeTemplateParameterPack,
265 [],
266 [],
267 [
268 (OperandKind::IdRef, One),
269 (OperandKind::IdRef, One),
270 (OperandKind::LiteralInteger, One),
271 (OperandKind::LiteralInteger, One),
272 (OperandKind::IdRef, ZeroOrMore)
273 ],
274 ),
275 ext_inst!(
276 OpenclDebuginfo100,
277 OpenclDebuginfo100Op,
278 DebugGlobalVariable,
279 [],
280 [],
281 [
282 (OperandKind::IdRef, One),
283 (OperandKind::IdRef, One),
284 (OperandKind::IdRef, One),
285 (OperandKind::LiteralInteger, One),
286 (OperandKind::LiteralInteger, One),
287 (OperandKind::IdRef, One),
288 (OperandKind::IdRef, One),
289 (OperandKind::IdRef, One),
290 (
291 OperandKind::OpenclDebuginfo100(ExtOperandKind::DebugInfoFlags),
292 One
293 ),
294 (OperandKind::IdRef, ZeroOrOne)
295 ],
296 ),
297 ext_inst!(
298 OpenclDebuginfo100,
299 OpenclDebuginfo100Op,
300 DebugFunctionDeclaration,
301 [],
302 [],
303 [
304 (OperandKind::IdRef, One),
305 (OperandKind::IdRef, One),
306 (OperandKind::IdRef, One),
307 (OperandKind::LiteralInteger, One),
308 (OperandKind::LiteralInteger, One),
309 (OperandKind::IdRef, One),
310 (OperandKind::IdRef, One),
311 (
312 OperandKind::OpenclDebuginfo100(ExtOperandKind::DebugInfoFlags),
313 One
314 )
315 ],
316 ),
317 ext_inst!(
318 OpenclDebuginfo100,
319 OpenclDebuginfo100Op,
320 DebugFunction,
321 [],
322 [],
323 [
324 (OperandKind::IdRef, One),
325 (OperandKind::IdRef, One),
326 (OperandKind::IdRef, One),
327 (OperandKind::LiteralInteger, One),
328 (OperandKind::LiteralInteger, One),
329 (OperandKind::IdRef, One),
330 (OperandKind::IdRef, One),
331 (
332 OperandKind::OpenclDebuginfo100(ExtOperandKind::DebugInfoFlags),
333 One
334 ),
335 (OperandKind::LiteralInteger, One),
336 (OperandKind::IdRef, One),
337 (OperandKind::IdRef, ZeroOrOne)
338 ],
339 ),
340 ext_inst!(
341 OpenclDebuginfo100,
342 OpenclDebuginfo100Op,
343 DebugLexicalBlock,
344 [],
345 [],
346 [
347 (OperandKind::IdRef, One),
348 (OperandKind::LiteralInteger, One),
349 (OperandKind::LiteralInteger, One),
350 (OperandKind::IdRef, One),
351 (OperandKind::IdRef, ZeroOrOne)
352 ],
353 ),
354 ext_inst!(
355 OpenclDebuginfo100,
356 OpenclDebuginfo100Op,
357 DebugLexicalBlockDiscriminator,
358 [],
359 [],
360 [
361 (OperandKind::IdRef, One),
362 (OperandKind::LiteralInteger, One),
363 (OperandKind::IdRef, One)
364 ],
365 ),
366 ext_inst!(
367 OpenclDebuginfo100,
368 OpenclDebuginfo100Op,
369 DebugScope,
370 [],
371 [],
372 [(OperandKind::IdRef, One), (OperandKind::IdRef, ZeroOrOne)],
373 ),
374 ext_inst!(
375 OpenclDebuginfo100,
376 OpenclDebuginfo100Op,
377 DebugNoScope,
378 [],
379 [],
380 [],
381 ),
382 ext_inst!(
383 OpenclDebuginfo100,
384 OpenclDebuginfo100Op,
385 DebugInlinedAt,
386 [],
387 [],
388 [
389 (OperandKind::LiteralInteger, One),
390 (OperandKind::IdRef, One),
391 (OperandKind::IdRef, ZeroOrOne)
392 ],
393 ),
394 ext_inst!(
395 OpenclDebuginfo100,
396 OpenclDebuginfo100Op,
397 DebugLocalVariable,
398 [],
399 [],
400 [
401 (OperandKind::IdRef, One),
402 (OperandKind::IdRef, One),
403 (OperandKind::IdRef, One),
404 (OperandKind::LiteralInteger, One),
405 (OperandKind::LiteralInteger, One),
406 (OperandKind::IdRef, One),
407 (
408 OperandKind::OpenclDebuginfo100(ExtOperandKind::DebugInfoFlags),
409 One
410 ),
411 (OperandKind::LiteralInteger, ZeroOrOne)
412 ],
413 ),
414 ext_inst!(
415 OpenclDebuginfo100,
416 OpenclDebuginfo100Op,
417 DebugInlinedVariable,
418 [],
419 [],
420 [(OperandKind::IdRef, One), (OperandKind::IdRef, One)],
421 ),
422 ext_inst!(
423 OpenclDebuginfo100,
424 OpenclDebuginfo100Op,
425 DebugDeclare,
426 [],
427 [],
428 [
429 (OperandKind::IdRef, One),
430 (OperandKind::IdRef, One),
431 (OperandKind::IdRef, One)
432 ],
433 ),
434 ext_inst!(
435 OpenclDebuginfo100,
436 OpenclDebuginfo100Op,
437 DebugValue,
438 [],
439 [],
440 [
441 (OperandKind::IdRef, One),
442 (OperandKind::IdRef, One),
443 (OperandKind::IdRef, One),
444 (OperandKind::IdRef, ZeroOrMore)
445 ],
446 ),
447 ext_inst!(
448 OpenclDebuginfo100,
449 OpenclDebuginfo100Op,
450 DebugOperation,
451 [],
452 [],
453 [
454 (
455 OperandKind::OpenclDebuginfo100(ExtOperandKind::DebugOperation),
456 One
457 ),
458 (OperandKind::LiteralInteger, ZeroOrMore)
459 ],
460 ),
461 ext_inst!(
462 OpenclDebuginfo100,
463 OpenclDebuginfo100Op,
464 DebugExpression,
465 [],
466 [],
467 [(OperandKind::IdRef, ZeroOrMore)],
468 ),
469 ext_inst!(
470 OpenclDebuginfo100,
471 OpenclDebuginfo100Op,
472 DebugMacroDef,
473 [],
474 [],
475 [
476 (OperandKind::IdRef, One),
477 (OperandKind::LiteralInteger, One),
478 (OperandKind::IdRef, One),
479 (OperandKind::IdRef, ZeroOrOne)
480 ],
481 ),
482 ext_inst!(
483 OpenclDebuginfo100,
484 OpenclDebuginfo100Op,
485 DebugMacroUndef,
486 [],
487 [],
488 [
489 (OperandKind::IdRef, One),
490 (OperandKind::LiteralInteger, One),
491 (OperandKind::IdRef, One)
492 ],
493 ),
494 ext_inst!(
495 OpenclDebuginfo100,
496 OpenclDebuginfo100Op,
497 DebugImportedEntity,
498 [],
499 [],
500 [
501 (OperandKind::IdRef, One),
502 (
503 OperandKind::OpenclDebuginfo100(ExtOperandKind::DebugImportedEntity),
504 One
505 ),
506 (OperandKind::IdRef, One),
507 (OperandKind::IdRef, One),
508 (OperandKind::LiteralInteger, One),
509 (OperandKind::LiteralInteger, One),
510 (OperandKind::IdRef, One)
511 ],
512 ),
513 ext_inst!(
514 OpenclDebuginfo100,
515 OpenclDebuginfo100Op,
516 DebugSource,
517 [],
518 [],
519 [(OperandKind::IdRef, One), (OperandKind::IdRef, ZeroOrOne)],
520 ),
521 ext_inst!(
522 OpenclDebuginfo100,
523 OpenclDebuginfo100Op,
524 DebugModuleINTEL,
525 [],
526 [],
527 [
528 (OperandKind::IdRef, One),
529 (OperandKind::IdRef, One),
530 (OperandKind::IdRef, One),
531 (OperandKind::LiteralInteger, One),
532 (OperandKind::IdRef, One),
533 (OperandKind::IdRef, One),
534 (OperandKind::IdRef, One),
535 (OperandKind::LiteralInteger, One)
536 ],
537 ),
538];
539pub static OPENCL_DEBUGINFO_100_INSTRUCTION_TABLE: InstructionTable<ExtInstOp> =
540 InstructionTable(OPENCL_DEBUGINFO_100_INSTRUCTIONS, std::marker::PhantomData);