aslprimaries.y revision 1.1.1.14 1 1.1 christos NoEcho('
2 1.1 christos /******************************************************************************
3 1.1 christos *
4 1.1 christos * Module Name: aslprimaries.y - Rules for primary ASL operators
5 1.1.1.3 christos * - Keep this file synched with the
6 1.1.1.3 christos * CvParseOpBlockType function in cvcompiler.c
7 1.1 christos *
8 1.1 christos *****************************************************************************/
9 1.1 christos
10 1.1.1.13 christos /******************************************************************************
11 1.1.1.13 christos *
12 1.1.1.13 christos * 1. Copyright Notice
13 1.1.1.13 christos *
14 1.1.1.14 christos * Some or all of this work - Copyright (c) 1999 - 2025, Intel Corp.
15 1.1 christos * All rights reserved.
16 1.1 christos *
17 1.1.1.13 christos * 2. License
18 1.1.1.13 christos *
19 1.1.1.13 christos * 2.1. This is your license from Intel Corp. under its intellectual property
20 1.1.1.13 christos * rights. You may have additional license terms from the party that provided
21 1.1.1.13 christos * you this software, covering your right to use that party's intellectual
22 1.1.1.13 christos * property rights.
23 1.1.1.13 christos *
24 1.1.1.13 christos * 2.2. Intel grants, free of charge, to any person ("Licensee") obtaining a
25 1.1.1.13 christos * copy of the source code appearing in this file ("Covered Code") an
26 1.1.1.13 christos * irrevocable, perpetual, worldwide license under Intel's copyrights in the
27 1.1.1.13 christos * base code distributed originally by Intel ("Original Intel Code") to copy,
28 1.1.1.13 christos * make derivatives, distribute, use and display any portion of the Covered
29 1.1.1.13 christos * Code in any form, with the right to sublicense such rights; and
30 1.1.1.13 christos *
31 1.1.1.13 christos * 2.3. Intel grants Licensee a non-exclusive and non-transferable patent
32 1.1.1.13 christos * license (with the right to sublicense), under only those claims of Intel
33 1.1.1.13 christos * patents that are infringed by the Original Intel Code, to make, use, sell,
34 1.1.1.13 christos * offer to sell, and import the Covered Code and derivative works thereof
35 1.1.1.13 christos * solely to the minimum extent necessary to exercise the above copyright
36 1.1.1.13 christos * license, and in no event shall the patent license extend to any additions
37 1.1.1.13 christos * to or modifications of the Original Intel Code. No other license or right
38 1.1.1.13 christos * is granted directly or by implication, estoppel or otherwise;
39 1.1.1.13 christos *
40 1.1.1.13 christos * The above copyright and patent license is granted only if the following
41 1.1.1.13 christos * conditions are met:
42 1.1.1.13 christos *
43 1.1.1.13 christos * 3. Conditions
44 1.1.1.13 christos *
45 1.1.1.13 christos * 3.1. Redistribution of Source with Rights to Further Distribute Source.
46 1.1.1.13 christos * Redistribution of source code of any substantial portion of the Covered
47 1.1.1.13 christos * Code or modification with rights to further distribute source must include
48 1.1.1.13 christos * the above Copyright Notice, the above License, this list of Conditions,
49 1.1.1.13 christos * and the following Disclaimer and Export Compliance provision. In addition,
50 1.1.1.13 christos * Licensee must cause all Covered Code to which Licensee contributes to
51 1.1.1.13 christos * contain a file documenting the changes Licensee made to create that Covered
52 1.1.1.13 christos * Code and the date of any change. Licensee must include in that file the
53 1.1.1.13 christos * documentation of any changes made by any predecessor Licensee. Licensee
54 1.1.1.13 christos * must include a prominent statement that the modification is derived,
55 1.1.1.13 christos * directly or indirectly, from Original Intel Code.
56 1.1.1.13 christos *
57 1.1.1.13 christos * 3.2. Redistribution of Source with no Rights to Further Distribute Source.
58 1.1.1.13 christos * Redistribution of source code of any substantial portion of the Covered
59 1.1.1.13 christos * Code or modification without rights to further distribute source must
60 1.1.1.13 christos * include the following Disclaimer and Export Compliance provision in the
61 1.1.1.13 christos * documentation and/or other materials provided with distribution. In
62 1.1.1.13 christos * addition, Licensee may not authorize further sublicense of source of any
63 1.1.1.13 christos * portion of the Covered Code, and must include terms to the effect that the
64 1.1.1.13 christos * license from Licensee to its licensee is limited to the intellectual
65 1.1.1.13 christos * property embodied in the software Licensee provides to its licensee, and
66 1.1.1.13 christos * not to intellectual property embodied in modifications its licensee may
67 1.1.1.13 christos * make.
68 1.1.1.13 christos *
69 1.1.1.13 christos * 3.3. Redistribution of Executable. Redistribution in executable form of any
70 1.1.1.13 christos * substantial portion of the Covered Code or modification must reproduce the
71 1.1.1.13 christos * above Copyright Notice, and the following Disclaimer and Export Compliance
72 1.1.1.13 christos * provision in the documentation and/or other materials provided with the
73 1.1.1.13 christos * distribution.
74 1.1.1.13 christos *
75 1.1.1.13 christos * 3.4. Intel retains all right, title, and interest in and to the Original
76 1.1.1.13 christos * Intel Code.
77 1.1.1.13 christos *
78 1.1.1.13 christos * 3.5. Neither the name Intel nor any other trademark owned or controlled by
79 1.1.1.13 christos * Intel shall be used in advertising or otherwise to promote the sale, use or
80 1.1.1.13 christos * other dealings in products derived from or relating to the Covered Code
81 1.1.1.13 christos * without prior written authorization from Intel.
82 1.1.1.13 christos *
83 1.1.1.13 christos * 4. Disclaimer and Export Compliance
84 1.1.1.13 christos *
85 1.1.1.13 christos * 4.1. INTEL MAKES NO WARRANTY OF ANY KIND REGARDING ANY SOFTWARE PROVIDED
86 1.1.1.13 christos * HERE. ANY SOFTWARE ORIGINATING FROM INTEL OR DERIVED FROM INTEL SOFTWARE
87 1.1.1.13 christos * IS PROVIDED "AS IS," AND INTEL WILL NOT PROVIDE ANY SUPPORT, ASSISTANCE,
88 1.1.1.13 christos * INSTALLATION, TRAINING OR OTHER SERVICES. INTEL WILL NOT PROVIDE ANY
89 1.1.1.13 christos * UPDATES, ENHANCEMENTS OR EXTENSIONS. INTEL SPECIFICALLY DISCLAIMS ANY
90 1.1.1.13 christos * IMPLIED WARRANTIES OF MERCHANTABILITY, NONINFRINGEMENT AND FITNESS FOR A
91 1.1.1.13 christos * PARTICULAR PURPOSE.
92 1.1.1.13 christos *
93 1.1.1.13 christos * 4.2. IN NO EVENT SHALL INTEL HAVE ANY LIABILITY TO LICENSEE, ITS LICENSEES
94 1.1.1.13 christos * OR ANY OTHER THIRD PARTY, FOR ANY LOST PROFITS, LOST DATA, LOSS OF USE OR
95 1.1.1.13 christos * COSTS OF PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES, OR FOR ANY INDIRECT,
96 1.1.1.13 christos * SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THIS AGREEMENT, UNDER ANY
97 1.1.1.13 christos * CAUSE OF ACTION OR THEORY OF LIABILITY, AND IRRESPECTIVE OF WHETHER INTEL
98 1.1.1.13 christos * HAS ADVANCE NOTICE OF THE POSSIBILITY OF SUCH DAMAGES. THESE LIMITATIONS
99 1.1.1.13 christos * SHALL APPLY NOTWITHSTANDING THE FAILURE OF THE ESSENTIAL PURPOSE OF ANY
100 1.1.1.13 christos * LIMITED REMEDY.
101 1.1.1.13 christos *
102 1.1.1.13 christos * 4.3. Licensee shall not export, either directly or indirectly, any of this
103 1.1.1.13 christos * software or system incorporating such software without first obtaining any
104 1.1.1.13 christos * required license or other approval from the U. S. Department of Commerce or
105 1.1.1.13 christos * any other agency or department of the United States Government. In the
106 1.1.1.13 christos * event Licensee exports any such software from the United States or
107 1.1.1.13 christos * re-exports any such software from a foreign destination, Licensee shall
108 1.1.1.13 christos * ensure that the distribution and export/re-export of the software is in
109 1.1.1.13 christos * compliance with all laws, regulations, orders, or other restrictions of the
110 1.1.1.13 christos * U.S. Export Administration Regulations. Licensee agrees that neither it nor
111 1.1.1.13 christos * any of its subsidiaries will export/re-export any technical data, process,
112 1.1.1.13 christos * software, or service, directly or indirectly, to any country for which the
113 1.1.1.13 christos * United States government or any agency thereof requires an export license,
114 1.1.1.13 christos * other governmental approval, or letter of assurance, without first obtaining
115 1.1.1.13 christos * such license, approval or letter.
116 1.1.1.13 christos *
117 1.1.1.13 christos *****************************************************************************
118 1.1.1.13 christos *
119 1.1.1.13 christos * Alternatively, you may choose to be licensed under the terms of the
120 1.1.1.13 christos * following license:
121 1.1.1.13 christos *
122 1.1 christos * Redistribution and use in source and binary forms, with or without
123 1.1 christos * modification, are permitted provided that the following conditions
124 1.1 christos * are met:
125 1.1 christos * 1. Redistributions of source code must retain the above copyright
126 1.1 christos * notice, this list of conditions, and the following disclaimer,
127 1.1 christos * without modification.
128 1.1 christos * 2. Redistributions in binary form must reproduce at minimum a disclaimer
129 1.1 christos * substantially similar to the "NO WARRANTY" disclaimer below
130 1.1 christos * ("Disclaimer") and any redistribution must be conditioned upon
131 1.1 christos * including a substantially similar Disclaimer requirement for further
132 1.1 christos * binary redistribution.
133 1.1 christos * 3. Neither the names of the above-listed copyright holders nor the names
134 1.1 christos * of any contributors may be used to endorse or promote products derived
135 1.1 christos * from this software without specific prior written permission.
136 1.1 christos *
137 1.1 christos * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
138 1.1 christos * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
139 1.1.1.10 christos * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
140 1.1 christos * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
141 1.1.1.13 christos * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
142 1.1.1.13 christos * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
143 1.1.1.13 christos * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
144 1.1.1.13 christos * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
145 1.1.1.13 christos * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
146 1.1.1.13 christos * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
147 1.1.1.13 christos * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
148 1.1.1.13 christos *
149 1.1.1.13 christos * Alternatively, you may choose to be licensed under the terms of the
150 1.1.1.13 christos * GNU General Public License ("GPL") version 2 as published by the Free
151 1.1.1.13 christos * Software Foundation.
152 1.1.1.13 christos *
153 1.1.1.13 christos *****************************************************************************/
154 1.1 christos
155 1.1 christos ')
156 1.1 christos
157 1.1 christos
158 1.1 christos /*******************************************************************************
159 1.1 christos *
160 1.1 christos * ASL Primary Terms
161 1.1 christos *
162 1.1 christos ******************************************************************************/
163 1.1 christos
164 1.1 christos AccessAsTerm
165 1.1.1.2 christos : PARSEOP_ACCESSAS
166 1.1.1.2 christos PARSEOP_OPEN_PAREN
167 1.1 christos AccessTypeKeyword
168 1.1 christos OptionalAccessAttribTerm
169 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrCreateOp (PARSEOP_ACCESSAS,2,$3,$4);}
170 1.1.1.2 christos | PARSEOP_ACCESSAS
171 1.1.1.2 christos PARSEOP_OPEN_PAREN
172 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
173 1.1 christos ;
174 1.1 christos
175 1.1 christos AcquireTerm
176 1.1.1.2 christos : PARSEOP_ACQUIRE
177 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp(PARSEOP_ACQUIRE);}
178 1.1 christos SuperName
179 1.1 christos ',' WordConstExpr
180 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrLinkOpChildren ($<n>3,2,$4,$6);}
181 1.1.1.2 christos | PARSEOP_ACQUIRE
182 1.1.1.2 christos PARSEOP_OPEN_PAREN
183 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
184 1.1 christos ;
185 1.1 christos
186 1.1 christos AddTerm
187 1.1.1.2 christos : PARSEOP_ADD
188 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_ADD);}
189 1.1 christos TermArg
190 1.1 christos TermArgItem
191 1.1 christos Target
192 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrLinkOpChildren ($<n>3,3,$4,$5,$6);}
193 1.1.1.2 christos | PARSEOP_ADD
194 1.1.1.2 christos PARSEOP_OPEN_PAREN
195 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
196 1.1 christos ;
197 1.1 christos
198 1.1 christos AliasTerm
199 1.1.1.2 christos : PARSEOP_ALIAS
200 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_ALIAS);}
201 1.1 christos NameString
202 1.1 christos NameStringItem
203 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrLinkOpChildren ($<n>3,2,$4,
204 1.1.1.4 christos TrSetOpFlags ($5, OP_IS_NAME_DECLARATION));}
205 1.1.1.2 christos | PARSEOP_ALIAS
206 1.1.1.2 christos PARSEOP_OPEN_PAREN
207 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
208 1.1 christos ;
209 1.1 christos
210 1.1 christos AndTerm
211 1.1.1.2 christos : PARSEOP_AND
212 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_AND);}
213 1.1 christos TermArg
214 1.1 christos TermArgItem
215 1.1 christos Target
216 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrLinkOpChildren ($<n>3,3,$4,$5,$6);}
217 1.1.1.2 christos | PARSEOP_AND
218 1.1.1.2 christos PARSEOP_OPEN_PAREN
219 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
220 1.1 christos ;
221 1.1 christos
222 1.1 christos ArgTerm
223 1.1.1.4 christos : PARSEOP_ARG0 {$$ = TrCreateLeafOp (PARSEOP_ARG0);}
224 1.1.1.4 christos | PARSEOP_ARG1 {$$ = TrCreateLeafOp (PARSEOP_ARG1);}
225 1.1.1.4 christos | PARSEOP_ARG2 {$$ = TrCreateLeafOp (PARSEOP_ARG2);}
226 1.1.1.4 christos | PARSEOP_ARG3 {$$ = TrCreateLeafOp (PARSEOP_ARG3);}
227 1.1.1.4 christos | PARSEOP_ARG4 {$$ = TrCreateLeafOp (PARSEOP_ARG4);}
228 1.1.1.4 christos | PARSEOP_ARG5 {$$ = TrCreateLeafOp (PARSEOP_ARG5);}
229 1.1.1.4 christos | PARSEOP_ARG6 {$$ = TrCreateLeafOp (PARSEOP_ARG6);}
230 1.1 christos ;
231 1.1 christos
232 1.1 christos BankFieldTerm
233 1.1.1.2 christos : PARSEOP_BANKFIELD
234 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_BANKFIELD);}
235 1.1 christos NameString
236 1.1 christos NameStringItem
237 1.1 christos TermArgItem
238 1.1.1.6 christos OptionalAccessTypeKeyword
239 1.1.1.6 christos OptionalLockRuleKeyword
240 1.1.1.6 christos OptionalUpdateRuleKeyword
241 1.1.1.2 christos PARSEOP_CLOSE_PAREN '{'
242 1.1.1.4 christos FieldUnitList '}' {$$ = TrLinkOpChildren ($<n>3,7,
243 1.1.1.6 christos $4,$5,$6,$7,$8,$9,$12);}
244 1.1.1.2 christos | PARSEOP_BANKFIELD
245 1.1.1.2 christos PARSEOP_OPEN_PAREN
246 1.1.1.2 christos error PARSEOP_CLOSE_PAREN
247 1.1.1.2 christos '{' error '}' {$$ = AslDoError(); yyclearin;}
248 1.1 christos ;
249 1.1 christos
250 1.1 christos BreakTerm
251 1.1.1.4 christos : PARSEOP_BREAK {$$ = TrCreateOp (PARSEOP_BREAK, 0);}
252 1.1 christos ;
253 1.1 christos
254 1.1 christos BreakPointTerm
255 1.1.1.4 christos : PARSEOP_BREAKPOINT {$$ = TrCreateOp (PARSEOP_BREAKPOINT, 0);}
256 1.1 christos ;
257 1.1 christos
258 1.1 christos BufferTerm
259 1.1.1.4 christos : PARSEOP_BUFFER {$<n>$ = TrCreateLeafOp (PARSEOP_BUFFER); COMMENT_CAPTURE_OFF; }
260 1.1 christos OptionalDataCount
261 1.1.1.4 christos '{' BufferTermData '}' {$$ = TrLinkOpChildren ($<n>2,2,$3,$5); COMMENT_CAPTURE_ON;}
262 1.1 christos ;
263 1.1 christos
264 1.1 christos BufferTermData
265 1.1 christos : ByteList {}
266 1.1 christos | StringData {}
267 1.1 christos ;
268 1.1 christos
269 1.1 christos CaseTerm
270 1.1.1.2 christos : PARSEOP_CASE
271 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_CASE);}
272 1.1 christos DataObject
273 1.1.1.2 christos PARSEOP_CLOSE_PAREN '{'
274 1.1.1.4 christos TermList '}' {$$ = TrLinkOpChildren ($<n>3,2,$4,$7);}
275 1.1.1.2 christos | PARSEOP_CASE
276 1.1.1.2 christos PARSEOP_OPEN_PAREN
277 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
278 1.1 christos ;
279 1.1 christos
280 1.1 christos ConcatTerm
281 1.1.1.2 christos : PARSEOP_CONCATENATE
282 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_CONCATENATE);}
283 1.1 christos TermArg
284 1.1 christos TermArgItem
285 1.1 christos Target
286 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrLinkOpChildren ($<n>3,3,$4,$5,$6);}
287 1.1.1.2 christos | PARSEOP_CONCATENATE
288 1.1.1.2 christos PARSEOP_OPEN_PAREN
289 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
290 1.1 christos ;
291 1.1 christos
292 1.1 christos ConcatResTerm
293 1.1.1.2 christos : PARSEOP_CONCATENATERESTEMPLATE
294 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (
295 1.1.1.2 christos PARSEOP_CONCATENATERESTEMPLATE);}
296 1.1 christos TermArg
297 1.1 christos TermArgItem
298 1.1 christos Target
299 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrLinkOpChildren ($<n>3,3,$4,$5,$6);}
300 1.1.1.2 christos | PARSEOP_CONCATENATERESTEMPLATE
301 1.1.1.2 christos PARSEOP_OPEN_PAREN
302 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
303 1.1.1.2 christos ;
304 1.1.1.2 christos
305 1.1.1.2 christos CondRefOfTerm
306 1.1.1.2 christos : PARSEOP_CONDREFOF
307 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_CONDREFOF);}
308 1.1.1.2 christos CondRefOfSource
309 1.1.1.2 christos Target
310 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrLinkOpChildren ($<n>3,2,$4,$5);}
311 1.1.1.2 christos | PARSEOP_CONDREFOF
312 1.1.1.2 christos PARSEOP_OPEN_PAREN
313 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
314 1.1 christos ;
315 1.1 christos
316 1.1 christos ConnectionTerm
317 1.1.1.2 christos : PARSEOP_CONNECTION
318 1.1.1.2 christos PARSEOP_OPEN_PAREN
319 1.1 christos NameString
320 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrCreateOp (PARSEOP_CONNECTION,1,$3);}
321 1.1.1.2 christos | PARSEOP_CONNECTION
322 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_CONNECTION);}
323 1.1 christos ResourceMacroTerm
324 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrLinkOpChildren ($<n>3, 1,
325 1.1.1.4 christos TrLinkOpChildren (
326 1.1.1.4 christos TrCreateLeafOp (PARSEOP_RESOURCETEMPLATE), 3,
327 1.1.1.4 christos TrCreateLeafOp (PARSEOP_DEFAULT_ARG),
328 1.1.1.4 christos TrCreateLeafOp (PARSEOP_DEFAULT_ARG),
329 1.1 christos $4));}
330 1.1.1.2 christos | PARSEOP_CONNECTION
331 1.1.1.2 christos PARSEOP_OPEN_PAREN
332 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
333 1.1 christos ;
334 1.1 christos
335 1.1 christos ContinueTerm
336 1.1.1.4 christos : PARSEOP_CONTINUE {$$ = TrCreateOp (PARSEOP_CONTINUE, 0);}
337 1.1 christos ;
338 1.1 christos
339 1.1 christos CopyObjectTerm
340 1.1.1.2 christos : PARSEOP_COPYOBJECT
341 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_COPYOBJECT);}
342 1.1 christos TermArg
343 1.1.1.2 christos ',' SimpleName
344 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrLinkOpChildren ($<n>3,2,$4,
345 1.1.1.4 christos TrSetOpFlags ($6, OP_IS_TARGET));}
346 1.1.1.2 christos | PARSEOP_COPYOBJECT
347 1.1.1.2 christos PARSEOP_OPEN_PAREN
348 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
349 1.1 christos ;
350 1.1 christos
351 1.1 christos CreateBitFieldTerm
352 1.1.1.2 christos : PARSEOP_CREATEBITFIELD
353 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_CREATEBITFIELD);}
354 1.1 christos TermArg
355 1.1 christos TermArgItem
356 1.1 christos NameStringItem
357 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrLinkOpChildren ($<n>3,3,$4,$5,
358 1.1.1.4 christos TrSetOpFlags ($6, OP_IS_NAME_DECLARATION));}
359 1.1.1.2 christos | PARSEOP_CREATEBITFIELD
360 1.1.1.2 christos PARSEOP_OPEN_PAREN
361 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
362 1.1 christos ;
363 1.1 christos
364 1.1 christos CreateByteFieldTerm
365 1.1.1.2 christos : PARSEOP_CREATEBYTEFIELD
366 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_CREATEBYTEFIELD);}
367 1.1 christos TermArg
368 1.1 christos TermArgItem
369 1.1 christos NameStringItem
370 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrLinkOpChildren ($<n>3,3,$4,$5,
371 1.1.1.4 christos TrSetOpFlags ($6, OP_IS_NAME_DECLARATION));}
372 1.1.1.2 christos | PARSEOP_CREATEBYTEFIELD
373 1.1.1.2 christos PARSEOP_OPEN_PAREN
374 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
375 1.1 christos ;
376 1.1 christos
377 1.1 christos CreateDWordFieldTerm
378 1.1.1.2 christos : PARSEOP_CREATEDWORDFIELD
379 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_CREATEDWORDFIELD);}
380 1.1 christos TermArg
381 1.1 christos TermArgItem
382 1.1 christos NameStringItem
383 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrLinkOpChildren ($<n>3,3,$4,$5,
384 1.1.1.4 christos TrSetOpFlags ($6, OP_IS_NAME_DECLARATION));}
385 1.1.1.2 christos | PARSEOP_CREATEDWORDFIELD
386 1.1.1.2 christos PARSEOP_OPEN_PAREN
387 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
388 1.1 christos ;
389 1.1 christos
390 1.1 christos CreateFieldTerm
391 1.1.1.2 christos : PARSEOP_CREATEFIELD
392 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_CREATEFIELD);}
393 1.1 christos TermArg
394 1.1 christos TermArgItem
395 1.1 christos TermArgItem
396 1.1 christos NameStringItem
397 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrLinkOpChildren ($<n>3,4,$4,$5,$6,
398 1.1.1.4 christos TrSetOpFlags ($7, OP_IS_NAME_DECLARATION));}
399 1.1.1.2 christos | PARSEOP_CREATEFIELD
400 1.1.1.2 christos PARSEOP_OPEN_PAREN
401 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
402 1.1 christos ;
403 1.1 christos
404 1.1 christos CreateQWordFieldTerm
405 1.1.1.2 christos : PARSEOP_CREATEQWORDFIELD
406 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_CREATEQWORDFIELD);}
407 1.1 christos TermArg
408 1.1 christos TermArgItem
409 1.1 christos NameStringItem
410 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrLinkOpChildren ($<n>3,3,$4,$5,
411 1.1.1.4 christos TrSetOpFlags ($6, OP_IS_NAME_DECLARATION));}
412 1.1.1.2 christos | PARSEOP_CREATEQWORDFIELD
413 1.1.1.2 christos PARSEOP_OPEN_PAREN
414 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
415 1.1 christos ;
416 1.1 christos
417 1.1 christos CreateWordFieldTerm
418 1.1.1.2 christos : PARSEOP_CREATEWORDFIELD
419 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_CREATEWORDFIELD);}
420 1.1 christos TermArg
421 1.1 christos TermArgItem
422 1.1 christos NameStringItem
423 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrLinkOpChildren ($<n>3,3,$4,$5,
424 1.1.1.4 christos TrSetOpFlags ($6, OP_IS_NAME_DECLARATION));}
425 1.1.1.2 christos | PARSEOP_CREATEWORDFIELD
426 1.1.1.2 christos PARSEOP_OPEN_PAREN
427 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
428 1.1 christos ;
429 1.1 christos
430 1.1 christos DataRegionTerm
431 1.1.1.2 christos : PARSEOP_DATATABLEREGION
432 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_DATATABLEREGION);}
433 1.1 christos NameString
434 1.1 christos TermArgItem
435 1.1 christos TermArgItem
436 1.1 christos TermArgItem
437 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrLinkOpChildren ($<n>3,4,
438 1.1.1.4 christos TrSetOpFlags ($4, OP_IS_NAME_DECLARATION),$5,$6,$7);}
439 1.1.1.2 christos | PARSEOP_DATATABLEREGION
440 1.1.1.2 christos PARSEOP_OPEN_PAREN
441 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
442 1.1 christos ;
443 1.1 christos
444 1.1 christos DebugTerm
445 1.1.1.4 christos : PARSEOP_DEBUG {$$ = TrCreateLeafOp (PARSEOP_DEBUG);}
446 1.1 christos ;
447 1.1 christos
448 1.1 christos DecTerm
449 1.1.1.2 christos : PARSEOP_DECREMENT
450 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_DECREMENT);}
451 1.1 christos SuperName
452 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrLinkOpChildren ($<n>3,1,$4);}
453 1.1.1.2 christos | PARSEOP_DECREMENT
454 1.1.1.2 christos PARSEOP_OPEN_PAREN
455 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
456 1.1 christos ;
457 1.1 christos
458 1.1 christos DefaultTerm
459 1.1.1.4 christos : PARSEOP_DEFAULT '{' {$<n>$ = TrCreateLeafOp (PARSEOP_DEFAULT);}
460 1.1.1.4 christos TermList '}' {$$ = TrLinkOpChildren ($<n>3,1,$4);}
461 1.1 christos | PARSEOP_DEFAULT '{'
462 1.1 christos error '}' {$$ = AslDoError(); yyclearin;}
463 1.1 christos ;
464 1.1 christos
465 1.1 christos DerefOfTerm
466 1.1.1.2 christos : PARSEOP_DEREFOF
467 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_DEREFOF);}
468 1.1.1.2 christos DerefOfSource
469 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrLinkOpChildren ($<n>3,1,$4);}
470 1.1.1.2 christos | PARSEOP_DEREFOF
471 1.1.1.2 christos PARSEOP_OPEN_PAREN
472 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
473 1.1 christos ;
474 1.1 christos
475 1.1 christos DeviceTerm
476 1.1.1.2 christos : PARSEOP_DEVICE
477 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_DEVICE);}
478 1.1 christos NameString
479 1.1.1.2 christos PARSEOP_CLOSE_PAREN '{'
480 1.1.1.4 christos TermList '}' {$$ = TrLinkOpChildren ($<n>3,2,
481 1.1.1.4 christos TrSetOpFlags ($4, OP_IS_NAME_DECLARATION),$7);}
482 1.1.1.2 christos | PARSEOP_DEVICE
483 1.1.1.2 christos PARSEOP_OPEN_PAREN
484 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
485 1.1 christos ;
486 1.1 christos
487 1.1 christos DivideTerm
488 1.1.1.2 christos : PARSEOP_DIVIDE
489 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_DIVIDE);}
490 1.1 christos TermArg
491 1.1 christos TermArgItem
492 1.1 christos Target
493 1.1 christos Target
494 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrLinkOpChildren ($<n>3,4,$4,$5,$6,$7);}
495 1.1.1.2 christos | PARSEOP_DIVIDE
496 1.1.1.2 christos PARSEOP_OPEN_PAREN
497 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
498 1.1 christos ;
499 1.1 christos
500 1.1 christos EISAIDTerm
501 1.1.1.2 christos : PARSEOP_EISAID
502 1.1.1.2 christos PARSEOP_OPEN_PAREN
503 1.1.1.9 christos StringLiteral
504 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrSetOpIntegerValue (PARSEOP_EISAID, $3);}
505 1.1.1.2 christos | PARSEOP_EISAID
506 1.1.1.2 christos PARSEOP_OPEN_PAREN
507 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
508 1.1 christos ;
509 1.1 christos
510 1.1 christos ElseIfTerm
511 1.1.1.4 christos : IfTerm ElseTerm {$$ = TrLinkPeerOp ($1,$2);}
512 1.1 christos ;
513 1.1 christos
514 1.1 christos ElseTerm
515 1.1 christos : {$$ = NULL;}
516 1.1.1.3 christos | PARSEOP_ELSE '{'
517 1.1.1.4 christos TermList {$<n>$ = TrCreateLeafOp (PARSEOP_ELSE);}
518 1.1.1.4 christos '}' {$$ = TrLinkOpChildren ($<n>4,1,$3);}
519 1.1 christos
520 1.1 christos | PARSEOP_ELSE '{'
521 1.1 christos error '}' {$$ = AslDoError(); yyclearin;}
522 1.1 christos
523 1.1 christos | PARSEOP_ELSE
524 1.1 christos error {$$ = AslDoError(); yyclearin;}
525 1.1 christos
526 1.1.1.2 christos | PARSEOP_ELSEIF
527 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_ELSE);}
528 1.1.1.4 christos TermArg {$<n>$ = TrCreateLeafOp (PARSEOP_IF);}
529 1.1.1.2 christos PARSEOP_CLOSE_PAREN '{'
530 1.1.1.4 christos TermList '}' {TrLinkOpChildren ($<n>5,2,$4,$8);}
531 1.1.1.4 christos ElseTerm {TrLinkPeerOp ($<n>5,$11);}
532 1.1.1.4 christos {$$ = TrLinkOpChildren ($<n>3,1,$<n>5);}
533 1.1 christos
534 1.1.1.2 christos | PARSEOP_ELSEIF
535 1.1.1.2 christos PARSEOP_OPEN_PAREN
536 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
537 1.1 christos
538 1.1 christos | PARSEOP_ELSEIF
539 1.1 christos error {$$ = AslDoError(); yyclearin;}
540 1.1 christos ;
541 1.1 christos
542 1.1 christos EventTerm
543 1.1.1.2 christos : PARSEOP_EVENT
544 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_EVENT);}
545 1.1 christos NameString
546 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrLinkOpChildren ($<n>3,1,
547 1.1.1.4 christos TrSetOpFlags ($4, OP_IS_NAME_DECLARATION));}
548 1.1.1.2 christos | PARSEOP_EVENT
549 1.1.1.2 christos PARSEOP_OPEN_PAREN
550 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
551 1.1 christos ;
552 1.1 christos
553 1.1 christos ExternalTerm
554 1.1.1.2 christos : PARSEOP_EXTERNAL
555 1.1.1.2 christos PARSEOP_OPEN_PAREN
556 1.1 christos NameString
557 1.1 christos OptionalObjectTypeKeyword
558 1.1 christos OptionalParameterTypePackage
559 1.1 christos OptionalParameterTypesPackage
560 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrCreateOp (PARSEOP_EXTERNAL,4,$3,$4,$5,$6);}
561 1.1.1.2 christos | PARSEOP_EXTERNAL
562 1.1.1.2 christos PARSEOP_OPEN_PAREN
563 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
564 1.1 christos ;
565 1.1 christos
566 1.1 christos FatalTerm
567 1.1.1.2 christos : PARSEOP_FATAL
568 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_FATAL);}
569 1.1 christos ByteConstExpr
570 1.1 christos ',' DWordConstExpr
571 1.1 christos TermArgItem
572 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrLinkOpChildren ($<n>3,3,$4,$6,$7);}
573 1.1.1.2 christos | PARSEOP_FATAL
574 1.1.1.2 christos PARSEOP_OPEN_PAREN
575 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
576 1.1 christos ;
577 1.1 christos
578 1.1 christos FieldTerm
579 1.1.1.2 christos : PARSEOP_FIELD
580 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_FIELD);}
581 1.1 christos NameString
582 1.1.1.6 christos OptionalAccessTypeKeyword
583 1.1.1.6 christos OptionalLockRuleKeyword
584 1.1.1.6 christos OptionalUpdateRuleKeyword
585 1.1.1.2 christos PARSEOP_CLOSE_PAREN '{'
586 1.1.1.6 christos FieldUnitList '}' {$$ = TrLinkOpChildren ($<n>3,5,$4,$5,$6,$7,$10);}
587 1.1.1.2 christos | PARSEOP_FIELD
588 1.1.1.2 christos PARSEOP_OPEN_PAREN
589 1.1.1.2 christos error PARSEOP_CLOSE_PAREN
590 1.1.1.2 christos '{' error '}' {$$ = AslDoError(); yyclearin;}
591 1.1 christos ;
592 1.1 christos
593 1.1 christos FindSetLeftBitTerm
594 1.1.1.2 christos : PARSEOP_FINDSETLEFTBIT
595 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_FINDSETLEFTBIT);}
596 1.1 christos TermArg
597 1.1 christos Target
598 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrLinkOpChildren ($<n>3,2,$4,$5);}
599 1.1.1.2 christos | PARSEOP_FINDSETLEFTBIT
600 1.1.1.2 christos PARSEOP_OPEN_PAREN
601 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
602 1.1 christos ;
603 1.1 christos
604 1.1 christos FindSetRightBitTerm
605 1.1.1.2 christos : PARSEOP_FINDSETRIGHTBIT
606 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_FINDSETRIGHTBIT);}
607 1.1 christos TermArg
608 1.1 christos Target
609 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrLinkOpChildren ($<n>3,2,$4,$5);}
610 1.1.1.2 christos | PARSEOP_FINDSETRIGHTBIT
611 1.1.1.2 christos PARSEOP_OPEN_PAREN
612 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
613 1.1 christos ;
614 1.1 christos
615 1.1 christos /* Convert a For() loop to a While() loop */
616 1.1 christos ForTerm
617 1.1.1.2 christos : PARSEOP_FOR
618 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_WHILE);}
619 1.1 christos OptionalTermArg ',' {}
620 1.1 christos OptionalPredicate ','
621 1.1.1.4 christos OptionalTermArg {$<n>$ = TrLinkPeerOp ($4,$<n>3);
622 1.1.1.4 christos TrSetOpParent ($9,$<n>3);} /* New parent is WHILE */
623 1.1.1.2 christos PARSEOP_CLOSE_PAREN
624 1.1.1.4 christos '{' TermList '}' {$<n>$ = TrLinkOpChildren ($<n>3,2,$7,$13);}
625 1.1.1.4 christos {$<n>$ = TrLinkPeerOp ($13,$9);
626 1.1 christos $$ = $<n>10;}
627 1.1 christos ;
628 1.1 christos
629 1.1 christos OptionalPredicate
630 1.1.1.4 christos : {$$ = TrCreateValuedLeafOp (PARSEOP_INTEGER, 1);}
631 1.1 christos | TermArg {$$ = $1;}
632 1.1 christos ;
633 1.1 christos
634 1.1 christos FprintfTerm
635 1.1.1.2 christos : PARSEOP_FPRINTF
636 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_FPRINTF);}
637 1.1 christos TermArg ','
638 1.1.1.9 christos StringLiteral
639 1.1 christos PrintfArgList
640 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrLinkOpChildren ($<n>3,3,$4,$6,$7);}
641 1.1.1.2 christos | PARSEOP_FPRINTF
642 1.1.1.2 christos PARSEOP_OPEN_PAREN
643 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
644 1.1 christos ;
645 1.1 christos
646 1.1 christos FromBCDTerm
647 1.1.1.2 christos : PARSEOP_FROMBCD
648 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_FROMBCD);}
649 1.1 christos TermArg
650 1.1 christos Target
651 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrLinkOpChildren ($<n>3,2,$4,$5);}
652 1.1.1.2 christos | PARSEOP_FROMBCD
653 1.1.1.2 christos PARSEOP_OPEN_PAREN
654 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
655 1.1 christos ;
656 1.1 christos
657 1.1 christos FunctionTerm
658 1.1.1.2 christos : PARSEOP_FUNCTION
659 1.1.1.4 christos PARSEOP_OPEN_PAREN {COMMENT_CAPTURE_OFF; $<n>$ = TrCreateLeafOp (PARSEOP_METHOD); }
660 1.1 christos NameString
661 1.1 christos OptionalParameterTypePackage
662 1.1 christos OptionalParameterTypesPackage
663 1.1.1.3 christos PARSEOP_CLOSE_PAREN '{' {COMMENT_CAPTURE_ON; }
664 1.1.1.4 christos TermList '}' {$$ = TrLinkOpChildren ($<n>3,7,
665 1.1.1.4 christos TrSetOpFlags ($4, OP_IS_NAME_DECLARATION),
666 1.1.1.8 christos TrCreateLeafOp (PARSEOP_DEFAULT_ARG),
667 1.1.1.4 christos TrCreateLeafOp (PARSEOP_SERIALIZERULE_NOTSERIAL),
668 1.1.1.4 christos TrCreateValuedLeafOp (PARSEOP_BYTECONST, 0),$5,$6,$10);}
669 1.1.1.2 christos | PARSEOP_FUNCTION
670 1.1.1.2 christos PARSEOP_OPEN_PAREN
671 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
672 1.1 christos ;
673 1.1 christos
674 1.1 christos IfTerm
675 1.1.1.2 christos : PARSEOP_IF
676 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_IF);}
677 1.1 christos TermArg
678 1.1.1.2 christos PARSEOP_CLOSE_PAREN '{'
679 1.1.1.4 christos TermList '}' {$$ = TrLinkOpChildren ($<n>3,2,$4,$7);}
680 1.1 christos
681 1.1.1.2 christos | PARSEOP_IF
682 1.1.1.2 christos PARSEOP_OPEN_PAREN
683 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
684 1.1 christos ;
685 1.1 christos
686 1.1 christos IncludeTerm
687 1.1.1.2 christos : PARSEOP_INCLUDE
688 1.1.1.2 christos PARSEOP_OPEN_PAREN
689 1.1.1.2 christos String
690 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrSetOpIntegerValue (PARSEOP_INCLUDE, $3);
691 1.1 christos FlOpenIncludeFile ($3);}
692 1.1 christos ;
693 1.1 christos
694 1.1 christos IncludeEndTerm
695 1.1.1.4 christos : PARSEOP_INCLUDE_END {$<n>$ = TrCreateLeafOp (PARSEOP_INCLUDE_END);
696 1.1.1.4 christos TrSetOpCurrentFilename ($$);}
697 1.1 christos ;
698 1.1 christos
699 1.1 christos IncTerm
700 1.1.1.2 christos : PARSEOP_INCREMENT
701 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_INCREMENT);}
702 1.1 christos SuperName
703 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrLinkOpChildren ($<n>3,1,$4);}
704 1.1.1.2 christos | PARSEOP_INCREMENT
705 1.1.1.2 christos PARSEOP_OPEN_PAREN
706 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
707 1.1 christos ;
708 1.1 christos
709 1.1 christos IndexFieldTerm
710 1.1.1.2 christos : PARSEOP_INDEXFIELD
711 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_INDEXFIELD);}
712 1.1 christos NameString
713 1.1 christos NameStringItem
714 1.1.1.6 christos OptionalAccessTypeKeyword
715 1.1.1.6 christos OptionalLockRuleKeyword
716 1.1.1.6 christos OptionalUpdateRuleKeyword
717 1.1.1.2 christos PARSEOP_CLOSE_PAREN '{'
718 1.1.1.6 christos FieldUnitList '}' {$$ = TrLinkOpChildren ($<n>3,6,$4,$5,$6,$7,$8,$11);}
719 1.1.1.2 christos | PARSEOP_INDEXFIELD
720 1.1.1.2 christos PARSEOP_OPEN_PAREN
721 1.1.1.2 christos error PARSEOP_CLOSE_PAREN
722 1.1.1.2 christos '{' error '}' {$$ = AslDoError(); yyclearin;}
723 1.1 christos ;
724 1.1 christos
725 1.1 christos IndexTerm
726 1.1.1.2 christos : PARSEOP_INDEX
727 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_INDEX);}
728 1.1 christos TermArg
729 1.1 christos TermArgItem
730 1.1 christos Target
731 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrLinkOpChildren ($<n>3,3,$4,$5,$6);}
732 1.1.1.2 christos | PARSEOP_INDEX
733 1.1.1.2 christos PARSEOP_OPEN_PAREN
734 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
735 1.1 christos ;
736 1.1 christos
737 1.1 christos LAndTerm
738 1.1.1.2 christos : PARSEOP_LAND
739 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_LAND);}
740 1.1 christos TermArg
741 1.1 christos TermArgItem
742 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrLinkOpChildren ($<n>3,2,$4,$5);}
743 1.1.1.2 christos | PARSEOP_LAND
744 1.1.1.2 christos PARSEOP_OPEN_PAREN
745 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
746 1.1 christos ;
747 1.1 christos
748 1.1 christos LEqualTerm
749 1.1.1.2 christos : PARSEOP_LEQUAL
750 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_LEQUAL);}
751 1.1 christos TermArg
752 1.1 christos TermArgItem
753 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrLinkOpChildren ($<n>3,2,$4,$5);}
754 1.1.1.2 christos | PARSEOP_LEQUAL
755 1.1.1.2 christos PARSEOP_OPEN_PAREN
756 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
757 1.1 christos ;
758 1.1 christos
759 1.1 christos LGreaterEqualTerm
760 1.1.1.2 christos : PARSEOP_LGREATEREQUAL
761 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_LLESS);}
762 1.1 christos TermArg
763 1.1 christos TermArgItem
764 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrCreateOp (PARSEOP_LNOT, 1,
765 1.1.1.4 christos TrLinkOpChildren ($<n>3,2,$4,$5));}
766 1.1.1.2 christos | PARSEOP_LGREATEREQUAL
767 1.1.1.2 christos PARSEOP_OPEN_PAREN
768 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
769 1.1 christos ;
770 1.1 christos
771 1.1 christos LGreaterTerm
772 1.1.1.2 christos : PARSEOP_LGREATER
773 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_LGREATER);}
774 1.1 christos TermArg
775 1.1 christos TermArgItem
776 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrLinkOpChildren ($<n>3,2,$4,$5);}
777 1.1.1.2 christos | PARSEOP_LGREATER
778 1.1.1.2 christos PARSEOP_OPEN_PAREN
779 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
780 1.1 christos ;
781 1.1 christos
782 1.1 christos LLessEqualTerm
783 1.1.1.2 christos : PARSEOP_LLESSEQUAL
784 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_LGREATER);}
785 1.1 christos TermArg
786 1.1 christos TermArgItem
787 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrCreateOp (PARSEOP_LNOT, 1,
788 1.1.1.4 christos TrLinkOpChildren ($<n>3,2,$4,$5));}
789 1.1.1.2 christos | PARSEOP_LLESSEQUAL
790 1.1.1.2 christos PARSEOP_OPEN_PAREN
791 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
792 1.1 christos ;
793 1.1 christos
794 1.1 christos LLessTerm
795 1.1.1.2 christos : PARSEOP_LLESS
796 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_LLESS);}
797 1.1 christos TermArg
798 1.1 christos TermArgItem
799 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrLinkOpChildren ($<n>3,2,$4,$5);}
800 1.1.1.2 christos | PARSEOP_LLESS
801 1.1.1.2 christos PARSEOP_OPEN_PAREN
802 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
803 1.1 christos ;
804 1.1 christos
805 1.1 christos LNotEqualTerm
806 1.1.1.2 christos : PARSEOP_LNOTEQUAL
807 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_LEQUAL);}
808 1.1 christos TermArg
809 1.1 christos TermArgItem
810 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrCreateOp (PARSEOP_LNOT, 1,
811 1.1.1.4 christos TrLinkOpChildren ($<n>3,2,$4,$5));}
812 1.1.1.2 christos | PARSEOP_LNOTEQUAL
813 1.1.1.2 christos PARSEOP_OPEN_PAREN
814 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
815 1.1 christos ;
816 1.1 christos
817 1.1 christos LNotTerm
818 1.1.1.2 christos : PARSEOP_LNOT
819 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_LNOT);}
820 1.1 christos TermArg
821 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrLinkOpChildren ($<n>3,1,$4);}
822 1.1.1.2 christos | PARSEOP_LNOT
823 1.1.1.2 christos PARSEOP_OPEN_PAREN
824 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
825 1.1 christos ;
826 1.1 christos
827 1.1 christos LoadTableTerm
828 1.1.1.2 christos : PARSEOP_LOADTABLE
829 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_LOADTABLE);}
830 1.1 christos TermArg
831 1.1 christos TermArgItem
832 1.1 christos TermArgItem
833 1.1 christos OptionalListString
834 1.1 christos OptionalListString
835 1.1 christos OptionalReference
836 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrLinkOpChildren ($<n>3,6,$4,$5,$6,$7,$8,$9);}
837 1.1.1.2 christos | PARSEOP_LOADTABLE
838 1.1.1.2 christos PARSEOP_OPEN_PAREN
839 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
840 1.1 christos ;
841 1.1 christos
842 1.1 christos LoadTerm
843 1.1.1.2 christos : PARSEOP_LOAD
844 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_LOAD);}
845 1.1 christos NameString
846 1.1.1.11 christos Target
847 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrLinkOpChildren ($<n>3,2,$4,$5);}
848 1.1.1.2 christos | PARSEOP_LOAD
849 1.1.1.2 christos PARSEOP_OPEN_PAREN
850 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
851 1.1 christos ;
852 1.1 christos
853 1.1 christos LocalTerm
854 1.1.1.4 christos : PARSEOP_LOCAL0 {$$ = TrCreateLeafOp (PARSEOP_LOCAL0);}
855 1.1.1.4 christos | PARSEOP_LOCAL1 {$$ = TrCreateLeafOp (PARSEOP_LOCAL1);}
856 1.1.1.4 christos | PARSEOP_LOCAL2 {$$ = TrCreateLeafOp (PARSEOP_LOCAL2);}
857 1.1.1.4 christos | PARSEOP_LOCAL3 {$$ = TrCreateLeafOp (PARSEOP_LOCAL3);}
858 1.1.1.4 christos | PARSEOP_LOCAL4 {$$ = TrCreateLeafOp (PARSEOP_LOCAL4);}
859 1.1.1.4 christos | PARSEOP_LOCAL5 {$$ = TrCreateLeafOp (PARSEOP_LOCAL5);}
860 1.1.1.4 christos | PARSEOP_LOCAL6 {$$ = TrCreateLeafOp (PARSEOP_LOCAL6);}
861 1.1.1.4 christos | PARSEOP_LOCAL7 {$$ = TrCreateLeafOp (PARSEOP_LOCAL7);}
862 1.1 christos ;
863 1.1 christos
864 1.1 christos LOrTerm
865 1.1.1.2 christos : PARSEOP_LOR
866 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_LOR);}
867 1.1 christos TermArg
868 1.1 christos TermArgItem
869 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrLinkOpChildren ($<n>3,2,$4,$5);}
870 1.1.1.2 christos | PARSEOP_LOR
871 1.1.1.2 christos PARSEOP_OPEN_PAREN
872 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
873 1.1 christos ;
874 1.1 christos
875 1.1 christos MatchTerm
876 1.1.1.2 christos : PARSEOP_MATCH
877 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_MATCH);}
878 1.1 christos TermArg
879 1.1 christos ',' MatchOpKeyword
880 1.1 christos TermArgItem
881 1.1 christos ',' MatchOpKeyword
882 1.1 christos TermArgItem
883 1.1 christos TermArgItem
884 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrLinkOpChildren ($<n>3,6,$4,$6,$7,$9,$10,$11);}
885 1.1.1.2 christos | PARSEOP_MATCH
886 1.1.1.2 christos PARSEOP_OPEN_PAREN
887 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
888 1.1 christos ;
889 1.1 christos
890 1.1 christos MethodTerm
891 1.1.1.2 christos : PARSEOP_METHOD
892 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_METHOD); COMMENT_CAPTURE_OFF;}
893 1.1 christos NameString
894 1.1 christos OptionalByteConstExpr {UtCheckIntegerRange ($5, 0, 7);}
895 1.1 christos OptionalSerializeRuleKeyword
896 1.1 christos OptionalByteConstExpr
897 1.1 christos OptionalParameterTypePackage
898 1.1 christos OptionalParameterTypesPackage
899 1.1.1.3 christos PARSEOP_CLOSE_PAREN '{' {COMMENT_CAPTURE_ON;}
900 1.1.1.4 christos TermList '}' {$$ = TrLinkOpChildren ($<n>3,7,
901 1.1.1.4 christos TrSetOpFlags ($4, OP_IS_NAME_DECLARATION),
902 1.1.1.3 christos $5,$7,$8,$9,$10,$14);}
903 1.1.1.2 christos | PARSEOP_METHOD
904 1.1.1.2 christos PARSEOP_OPEN_PAREN
905 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
906 1.1 christos ;
907 1.1 christos
908 1.1 christos MidTerm
909 1.1.1.2 christos : PARSEOP_MID
910 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_MID);}
911 1.1 christos TermArg
912 1.1 christos TermArgItem
913 1.1 christos TermArgItem
914 1.1 christos Target
915 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrLinkOpChildren ($<n>3,4,$4,$5,$6,$7);}
916 1.1.1.2 christos | PARSEOP_MID
917 1.1.1.2 christos PARSEOP_OPEN_PAREN
918 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
919 1.1 christos ;
920 1.1 christos
921 1.1 christos ModTerm
922 1.1.1.2 christos : PARSEOP_MOD
923 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_MOD);}
924 1.1 christos TermArg
925 1.1 christos TermArgItem
926 1.1 christos Target
927 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrLinkOpChildren ($<n>3,3,$4,$5,$6);}
928 1.1.1.2 christos | PARSEOP_MOD
929 1.1.1.2 christos PARSEOP_OPEN_PAREN
930 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
931 1.1 christos ;
932 1.1 christos
933 1.1 christos MultiplyTerm
934 1.1.1.2 christos : PARSEOP_MULTIPLY
935 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_MULTIPLY);}
936 1.1 christos TermArg
937 1.1 christos TermArgItem
938 1.1 christos Target
939 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrLinkOpChildren ($<n>3,3,$4,$5,$6);}
940 1.1.1.2 christos | PARSEOP_MULTIPLY
941 1.1.1.2 christos PARSEOP_OPEN_PAREN
942 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
943 1.1 christos ;
944 1.1 christos
945 1.1 christos MutexTerm
946 1.1.1.2 christos : PARSEOP_MUTEX
947 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_MUTEX);}
948 1.1 christos NameString
949 1.1.1.6 christos OptionalSyncLevel
950 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrLinkOpChildren ($<n>3,2,
951 1.1.1.6 christos TrSetOpFlags ($4, OP_IS_NAME_DECLARATION),$5);}
952 1.1.1.2 christos | PARSEOP_MUTEX
953 1.1.1.2 christos PARSEOP_OPEN_PAREN
954 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
955 1.1 christos ;
956 1.1 christos
957 1.1 christos NameTerm
958 1.1.1.2 christos : PARSEOP_NAME
959 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_NAME);}
960 1.1 christos NameString
961 1.1 christos ',' DataObject
962 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrLinkOpChildren ($<n>3,2,
963 1.1.1.4 christos TrSetOpFlags ($4, OP_IS_NAME_DECLARATION),$6);}
964 1.1.1.2 christos | PARSEOP_NAME
965 1.1.1.2 christos PARSEOP_OPEN_PAREN
966 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
967 1.1 christos ;
968 1.1 christos
969 1.1 christos NAndTerm
970 1.1.1.2 christos : PARSEOP_NAND
971 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_NAND);}
972 1.1 christos TermArg
973 1.1 christos TermArgItem
974 1.1 christos Target
975 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrLinkOpChildren ($<n>3,3,$4,$5,$6);}
976 1.1.1.2 christos | PARSEOP_NAND
977 1.1.1.2 christos PARSEOP_OPEN_PAREN
978 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
979 1.1 christos ;
980 1.1 christos
981 1.1 christos NoOpTerm
982 1.1.1.4 christos : PARSEOP_NOOP {$$ = TrCreateOp (PARSEOP_NOOP, 0);}
983 1.1 christos ;
984 1.1 christos
985 1.1 christos NOrTerm
986 1.1.1.2 christos : PARSEOP_NOR
987 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_NOR);}
988 1.1 christos TermArg
989 1.1 christos TermArgItem
990 1.1 christos Target
991 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrLinkOpChildren ($<n>3,3,$4,$5,$6);}
992 1.1.1.2 christos | PARSEOP_NOR
993 1.1.1.2 christos PARSEOP_OPEN_PAREN
994 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
995 1.1 christos ;
996 1.1 christos
997 1.1 christos NotifyTerm
998 1.1.1.2 christos : PARSEOP_NOTIFY
999 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_NOTIFY);}
1000 1.1 christos SuperName
1001 1.1 christos TermArgItem
1002 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrLinkOpChildren ($<n>3,2,$4,$5);}
1003 1.1.1.2 christos | PARSEOP_NOTIFY
1004 1.1.1.2 christos PARSEOP_OPEN_PAREN
1005 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
1006 1.1 christos ;
1007 1.1 christos
1008 1.1 christos NotTerm
1009 1.1.1.2 christos : PARSEOP_NOT
1010 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_NOT);}
1011 1.1 christos TermArg
1012 1.1 christos Target
1013 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrLinkOpChildren ($<n>3,2,$4,$5);}
1014 1.1.1.2 christos | PARSEOP_NOT
1015 1.1.1.2 christos PARSEOP_OPEN_PAREN
1016 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
1017 1.1 christos ;
1018 1.1 christos
1019 1.1 christos ObjectTypeTerm
1020 1.1.1.2 christos : PARSEOP_OBJECTTYPE
1021 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_OBJECTTYPE);}
1022 1.1.1.2 christos ObjectTypeSource
1023 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrLinkOpChildren ($<n>3,1,$4);}
1024 1.1.1.2 christos | PARSEOP_OBJECTTYPE
1025 1.1.1.2 christos PARSEOP_OPEN_PAREN
1026 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
1027 1.1 christos ;
1028 1.1 christos
1029 1.1 christos OffsetTerm
1030 1.1.1.2 christos : PARSEOP_OFFSET
1031 1.1.1.2 christos PARSEOP_OPEN_PAREN
1032 1.1 christos AmlPackageLengthTerm
1033 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrCreateOp (PARSEOP_OFFSET,1,$3);}
1034 1.1.1.2 christos | PARSEOP_OFFSET
1035 1.1.1.2 christos PARSEOP_OPEN_PAREN
1036 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
1037 1.1 christos ;
1038 1.1 christos
1039 1.1 christos OpRegionTerm
1040 1.1.1.2 christos : PARSEOP_OPERATIONREGION
1041 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_OPERATIONREGION);}
1042 1.1 christos NameString
1043 1.1 christos ',' OpRegionSpaceIdTerm
1044 1.1 christos TermArgItem
1045 1.1 christos TermArgItem
1046 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrLinkOpChildren ($<n>3,4,
1047 1.1.1.4 christos TrSetOpFlags ($4, OP_IS_NAME_DECLARATION),
1048 1.1 christos $6,$7,$8);}
1049 1.1.1.2 christos | PARSEOP_OPERATIONREGION
1050 1.1.1.2 christos PARSEOP_OPEN_PAREN
1051 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
1052 1.1 christos ;
1053 1.1 christos
1054 1.1 christos OpRegionSpaceIdTerm
1055 1.1 christos : RegionSpaceKeyword {}
1056 1.1 christos | ByteConst {$$ = UtCheckIntegerRange ($1, 0x80, 0xFF);}
1057 1.1 christos ;
1058 1.1 christos
1059 1.1 christos OrTerm
1060 1.1.1.2 christos : PARSEOP_OR
1061 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_OR);}
1062 1.1 christos TermArg
1063 1.1 christos TermArgItem
1064 1.1 christos Target
1065 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrLinkOpChildren ($<n>3,3,$4,$5,$6);}
1066 1.1.1.2 christos | PARSEOP_OR
1067 1.1.1.2 christos PARSEOP_OPEN_PAREN
1068 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
1069 1.1 christos ;
1070 1.1 christos
1071 1.1 christos PackageTerm
1072 1.1.1.4 christos : PARSEOP_PACKAGE {$<n>$ = TrCreateLeafOp (PARSEOP_VAR_PACKAGE);}
1073 1.1 christos OptionalDataCount
1074 1.1.1.4 christos '{' PackageList '}' {$$ = TrLinkOpChildren ($<n>2,2,$3,$5);}
1075 1.1 christos
1076 1.1 christos PowerResTerm
1077 1.1.1.2 christos : PARSEOP_POWERRESOURCE
1078 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_POWERRESOURCE);}
1079 1.1 christos NameString
1080 1.1 christos ',' ByteConstExpr
1081 1.1 christos ',' WordConstExpr
1082 1.1.1.2 christos PARSEOP_CLOSE_PAREN '{'
1083 1.1.1.4 christos TermList '}' {$$ = TrLinkOpChildren ($<n>3,4,
1084 1.1.1.4 christos TrSetOpFlags ($4, OP_IS_NAME_DECLARATION),
1085 1.1 christos $6,$8,$11);}
1086 1.1.1.2 christos | PARSEOP_POWERRESOURCE
1087 1.1.1.2 christos PARSEOP_OPEN_PAREN
1088 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
1089 1.1 christos ;
1090 1.1 christos
1091 1.1 christos PrintfTerm
1092 1.1.1.2 christos : PARSEOP_PRINTF
1093 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_PRINTF);}
1094 1.1.1.9 christos StringLiteral
1095 1.1 christos PrintfArgList
1096 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrLinkOpChildren ($<n>3,2,$4,$5);}
1097 1.1.1.2 christos | PARSEOP_PRINTF
1098 1.1.1.2 christos PARSEOP_OPEN_PAREN
1099 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
1100 1.1 christos ;
1101 1.1 christos
1102 1.1 christos PrintfArgList
1103 1.1 christos : {$$ = NULL;}
1104 1.1 christos | TermArg {$$ = $1;}
1105 1.1 christos | PrintfArgList ','
1106 1.1.1.4 christos TermArg {$$ = TrLinkPeerOp ($1, $3);}
1107 1.1 christos ;
1108 1.1 christos
1109 1.1 christos ProcessorTerm
1110 1.1.1.2 christos : PARSEOP_PROCESSOR
1111 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_PROCESSOR);}
1112 1.1 christos NameString
1113 1.1 christos ',' ByteConstExpr
1114 1.1 christos OptionalDWordConstExpr
1115 1.1 christos OptionalByteConstExpr
1116 1.1.1.2 christos PARSEOP_CLOSE_PAREN '{'
1117 1.1.1.4 christos TermList '}' {$$ = TrLinkOpChildren ($<n>3,5,
1118 1.1.1.4 christos TrSetOpFlags ($4, OP_IS_NAME_DECLARATION),
1119 1.1 christos $6,$7,$8,$11);}
1120 1.1.1.2 christos | PARSEOP_PROCESSOR
1121 1.1.1.2 christos PARSEOP_OPEN_PAREN
1122 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
1123 1.1 christos ;
1124 1.1 christos
1125 1.1 christos RawDataBufferTerm
1126 1.1.1.2 christos : PARSEOP_DATABUFFER
1127 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_DATABUFFER);}
1128 1.1 christos OptionalWordConst
1129 1.1.1.2 christos PARSEOP_CLOSE_PAREN '{'
1130 1.1.1.4 christos ByteList '}' {$$ = TrLinkOpChildren ($<n>3,2,$4,$7);}
1131 1.1.1.2 christos | PARSEOP_DATABUFFER
1132 1.1.1.2 christos PARSEOP_OPEN_PAREN
1133 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
1134 1.1 christos ;
1135 1.1 christos
1136 1.1 christos /*
1137 1.1 christos * In RefOf, the node isn't really a target, but we can't keep track of it after
1138 1.1 christos * we've taken a pointer to it. (hard to tell if a local becomes initialized this way.)
1139 1.1 christos */
1140 1.1 christos RefOfTerm
1141 1.1.1.2 christos : PARSEOP_REFOF
1142 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_REFOF);}
1143 1.1.1.2 christos RefOfSource
1144 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrLinkOpChildren ($<n>3,1,
1145 1.1.1.4 christos TrSetOpFlags ($4, OP_IS_TARGET));}
1146 1.1.1.2 christos | PARSEOP_REFOF
1147 1.1.1.2 christos PARSEOP_OPEN_PAREN
1148 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
1149 1.1 christos ;
1150 1.1 christos
1151 1.1 christos ReleaseTerm
1152 1.1.1.2 christos : PARSEOP_RELEASE
1153 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_RELEASE);}
1154 1.1 christos SuperName
1155 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrLinkOpChildren ($<n>3,1,$4);}
1156 1.1.1.2 christos | PARSEOP_RELEASE
1157 1.1.1.2 christos PARSEOP_OPEN_PAREN
1158 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
1159 1.1 christos ;
1160 1.1 christos
1161 1.1 christos ResetTerm
1162 1.1.1.2 christos : PARSEOP_RESET
1163 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_RESET);}
1164 1.1 christos SuperName
1165 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrLinkOpChildren ($<n>3,1,$4);}
1166 1.1.1.2 christos | PARSEOP_RESET
1167 1.1.1.2 christos PARSEOP_OPEN_PAREN
1168 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
1169 1.1 christos ;
1170 1.1 christos
1171 1.1 christos ReturnTerm
1172 1.1.1.2 christos : PARSEOP_RETURN
1173 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_RETURN);}
1174 1.1 christos OptionalReturnArg
1175 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrLinkOpChildren ($<n>3,1,$4);}
1176 1.1.1.4 christos | PARSEOP_RETURN {$$ = TrLinkOpChildren (
1177 1.1.1.4 christos TrCreateLeafOp (PARSEOP_RETURN),1,
1178 1.1.1.4 christos TrSetOpFlags (TrCreateLeafOp (PARSEOP_ZERO),
1179 1.1.1.4 christos OP_IS_NULL_RETURN));}
1180 1.1.1.2 christos | PARSEOP_RETURN
1181 1.1.1.2 christos PARSEOP_OPEN_PAREN
1182 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
1183 1.1 christos ;
1184 1.1 christos
1185 1.1 christos ScopeTerm
1186 1.1.1.2 christos : PARSEOP_SCOPE
1187 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_SCOPE);}
1188 1.1 christos NameString
1189 1.1.1.2 christos PARSEOP_CLOSE_PAREN '{'
1190 1.1.1.4 christos TermList '}' {$$ = TrLinkOpChildren ($<n>3,2,
1191 1.1.1.4 christos TrSetOpFlags ($4, OP_IS_NAME_DECLARATION),$7);}
1192 1.1.1.2 christos | PARSEOP_SCOPE
1193 1.1.1.2 christos PARSEOP_OPEN_PAREN
1194 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
1195 1.1 christos ;
1196 1.1 christos
1197 1.1 christos ShiftLeftTerm
1198 1.1.1.2 christos : PARSEOP_SHIFTLEFT
1199 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_SHIFTLEFT);}
1200 1.1 christos TermArg
1201 1.1 christos TermArgItem
1202 1.1 christos Target
1203 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrLinkOpChildren ($<n>3,3,$4,$5,$6);}
1204 1.1.1.2 christos | PARSEOP_SHIFTLEFT
1205 1.1.1.2 christos PARSEOP_OPEN_PAREN
1206 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
1207 1.1 christos ;
1208 1.1 christos
1209 1.1 christos ShiftRightTerm
1210 1.1.1.2 christos : PARSEOP_SHIFTRIGHT
1211 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_SHIFTRIGHT);}
1212 1.1 christos TermArg
1213 1.1 christos TermArgItem
1214 1.1 christos Target
1215 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrLinkOpChildren ($<n>3,3,$4,$5,$6);}
1216 1.1.1.2 christos | PARSEOP_SHIFTRIGHT
1217 1.1.1.2 christos PARSEOP_OPEN_PAREN
1218 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
1219 1.1 christos ;
1220 1.1 christos
1221 1.1 christos SignalTerm
1222 1.1.1.2 christos : PARSEOP_SIGNAL
1223 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_SIGNAL);}
1224 1.1 christos SuperName
1225 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrLinkOpChildren ($<n>3,1,$4);}
1226 1.1.1.2 christos | PARSEOP_SIGNAL
1227 1.1.1.2 christos PARSEOP_OPEN_PAREN
1228 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
1229 1.1 christos ;
1230 1.1 christos
1231 1.1 christos SizeOfTerm
1232 1.1.1.2 christos : PARSEOP_SIZEOF
1233 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_SIZEOF);}
1234 1.1 christos SuperName
1235 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrLinkOpChildren ($<n>3,1,$4);}
1236 1.1.1.2 christos | PARSEOP_SIZEOF
1237 1.1.1.2 christos PARSEOP_OPEN_PAREN
1238 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
1239 1.1 christos ;
1240 1.1 christos
1241 1.1 christos SleepTerm
1242 1.1.1.2 christos : PARSEOP_SLEEP
1243 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_SLEEP);}
1244 1.1 christos TermArg
1245 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrLinkOpChildren ($<n>3,1,$4);}
1246 1.1.1.2 christos | PARSEOP_SLEEP
1247 1.1.1.2 christos PARSEOP_OPEN_PAREN
1248 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
1249 1.1 christos ;
1250 1.1 christos
1251 1.1 christos StallTerm
1252 1.1.1.2 christos : PARSEOP_STALL
1253 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_STALL);}
1254 1.1 christos TermArg
1255 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrLinkOpChildren ($<n>3,1,$4);}
1256 1.1.1.2 christos | PARSEOP_STALL
1257 1.1.1.2 christos PARSEOP_OPEN_PAREN
1258 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
1259 1.1 christos ;
1260 1.1 christos
1261 1.1 christos StoreTerm
1262 1.1.1.2 christos : PARSEOP_STORE
1263 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_STORE);}
1264 1.1 christos TermArg
1265 1.1 christos ',' SuperName
1266 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrLinkOpChildren ($<n>3,2,$4,
1267 1.1.1.4 christos TrSetOpFlags ($6, OP_IS_TARGET));}
1268 1.1.1.2 christos | PARSEOP_STORE
1269 1.1.1.2 christos PARSEOP_OPEN_PAREN
1270 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
1271 1.1 christos ;
1272 1.1 christos
1273 1.1 christos SubtractTerm
1274 1.1.1.2 christos : PARSEOP_SUBTRACT
1275 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_SUBTRACT);}
1276 1.1 christos TermArg
1277 1.1 christos TermArgItem
1278 1.1 christos Target
1279 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrLinkOpChildren ($<n>3,3,$4,$5,$6);}
1280 1.1.1.2 christos | PARSEOP_SUBTRACT
1281 1.1.1.2 christos PARSEOP_OPEN_PAREN
1282 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
1283 1.1 christos ;
1284 1.1 christos
1285 1.1 christos SwitchTerm
1286 1.1.1.2 christos : PARSEOP_SWITCH
1287 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_SWITCH);}
1288 1.1 christos TermArg
1289 1.1.1.2 christos PARSEOP_CLOSE_PAREN '{'
1290 1.1.1.4 christos CaseDefaultTermList '}' {$$ = TrLinkOpChildren ($<n>3,2,$4,$7);}
1291 1.1.1.2 christos | PARSEOP_SWITCH
1292 1.1.1.2 christos PARSEOP_OPEN_PAREN
1293 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
1294 1.1 christos ;
1295 1.1 christos
1296 1.1 christos ThermalZoneTerm
1297 1.1.1.2 christos : PARSEOP_THERMALZONE
1298 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_THERMALZONE);}
1299 1.1 christos NameString
1300 1.1.1.2 christos PARSEOP_CLOSE_PAREN '{'
1301 1.1.1.4 christos TermList '}' {$$ = TrLinkOpChildren ($<n>3,2,
1302 1.1.1.4 christos TrSetOpFlags ($4, OP_IS_NAME_DECLARATION),$7);}
1303 1.1.1.2 christos | PARSEOP_THERMALZONE
1304 1.1.1.2 christos PARSEOP_OPEN_PAREN
1305 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
1306 1.1 christos ;
1307 1.1 christos
1308 1.1 christos TimerTerm
1309 1.1.1.2 christos : PARSEOP_TIMER
1310 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_TIMER);}
1311 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrLinkOpChildren ($<n>3,0);}
1312 1.1.1.4 christos | PARSEOP_TIMER {$$ = TrLinkOpChildren (
1313 1.1.1.4 christos TrCreateLeafOp (PARSEOP_TIMER),0);}
1314 1.1.1.2 christos | PARSEOP_TIMER
1315 1.1.1.2 christos PARSEOP_OPEN_PAREN
1316 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
1317 1.1 christos ;
1318 1.1 christos
1319 1.1 christos ToBCDTerm
1320 1.1.1.2 christos : PARSEOP_TOBCD
1321 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_TOBCD);}
1322 1.1 christos TermArg
1323 1.1 christos Target
1324 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrLinkOpChildren ($<n>3,2,$4,$5);}
1325 1.1.1.2 christos | PARSEOP_TOBCD
1326 1.1.1.2 christos PARSEOP_OPEN_PAREN
1327 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
1328 1.1 christos ;
1329 1.1 christos
1330 1.1 christos ToBufferTerm
1331 1.1.1.2 christos : PARSEOP_TOBUFFER
1332 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_TOBUFFER);}
1333 1.1 christos TermArg
1334 1.1 christos Target
1335 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrLinkOpChildren ($<n>3,2,$4,$5);}
1336 1.1.1.2 christos | PARSEOP_TOBUFFER
1337 1.1.1.2 christos PARSEOP_OPEN_PAREN
1338 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
1339 1.1 christos ;
1340 1.1 christos
1341 1.1 christos ToDecimalStringTerm
1342 1.1.1.2 christos : PARSEOP_TODECIMALSTRING
1343 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_TODECIMALSTRING);}
1344 1.1 christos TermArg
1345 1.1 christos Target
1346 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrLinkOpChildren ($<n>3,2,$4,$5);}
1347 1.1.1.2 christos | PARSEOP_TODECIMALSTRING
1348 1.1.1.2 christos PARSEOP_OPEN_PAREN
1349 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
1350 1.1 christos ;
1351 1.1 christos
1352 1.1 christos ToHexStringTerm
1353 1.1.1.2 christos : PARSEOP_TOHEXSTRING
1354 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_TOHEXSTRING);}
1355 1.1 christos TermArg
1356 1.1 christos Target
1357 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrLinkOpChildren ($<n>3,2,$4,$5);}
1358 1.1.1.2 christos | PARSEOP_TOHEXSTRING
1359 1.1.1.2 christos PARSEOP_OPEN_PAREN
1360 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
1361 1.1 christos ;
1362 1.1 christos
1363 1.1 christos ToIntegerTerm
1364 1.1.1.2 christos : PARSEOP_TOINTEGER
1365 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_TOINTEGER);}
1366 1.1 christos TermArg
1367 1.1 christos Target
1368 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrLinkOpChildren ($<n>3,2,$4,$5);}
1369 1.1.1.2 christos | PARSEOP_TOINTEGER
1370 1.1.1.2 christos PARSEOP_OPEN_PAREN
1371 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
1372 1.1 christos ;
1373 1.1 christos
1374 1.1 christos ToPLDTerm
1375 1.1.1.2 christos : PARSEOP_TOPLD
1376 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_TOPLD);}
1377 1.1 christos PldKeywordList
1378 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrLinkOpChildren ($<n>3,1,$4);}
1379 1.1.1.2 christos | PARSEOP_TOPLD
1380 1.1.1.2 christos PARSEOP_OPEN_PAREN
1381 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
1382 1.1 christos ;
1383 1.1 christos
1384 1.1 christos PldKeywordList
1385 1.1 christos : {$$ = NULL;}
1386 1.1 christos | PldKeyword
1387 1.1.1.4 christos PARSEOP_EXP_EQUALS Integer {$$ = TrLinkOpChildren ($1,1,$3);}
1388 1.1 christos | PldKeyword
1389 1.1.1.4 christos PARSEOP_EXP_EQUALS String {$$ = TrLinkOpChildren ($1,1,$3);}
1390 1.1 christos | PldKeywordList ',' /* Allows a trailing comma at list end */
1391 1.1 christos | PldKeywordList ','
1392 1.1 christos PldKeyword
1393 1.1.1.4 christos PARSEOP_EXP_EQUALS Integer {$$ = TrLinkPeerOp ($1,TrLinkOpChildren ($3,1,$5));}
1394 1.1 christos | PldKeywordList ','
1395 1.1 christos PldKeyword
1396 1.1.1.4 christos PARSEOP_EXP_EQUALS String {$$ = TrLinkPeerOp ($1,TrLinkOpChildren ($3,1,$5));}
1397 1.1 christos ;
1398 1.1 christos
1399 1.1 christos
1400 1.1 christos ToStringTerm
1401 1.1.1.2 christos : PARSEOP_TOSTRING
1402 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_TOSTRING);}
1403 1.1 christos TermArg
1404 1.1 christos OptionalCount
1405 1.1 christos Target
1406 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrLinkOpChildren ($<n>3,3,$4,$5,$6);}
1407 1.1.1.2 christos | PARSEOP_TOSTRING
1408 1.1.1.2 christos PARSEOP_OPEN_PAREN
1409 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
1410 1.1 christos ;
1411 1.1 christos
1412 1.1 christos ToUUIDTerm
1413 1.1.1.2 christos : PARSEOP_TOUUID
1414 1.1.1.2 christos PARSEOP_OPEN_PAREN
1415 1.1.1.9 christos StringLiteral
1416 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrSetOpIntegerValue (PARSEOP_TOUUID, $3);}
1417 1.1.1.2 christos | PARSEOP_TOUUID
1418 1.1.1.2 christos PARSEOP_OPEN_PAREN
1419 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
1420 1.1 christos ;
1421 1.1 christos
1422 1.1 christos UnicodeTerm
1423 1.1.1.2 christos : PARSEOP_UNICODE
1424 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_UNICODE);}
1425 1.1.1.9 christos StringLiteral
1426 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrLinkOpChildren ($<n>3,2,0,$4);}
1427 1.1.1.2 christos | PARSEOP_UNICODE
1428 1.1.1.2 christos PARSEOP_OPEN_PAREN
1429 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
1430 1.1 christos ;
1431 1.1 christos
1432 1.1 christos UnloadTerm
1433 1.1.1.2 christos : PARSEOP_UNLOAD
1434 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_UNLOAD);}
1435 1.1 christos SuperName
1436 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrLinkOpChildren ($<n>3,1,$4);}
1437 1.1.1.2 christos | PARSEOP_UNLOAD
1438 1.1.1.2 christos PARSEOP_OPEN_PAREN
1439 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
1440 1.1 christos ;
1441 1.1 christos
1442 1.1 christos WaitTerm
1443 1.1.1.2 christos : PARSEOP_WAIT
1444 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_WAIT);}
1445 1.1 christos SuperName
1446 1.1 christos TermArgItem
1447 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrLinkOpChildren ($<n>3,2,$4,$5);}
1448 1.1.1.2 christos | PARSEOP_WAIT
1449 1.1.1.2 christos PARSEOP_OPEN_PAREN
1450 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
1451 1.1 christos ;
1452 1.1 christos
1453 1.1 christos XOrTerm
1454 1.1.1.2 christos : PARSEOP_XOR
1455 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_XOR);}
1456 1.1 christos TermArg
1457 1.1 christos TermArgItem
1458 1.1 christos Target
1459 1.1.1.4 christos PARSEOP_CLOSE_PAREN {$$ = TrLinkOpChildren ($<n>3,3,$4,$5,$6);}
1460 1.1.1.2 christos | PARSEOP_XOR
1461 1.1.1.2 christos PARSEOP_OPEN_PAREN
1462 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
1463 1.1 christos ;
1464 1.1 christos
1465 1.1 christos WhileTerm
1466 1.1.1.2 christos : PARSEOP_WHILE
1467 1.1.1.4 christos PARSEOP_OPEN_PAREN {$<n>$ = TrCreateLeafOp (PARSEOP_WHILE);}
1468 1.1 christos TermArg
1469 1.1.1.2 christos PARSEOP_CLOSE_PAREN
1470 1.1.1.4 christos '{' TermList '}' {$$ = TrLinkOpChildren ($<n>3,2,$4,$7);}
1471 1.1.1.2 christos | PARSEOP_WHILE
1472 1.1.1.2 christos PARSEOP_OPEN_PAREN
1473 1.1.1.2 christos error PARSEOP_CLOSE_PAREN {$$ = AslDoError(); yyclearin;}
1474 1.1 christos ;
1475