1b2a28edaSopenharmony_ci{
2b2a28edaSopenharmony_ci  "copyright" : [
3b2a28edaSopenharmony_ci    "Copyright (c) 2017 The Khronos Group Inc.",
4b2a28edaSopenharmony_ci    "",
5b2a28edaSopenharmony_ci    "Permission is hereby granted, free of charge, to any person obtaining a copy",
6b2a28edaSopenharmony_ci    "of this software and/or associated documentation files (the \"Materials\"),",
7b2a28edaSopenharmony_ci    "to deal in the Materials without restriction, including without limitation",
8b2a28edaSopenharmony_ci    "the rights to use, copy, modify, merge, publish, distribute, sublicense,",
9b2a28edaSopenharmony_ci    "and/or sell copies of the Materials, and to permit persons to whom the",
10b2a28edaSopenharmony_ci    "Materials are furnished to do so, subject to the following conditions:",
11b2a28edaSopenharmony_ci    "",
12b2a28edaSopenharmony_ci    "The above copyright notice and this permission notice shall be included in",
13b2a28edaSopenharmony_ci    "all copies or substantial portions of the Materials.",
14b2a28edaSopenharmony_ci    "",
15b2a28edaSopenharmony_ci    "MODIFICATIONS TO THIS FILE MAY MEAN IT NO LONGER ACCURATELY REFLECTS KHRONOS",
16b2a28edaSopenharmony_ci    "STANDARDS. THE UNMODIFIED, NORMATIVE VERSIONS OF KHRONOS SPECIFICATIONS AND",
17b2a28edaSopenharmony_ci    "HEADER INFORMATION ARE LOCATED AT https://www.khronos.org/registry/ ",
18b2a28edaSopenharmony_ci    "",
19b2a28edaSopenharmony_ci    "THE MATERIALS ARE PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS",
20b2a28edaSopenharmony_ci    "OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,",
21b2a28edaSopenharmony_ci    "FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL",
22b2a28edaSopenharmony_ci    "THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER",
23b2a28edaSopenharmony_ci    "LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING",
24b2a28edaSopenharmony_ci    "FROM,OUT OF OR IN CONNECTION WITH THE MATERIALS OR THE USE OR OTHER DEALINGS",
25b2a28edaSopenharmony_ci    "IN THE MATERIALS."
26b2a28edaSopenharmony_ci  ],
27b2a28edaSopenharmony_ci  "version" : 100,
28b2a28edaSopenharmony_ci  "revision" : 1,
29b2a28edaSopenharmony_ci  "instructions" : [
30b2a28edaSopenharmony_ci    {
31b2a28edaSopenharmony_ci      "opname" : "DebugInfoNone",
32b2a28edaSopenharmony_ci      "opcode" : 0
33b2a28edaSopenharmony_ci    },
34b2a28edaSopenharmony_ci    {
35b2a28edaSopenharmony_ci      "opname" : "DebugCompilationUnit",
36b2a28edaSopenharmony_ci      "opcode" : 1,
37b2a28edaSopenharmony_ci      "operands" : [
38b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Source'" },
39b2a28edaSopenharmony_ci        { "kind" : "LiteralInteger", "name" : "'Version'" },
40b2a28edaSopenharmony_ci        { "kind" : "LiteralInteger", "name" : "'DWARF Version'" }
41b2a28edaSopenharmony_ci      ]
42b2a28edaSopenharmony_ci    },
43b2a28edaSopenharmony_ci    {
44b2a28edaSopenharmony_ci      "opname" : "DebugTypeBasic",
45b2a28edaSopenharmony_ci      "opcode" : 2,
46b2a28edaSopenharmony_ci      "operands" : [
47b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Name'" },
48b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Size'" },
49b2a28edaSopenharmony_ci        { "kind" : "DebugBaseTypeAttributeEncoding", "name" : "'Encoding'" }
50b2a28edaSopenharmony_ci      ]
51b2a28edaSopenharmony_ci    },
52b2a28edaSopenharmony_ci    {
53b2a28edaSopenharmony_ci      "opname" : "DebugTypePointer",
54b2a28edaSopenharmony_ci      "opcode" : 3,
55b2a28edaSopenharmony_ci      "operands" : [
56b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Base Type'" },
57b2a28edaSopenharmony_ci        { "kind" : "StorageClass", "name" : "'Storage Class'" },
58b2a28edaSopenharmony_ci        { "kind" : "DebugInfoFlags", "name" : "'Literal Flags'" }
59b2a28edaSopenharmony_ci      ]
60b2a28edaSopenharmony_ci    },
61b2a28edaSopenharmony_ci    {
62b2a28edaSopenharmony_ci      "opname" : "DebugTypeQualifier",
63b2a28edaSopenharmony_ci      "opcode" : 4,
64b2a28edaSopenharmony_ci      "operands" : [
65b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Base Type'" },
66b2a28edaSopenharmony_ci        { "kind" : "DebugTypeQualifier", "name" : "'Type Qualifier'" }
67b2a28edaSopenharmony_ci      ]
68b2a28edaSopenharmony_ci    },
69b2a28edaSopenharmony_ci    {
70b2a28edaSopenharmony_ci      "opname" : "DebugTypeArray",
71b2a28edaSopenharmony_ci      "opcode" : 5,
72b2a28edaSopenharmony_ci      "operands" : [
73b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Base Type'" },
74b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Component Counts'", "quantifier" : "*" }
75b2a28edaSopenharmony_ci      ]
76b2a28edaSopenharmony_ci    },
77b2a28edaSopenharmony_ci    {
78b2a28edaSopenharmony_ci      "opname" : "DebugTypeVector",
79b2a28edaSopenharmony_ci      "opcode" : 6,
80b2a28edaSopenharmony_ci      "operands" : [
81b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Base Type'" },
82b2a28edaSopenharmony_ci        { "kind" : "LiteralInteger", "name" : "'Component Count'" }
83b2a28edaSopenharmony_ci      ]
84b2a28edaSopenharmony_ci    },
85b2a28edaSopenharmony_ci    {
86b2a28edaSopenharmony_ci      "opname" : "DebugTypedef",
87b2a28edaSopenharmony_ci      "opcode" : 7,
88b2a28edaSopenharmony_ci      "operands" : [
89b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Name'" },
90b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Base Type'" },
91b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Source'" },
92b2a28edaSopenharmony_ci        { "kind" : "LiteralInteger", "name" : "'Line'" },
93b2a28edaSopenharmony_ci        { "kind" : "LiteralInteger", "name" : "'Column'" },
94b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Parent'" }
95b2a28edaSopenharmony_ci      ]
96b2a28edaSopenharmony_ci    },
97b2a28edaSopenharmony_ci    {
98b2a28edaSopenharmony_ci      "opname" : "DebugTypeFunction",
99b2a28edaSopenharmony_ci      "opcode" : 8,
100b2a28edaSopenharmony_ci      "operands" : [
101b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Return Type'" },
102b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Paramter Types'", "quantifier" : "*" }
103b2a28edaSopenharmony_ci      ]
104b2a28edaSopenharmony_ci    },
105b2a28edaSopenharmony_ci    {
106b2a28edaSopenharmony_ci      "opname" : "DebugTypeEnum",
107b2a28edaSopenharmony_ci      "opcode" : 9,
108b2a28edaSopenharmony_ci      "operands" : [
109b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Name'" },
110b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Underlying Type'" },
111b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Source'" },
112b2a28edaSopenharmony_ci        { "kind" : "LiteralInteger", "name" : "'Line'" },
113b2a28edaSopenharmony_ci        { "kind" : "LiteralInteger", "name" : "'Column'" },
114b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Parent'" },
115b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Size'" },
116b2a28edaSopenharmony_ci        { "kind" : "DebugInfoFlags", "name" : "'Flags'" },
117b2a28edaSopenharmony_ci        { "kind" : "PairIdRefIdRef", "name" : "'Value, Name, Value, Name, ...'", "quantifier" : "*" }
118b2a28edaSopenharmony_ci      ]
119b2a28edaSopenharmony_ci    },
120b2a28edaSopenharmony_ci    {
121b2a28edaSopenharmony_ci      "opname" : "DebugTypeComposite",
122b2a28edaSopenharmony_ci      "opcode" : 10,
123b2a28edaSopenharmony_ci      "operands" : [
124b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Name'" },
125b2a28edaSopenharmony_ci        { "kind" : "DebugCompositeType", "name" : "'Tag'" },
126b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Source'" },
127b2a28edaSopenharmony_ci        { "kind" : "LiteralInteger", "name" : "'Line'" },
128b2a28edaSopenharmony_ci        { "kind" : "LiteralInteger", "name" : "'Column'" },
129b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Parent'" },
130b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Size'" },
131b2a28edaSopenharmony_ci        { "kind" : "DebugInfoFlags", "name" : "'Flags'" },
132b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Members'", "quantifier" : "*" }
133b2a28edaSopenharmony_ci      ]
134b2a28edaSopenharmony_ci    },
135b2a28edaSopenharmony_ci    {
136b2a28edaSopenharmony_ci      "opname" : "DebugTypeMember",
137b2a28edaSopenharmony_ci      "opcode" : 11,
138b2a28edaSopenharmony_ci      "operands" : [
139b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Name'" },
140b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Type'" },
141b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Source'" },
142b2a28edaSopenharmony_ci        { "kind" : "LiteralInteger", "name" : "'Line'" },
143b2a28edaSopenharmony_ci        { "kind" : "LiteralInteger", "name" : "'Column'" },
144b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Parent'" },
145b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Offset'" },
146b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Size'" },
147b2a28edaSopenharmony_ci        { "kind" : "DebugInfoFlags", "name" : "'Flags'" },
148b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Value'", "quantifier" : "?" }
149b2a28edaSopenharmony_ci      ]
150b2a28edaSopenharmony_ci    },
151b2a28edaSopenharmony_ci    {
152b2a28edaSopenharmony_ci      "opname" : "DebugTypeInheritance",
153b2a28edaSopenharmony_ci      "opcode" : 12,
154b2a28edaSopenharmony_ci      "operands" : [
155b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Child'" },
156b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Parent'" },
157b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Offset'" },
158b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Size'" },
159b2a28edaSopenharmony_ci        { "kind" : "DebugInfoFlags", "name" : "'Flags'" }
160b2a28edaSopenharmony_ci      ]
161b2a28edaSopenharmony_ci    },
162b2a28edaSopenharmony_ci    {
163b2a28edaSopenharmony_ci      "opname" : "DebugTypePtrToMember",
164b2a28edaSopenharmony_ci      "opcode" : 13,
165b2a28edaSopenharmony_ci      "operands" : [
166b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Member Type'" },
167b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Parent'" }
168b2a28edaSopenharmony_ci      ]
169b2a28edaSopenharmony_ci    },
170b2a28edaSopenharmony_ci    {
171b2a28edaSopenharmony_ci      "opname" : "DebugTypeTemplate",
172b2a28edaSopenharmony_ci      "opcode" : 14,
173b2a28edaSopenharmony_ci      "operands" : [
174b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Target'" },
175b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Parameters'", "quantifier" : "*" }
176b2a28edaSopenharmony_ci      ]
177b2a28edaSopenharmony_ci    },
178b2a28edaSopenharmony_ci    {
179b2a28edaSopenharmony_ci      "opname" : "DebugTypeTemplateParameter",
180b2a28edaSopenharmony_ci      "opcode" : 15,
181b2a28edaSopenharmony_ci      "operands" : [
182b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Name'" },
183b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Actual Type'" },
184b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Value'" },
185b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Source'" },
186b2a28edaSopenharmony_ci        { "kind" : "LiteralInteger", "name" : "'Line'" },
187b2a28edaSopenharmony_ci        { "kind" : "LiteralInteger", "name" : "'Column'" }
188b2a28edaSopenharmony_ci      ]
189b2a28edaSopenharmony_ci    },
190b2a28edaSopenharmony_ci    {
191b2a28edaSopenharmony_ci      "opname" : "DebugTypeTemplateTemplateParameter",
192b2a28edaSopenharmony_ci      "opcode" : 16,
193b2a28edaSopenharmony_ci      "operands" : [
194b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Name'" },
195b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Template Name'" },
196b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Source'" },
197b2a28edaSopenharmony_ci        { "kind" : "LiteralInteger", "name" : "'Line'" },
198b2a28edaSopenharmony_ci        { "kind" : "LiteralInteger", "name" : "'Column'" }
199b2a28edaSopenharmony_ci      ]
200b2a28edaSopenharmony_ci    },
201b2a28edaSopenharmony_ci    {
202b2a28edaSopenharmony_ci      "opname" : "DebugTypeTemplateParameterPack",
203b2a28edaSopenharmony_ci      "opcode" : 17,
204b2a28edaSopenharmony_ci      "operands" : [
205b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Name'" },
206b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Source'" },
207b2a28edaSopenharmony_ci        { "kind" : "LiteralInteger", "name" : "'Line'" },
208b2a28edaSopenharmony_ci        { "kind" : "LiteralInteger", "name" : "'Column'" },
209b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Template Parameters'", "quantifier" : "*" }
210b2a28edaSopenharmony_ci      ]
211b2a28edaSopenharmony_ci    },
212b2a28edaSopenharmony_ci    {
213b2a28edaSopenharmony_ci      "opname" : "DebugGlobalVariable",
214b2a28edaSopenharmony_ci      "opcode" : 18,
215b2a28edaSopenharmony_ci      "operands" : [
216b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Name'" },
217b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Type'" },
218b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Source'" },
219b2a28edaSopenharmony_ci        { "kind" : "LiteralInteger", "name" : "'Line'" },
220b2a28edaSopenharmony_ci        { "kind" : "LiteralInteger", "name" : "'Column'" },
221b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Parent'" },
222b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Linkage Name'" },
223b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Variable'" },
224b2a28edaSopenharmony_ci        { "kind" : "DebugInfoFlags", "name" : "'Flags'" },
225b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Static Member Declaration'", "quantifier" : "?" }
226b2a28edaSopenharmony_ci      ]
227b2a28edaSopenharmony_ci    },
228b2a28edaSopenharmony_ci    {
229b2a28edaSopenharmony_ci      "opname" : "DebugFunctionDeclaration",
230b2a28edaSopenharmony_ci      "opcode" : 19,
231b2a28edaSopenharmony_ci      "operands" : [
232b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Name'" },
233b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Type'" },
234b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Source'" },
235b2a28edaSopenharmony_ci        { "kind" : "LiteralInteger", "name" : "'Line'" },
236b2a28edaSopenharmony_ci        { "kind" : "LiteralInteger", "name" : "'Column'" },
237b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Parent'" },
238b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Linkage Name'" },
239b2a28edaSopenharmony_ci        { "kind" : "DebugInfoFlags", "name" : "'Flags'" }
240b2a28edaSopenharmony_ci      ]
241b2a28edaSopenharmony_ci    },
242b2a28edaSopenharmony_ci    {
243b2a28edaSopenharmony_ci      "opname" : "DebugFunction",
244b2a28edaSopenharmony_ci      "opcode" : 20,
245b2a28edaSopenharmony_ci      "operands" : [
246b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Name'" },
247b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Type'" },
248b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Source'" },
249b2a28edaSopenharmony_ci        { "kind" : "LiteralInteger", "name" : "'Line'" },
250b2a28edaSopenharmony_ci        { "kind" : "LiteralInteger", "name" : "'Column'" },
251b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Parent'" },
252b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Linkage Name'" },
253b2a28edaSopenharmony_ci        { "kind" : "DebugInfoFlags", "name" : "'Flags'" },
254b2a28edaSopenharmony_ci        { "kind" : "LiteralInteger", "name" : "'Scope Line'" },
255b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Function'" },
256b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Declaration'", "quantifier" : "?" }
257b2a28edaSopenharmony_ci      ]
258b2a28edaSopenharmony_ci    },
259b2a28edaSopenharmony_ci    {
260b2a28edaSopenharmony_ci      "opname" : "DebugLexicalBlock",
261b2a28edaSopenharmony_ci      "opcode" : 21,
262b2a28edaSopenharmony_ci      "operands" : [
263b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Source'" },
264b2a28edaSopenharmony_ci        { "kind" : "LiteralInteger", "name" : "'Line'" },
265b2a28edaSopenharmony_ci        { "kind" : "LiteralInteger", "name" : "'Column'" },
266b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Parent'" },
267b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Name'", "quantifier" : "?" }
268b2a28edaSopenharmony_ci      ]
269b2a28edaSopenharmony_ci    },
270b2a28edaSopenharmony_ci    {
271b2a28edaSopenharmony_ci      "opname" : "DebugLexicalBlockDiscriminator",
272b2a28edaSopenharmony_ci      "opcode" : 22,
273b2a28edaSopenharmony_ci      "operands" : [
274b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Scope'" },
275b2a28edaSopenharmony_ci        { "kind" : "LiteralInteger", "name" : "'Discriminator'" },
276b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Parent'" }
277b2a28edaSopenharmony_ci      ]
278b2a28edaSopenharmony_ci    },
279b2a28edaSopenharmony_ci    {
280b2a28edaSopenharmony_ci      "opname" : "DebugScope",
281b2a28edaSopenharmony_ci      "opcode" : 23,
282b2a28edaSopenharmony_ci      "operands" : [
283b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Scope'" },
284b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Inlined At'", "quantifier" : "?" }
285b2a28edaSopenharmony_ci      ]
286b2a28edaSopenharmony_ci    },
287b2a28edaSopenharmony_ci    {
288b2a28edaSopenharmony_ci      "opname" : "DebugNoScope",
289b2a28edaSopenharmony_ci      "opcode" : 24
290b2a28edaSopenharmony_ci    },
291b2a28edaSopenharmony_ci    {
292b2a28edaSopenharmony_ci      "opname" : "DebugInlinedAt",
293b2a28edaSopenharmony_ci      "opcode" : 25,
294b2a28edaSopenharmony_ci      "operands" : [
295b2a28edaSopenharmony_ci        { "kind" : "LiteralInteger", "name" : "'Line'" },
296b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Scope'" },
297b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Inlined'", "quantifier" : "?" }
298b2a28edaSopenharmony_ci      ]
299b2a28edaSopenharmony_ci    },
300b2a28edaSopenharmony_ci    {
301b2a28edaSopenharmony_ci      "opname" : "DebugLocalVariable",
302b2a28edaSopenharmony_ci      "opcode" : 26,
303b2a28edaSopenharmony_ci      "operands" : [
304b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Name'" },
305b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Type'" },
306b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Source'" },
307b2a28edaSopenharmony_ci        { "kind" : "LiteralInteger", "name" : "'Line'" },
308b2a28edaSopenharmony_ci        { "kind" : "LiteralInteger", "name" : "'Column'" },
309b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Parent'" },
310b2a28edaSopenharmony_ci        { "kind" : "LiteralInteger", "name" : "'Arg Number'", "quantifier" : "?" }
311b2a28edaSopenharmony_ci      ]
312b2a28edaSopenharmony_ci    },
313b2a28edaSopenharmony_ci    {
314b2a28edaSopenharmony_ci      "opname" : "DebugInlinedVariable",
315b2a28edaSopenharmony_ci      "opcode" : 27,
316b2a28edaSopenharmony_ci      "operands" : [
317b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Variable'" },
318b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Inlined'" }
319b2a28edaSopenharmony_ci      ]
320b2a28edaSopenharmony_ci    },
321b2a28edaSopenharmony_ci    {
322b2a28edaSopenharmony_ci      "opname" : "DebugDeclare",
323b2a28edaSopenharmony_ci      "opcode" : 28,
324b2a28edaSopenharmony_ci      "operands" : [
325b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Local Variable'" },
326b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Variable'" },
327b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Expression'" }
328b2a28edaSopenharmony_ci      ]
329b2a28edaSopenharmony_ci    },
330b2a28edaSopenharmony_ci    {
331b2a28edaSopenharmony_ci      "opname" : "DebugValue",
332b2a28edaSopenharmony_ci      "opcode" : 29,
333b2a28edaSopenharmony_ci      "operands" : [
334b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Value'" },
335b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Expression'" },
336b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Indexes'", "quantifier" : "*" }
337b2a28edaSopenharmony_ci      ]
338b2a28edaSopenharmony_ci    },
339b2a28edaSopenharmony_ci    {
340b2a28edaSopenharmony_ci      "opname" : "DebugOperation",
341b2a28edaSopenharmony_ci      "opcode" : 30,
342b2a28edaSopenharmony_ci      "operands" : [
343b2a28edaSopenharmony_ci        { "kind" : "DebugOperation", "name" : "'OpCode'" },
344b2a28edaSopenharmony_ci        { "kind" : "LiteralInteger", "name" : "'Operands ...'", "quantifier" : "*" }
345b2a28edaSopenharmony_ci      ]
346b2a28edaSopenharmony_ci    },
347b2a28edaSopenharmony_ci    {
348b2a28edaSopenharmony_ci      "opname" : "DebugExpression",
349b2a28edaSopenharmony_ci      "opcode" : 31,
350b2a28edaSopenharmony_ci      "operands" : [
351b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Operands ...'", "quantifier" : "*" }
352b2a28edaSopenharmony_ci      ]
353b2a28edaSopenharmony_ci    },
354b2a28edaSopenharmony_ci    {
355b2a28edaSopenharmony_ci      "opname" : "DebugMacroDef",
356b2a28edaSopenharmony_ci      "opcode" : 32,
357b2a28edaSopenharmony_ci      "operands" : [
358b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Source'" },
359b2a28edaSopenharmony_ci        { "kind" : "LiteralInteger", "name" : "'Line'" },
360b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Name'" },
361b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Value'", "quantifier" : "?" }
362b2a28edaSopenharmony_ci      ]
363b2a28edaSopenharmony_ci    },
364b2a28edaSopenharmony_ci    {
365b2a28edaSopenharmony_ci      "opname" : "DebugMacroUndef",
366b2a28edaSopenharmony_ci      "opcode" : 33,
367b2a28edaSopenharmony_ci      "operands" : [
368b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Source'" },
369b2a28edaSopenharmony_ci        { "kind" : "LiteralInteger", "name" : "'Line'" },
370b2a28edaSopenharmony_ci        { "kind" : "IdRef", "name" : "'Macro'" }
371b2a28edaSopenharmony_ci      ]
372b2a28edaSopenharmony_ci    }
373b2a28edaSopenharmony_ci  ],
374b2a28edaSopenharmony_ci  "operand_kinds" : [
375b2a28edaSopenharmony_ci    {
376b2a28edaSopenharmony_ci      "category" : "BitEnum",
377b2a28edaSopenharmony_ci      "kind" : "DebugInfoFlags",
378b2a28edaSopenharmony_ci      "enumerants" : [
379b2a28edaSopenharmony_ci        {
380b2a28edaSopenharmony_ci          "enumerant" : "None",
381b2a28edaSopenharmony_ci          "value" : "0x0000"
382b2a28edaSopenharmony_ci        },
383b2a28edaSopenharmony_ci        {
384b2a28edaSopenharmony_ci          "enumerant" : "FlagIsProtected",
385b2a28edaSopenharmony_ci          "value" : "0x01"
386b2a28edaSopenharmony_ci        },
387b2a28edaSopenharmony_ci        {
388b2a28edaSopenharmony_ci          "enumerant" : "FlagIsPrivate",
389b2a28edaSopenharmony_ci          "value" : "0x02"
390b2a28edaSopenharmony_ci        },
391b2a28edaSopenharmony_ci        {
392b2a28edaSopenharmony_ci          "enumerant" : "FlagIsPublic",
393b2a28edaSopenharmony_ci          "value" : "0x03"
394b2a28edaSopenharmony_ci        },
395b2a28edaSopenharmony_ci        {
396b2a28edaSopenharmony_ci          "enumerant" : "FlagIsLocal",
397b2a28edaSopenharmony_ci          "value" : "0x04"
398b2a28edaSopenharmony_ci        },
399b2a28edaSopenharmony_ci        {
400b2a28edaSopenharmony_ci          "enumerant" : "FlagIsDefinition",
401b2a28edaSopenharmony_ci          "value" : "0x08"
402b2a28edaSopenharmony_ci        },
403b2a28edaSopenharmony_ci        {
404b2a28edaSopenharmony_ci          "enumerant" : "FlagFwdDecl",
405b2a28edaSopenharmony_ci          "value" : "0x10"
406b2a28edaSopenharmony_ci        },
407b2a28edaSopenharmony_ci        {
408b2a28edaSopenharmony_ci          "enumerant" : "FlagArtificial",
409b2a28edaSopenharmony_ci          "value" : "0x20"
410b2a28edaSopenharmony_ci        },
411b2a28edaSopenharmony_ci        {
412b2a28edaSopenharmony_ci          "enumerant" : "FlagExplicit",
413b2a28edaSopenharmony_ci          "value" : "0x40"
414b2a28edaSopenharmony_ci        },
415b2a28edaSopenharmony_ci        {
416b2a28edaSopenharmony_ci          "enumerant" : "FlagPrototyped",
417b2a28edaSopenharmony_ci          "value" : "0x80"
418b2a28edaSopenharmony_ci        },
419b2a28edaSopenharmony_ci        {
420b2a28edaSopenharmony_ci          "enumerant" : "FlagObjectPointer",
421b2a28edaSopenharmony_ci          "value" : "0x100"
422b2a28edaSopenharmony_ci        },
423b2a28edaSopenharmony_ci        {
424b2a28edaSopenharmony_ci          "enumerant" : "FlagStaticMember",
425b2a28edaSopenharmony_ci          "value" : "0x200"
426b2a28edaSopenharmony_ci        },
427b2a28edaSopenharmony_ci        {
428b2a28edaSopenharmony_ci          "enumerant" : "FlagIndirectVariable",
429b2a28edaSopenharmony_ci          "value" : "0x400"
430b2a28edaSopenharmony_ci        },
431b2a28edaSopenharmony_ci        {
432b2a28edaSopenharmony_ci          "enumerant" : "FlagLValueReference",
433b2a28edaSopenharmony_ci          "value" : "0x800"
434b2a28edaSopenharmony_ci        },
435b2a28edaSopenharmony_ci        {
436b2a28edaSopenharmony_ci          "enumerant" : "FlagRValueReference",
437b2a28edaSopenharmony_ci          "value" : "0x1000"
438b2a28edaSopenharmony_ci        },
439b2a28edaSopenharmony_ci        {
440b2a28edaSopenharmony_ci          "enumerant" : "FlagIsOptimized",
441b2a28edaSopenharmony_ci          "value" : "0x2000"
442b2a28edaSopenharmony_ci        }
443b2a28edaSopenharmony_ci      ]
444b2a28edaSopenharmony_ci    },
445b2a28edaSopenharmony_ci    {
446b2a28edaSopenharmony_ci      "category" : "ValueEnum",
447b2a28edaSopenharmony_ci      "kind" : "DebugBaseTypeAttributeEncoding",
448b2a28edaSopenharmony_ci      "enumerants" : [
449b2a28edaSopenharmony_ci        {
450b2a28edaSopenharmony_ci          "enumerant" : "Unspecified",
451b2a28edaSopenharmony_ci          "value" : "0"
452b2a28edaSopenharmony_ci        },
453b2a28edaSopenharmony_ci        {
454b2a28edaSopenharmony_ci          "enumerant" : "Address",
455b2a28edaSopenharmony_ci          "value" : "1"
456b2a28edaSopenharmony_ci        },
457b2a28edaSopenharmony_ci        {
458b2a28edaSopenharmony_ci          "enumerant" : "Boolean",
459b2a28edaSopenharmony_ci          "value" : "2"
460b2a28edaSopenharmony_ci        },
461b2a28edaSopenharmony_ci        {
462b2a28edaSopenharmony_ci          "enumerant" : "Float",
463b2a28edaSopenharmony_ci          "value" : "4"
464b2a28edaSopenharmony_ci        },
465b2a28edaSopenharmony_ci        {
466b2a28edaSopenharmony_ci          "enumerant" : "Signed",
467b2a28edaSopenharmony_ci          "value" : "5"
468b2a28edaSopenharmony_ci        },
469b2a28edaSopenharmony_ci        {
470b2a28edaSopenharmony_ci          "enumerant" : "SignedChar",
471b2a28edaSopenharmony_ci          "value" : "6"
472b2a28edaSopenharmony_ci        },
473b2a28edaSopenharmony_ci        {
474b2a28edaSopenharmony_ci          "enumerant" : "Unsigned",
475b2a28edaSopenharmony_ci          "value" : "7"
476b2a28edaSopenharmony_ci        },
477b2a28edaSopenharmony_ci        {
478b2a28edaSopenharmony_ci          "enumerant" : "UnsignedChar",
479b2a28edaSopenharmony_ci          "value" : "8"
480b2a28edaSopenharmony_ci        }
481b2a28edaSopenharmony_ci      ]
482b2a28edaSopenharmony_ci    },
483b2a28edaSopenharmony_ci    {
484b2a28edaSopenharmony_ci      "category" : "ValueEnum",
485b2a28edaSopenharmony_ci      "kind" : "DebugCompositeType",
486b2a28edaSopenharmony_ci      "enumerants" : [
487b2a28edaSopenharmony_ci        {
488b2a28edaSopenharmony_ci          "enumerant" : "Class",
489b2a28edaSopenharmony_ci          "value" : "0"
490b2a28edaSopenharmony_ci        },
491b2a28edaSopenharmony_ci        {
492b2a28edaSopenharmony_ci          "enumerant" : "Structure",
493b2a28edaSopenharmony_ci          "value" : "1"
494b2a28edaSopenharmony_ci        },
495b2a28edaSopenharmony_ci        {
496b2a28edaSopenharmony_ci          "enumerant" : "Union",
497b2a28edaSopenharmony_ci          "value" : "2"
498b2a28edaSopenharmony_ci        }
499b2a28edaSopenharmony_ci      ]
500b2a28edaSopenharmony_ci    },
501b2a28edaSopenharmony_ci    {
502b2a28edaSopenharmony_ci      "category" : "ValueEnum",
503b2a28edaSopenharmony_ci      "kind" : "DebugTypeQualifier",
504b2a28edaSopenharmony_ci      "enumerants" : [
505b2a28edaSopenharmony_ci        {
506b2a28edaSopenharmony_ci          "enumerant" : "ConstType",
507b2a28edaSopenharmony_ci          "value" : "0"
508b2a28edaSopenharmony_ci        },
509b2a28edaSopenharmony_ci        {
510b2a28edaSopenharmony_ci          "enumerant" : "VolatileType",
511b2a28edaSopenharmony_ci          "value" : "1"
512b2a28edaSopenharmony_ci        },
513b2a28edaSopenharmony_ci        {
514b2a28edaSopenharmony_ci          "enumerant" : "RestrictType",
515b2a28edaSopenharmony_ci          "value" : "2"
516b2a28edaSopenharmony_ci        }
517b2a28edaSopenharmony_ci      ]
518b2a28edaSopenharmony_ci    },
519b2a28edaSopenharmony_ci    {
520b2a28edaSopenharmony_ci      "category" : "ValueEnum",
521b2a28edaSopenharmony_ci      "kind" : "DebugOperation",
522b2a28edaSopenharmony_ci      "enumerants" : [
523b2a28edaSopenharmony_ci        {
524b2a28edaSopenharmony_ci          "enumerant" : "Deref",
525b2a28edaSopenharmony_ci          "value" : "0"
526b2a28edaSopenharmony_ci        },
527b2a28edaSopenharmony_ci        {
528b2a28edaSopenharmony_ci          "enumerant" : "Plus",
529b2a28edaSopenharmony_ci          "value" : "1"
530b2a28edaSopenharmony_ci        },
531b2a28edaSopenharmony_ci        {
532b2a28edaSopenharmony_ci          "enumerant" : "Minus",
533b2a28edaSopenharmony_ci          "value" : "2"
534b2a28edaSopenharmony_ci        },
535b2a28edaSopenharmony_ci        {
536b2a28edaSopenharmony_ci          "enumerant" : "PlusUconst",
537b2a28edaSopenharmony_ci          "value" : "3",
538b2a28edaSopenharmony_ci          "parameters" : [
539b2a28edaSopenharmony_ci             { "kind" : "LiteralInteger" }
540b2a28edaSopenharmony_ci          ]
541b2a28edaSopenharmony_ci        },
542b2a28edaSopenharmony_ci        {
543b2a28edaSopenharmony_ci          "enumerant" : "BitPiece",
544b2a28edaSopenharmony_ci          "value" : "4",
545b2a28edaSopenharmony_ci          "parameters" : [
546b2a28edaSopenharmony_ci             { "kind" : "LiteralInteger" },
547b2a28edaSopenharmony_ci             { "kind" : "LiteralInteger" }
548b2a28edaSopenharmony_ci          ]
549b2a28edaSopenharmony_ci        },
550b2a28edaSopenharmony_ci        {
551b2a28edaSopenharmony_ci          "enumerant" : "Swap",
552b2a28edaSopenharmony_ci          "value" : "5"
553b2a28edaSopenharmony_ci        },
554b2a28edaSopenharmony_ci        {
555b2a28edaSopenharmony_ci          "enumerant" : "Xderef",
556b2a28edaSopenharmony_ci          "value" : "6"
557b2a28edaSopenharmony_ci        },
558b2a28edaSopenharmony_ci        {
559b2a28edaSopenharmony_ci          "enumerant" : "StackValue",
560b2a28edaSopenharmony_ci          "value" : "7"
561b2a28edaSopenharmony_ci        },
562b2a28edaSopenharmony_ci        {
563b2a28edaSopenharmony_ci          "enumerant" : "Constu",
564b2a28edaSopenharmony_ci          "value" : "8",
565b2a28edaSopenharmony_ci          "parameters" : [
566b2a28edaSopenharmony_ci             { "kind" : "LiteralInteger" }
567b2a28edaSopenharmony_ci          ]
568b2a28edaSopenharmony_ci        }
569b2a28edaSopenharmony_ci      ]
570b2a28edaSopenharmony_ci    }
571b2a28edaSopenharmony_ci  ]
572b2a28edaSopenharmony_ci}
573