xref: /netbsd-src/sys/external/bsd/acpica/dist/compiler/asltokens.y (revision 9fd8799cb5ceb66c69f2eb1a6d26a1d587ba1f1e)
1 NoEcho('
2 /******************************************************************************
3  *
4  * Module Name: asltokens.y - Bison/Yacc token types
5  *
6  *****************************************************************************/
7 
8 /*
9  * Copyright (C) 2000 - 2020, Intel Corp.
10  * All rights reserved.
11  *
12  * Redistribution and use in source and binary forms, with or without
13  * modification, are permitted provided that the following conditions
14  * are met:
15  * 1. Redistributions of source code must retain the above copyright
16  *    notice, this list of conditions, and the following disclaimer,
17  *    without modification.
18  * 2. Redistributions in binary form must reproduce at minimum a disclaimer
19  *    substantially similar to the "NO WARRANTY" disclaimer below
20  *    ("Disclaimer") and any redistribution must be conditioned upon
21  *    including a substantially similar Disclaimer requirement for further
22  *    binary redistribution.
23  * 3. Neither the names of the above-listed copyright holders nor the names
24  *    of any contributors may be used to endorse or promote products derived
25  *    from this software without specific prior written permission.
26  *
27  * Alternatively, this software may be distributed under the terms of the
28  * GNU General Public License ("GPL") version 2 as published by the Free
29  * Software Foundation.
30  *
31  * NO WARRANTY
32  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
33  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
34  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR
35  * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
36  * HOLDERS OR CONTRIBUTORS BE LIABLE FOR SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
37  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
38  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
39  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
40  * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING
41  * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
42  * POSSIBILITY OF SUCH DAMAGES.
43  */
44 
45 ')
46 
47 /******************************************************************************
48  *
49  * Token types: These are returned by the lexer
50  *
51  * NOTE: This list MUST match the AslKeywordMapping table found
52  *       in aslmap.c EXACTLY!  Double check any changes!
53  *
54  *****************************************************************************/
55 
56 /*
57  * Most tokens are defined to return <i>, which is a UINT64.
58  *
59  * These tokens return <s>, a pointer to the associated lexed string:
60  *
61  *  PARSEOP_NAMESEG
62  *  PARSEOP_NAMESTRING
63  *  PARSEOP_STRING_LITERAL
64  *  PARSEOP_STRUCTURE_NAMESTRING
65  */
66 %token <i> PARSEOP_ACCESSAS
67 %token <i> PARSEOP_ACCESSATTRIB_BLOCK
68 %token <i> PARSEOP_ACCESSATTRIB_BLOCK_CALL
69 %token <i> PARSEOP_ACCESSATTRIB_BYTE
70 %token <i> PARSEOP_ACCESSATTRIB_BYTES
71 %token <i> PARSEOP_ACCESSATTRIB_QUICK
72 %token <i> PARSEOP_ACCESSATTRIB_RAW_BYTES
73 %token <i> PARSEOP_ACCESSATTRIB_RAW_PROCESS
74 %token <i> PARSEOP_ACCESSATTRIB_SND_RCV
75 %token <i> PARSEOP_ACCESSATTRIB_WORD
76 %token <i> PARSEOP_ACCESSATTRIB_WORD_CALL
77 %token <i> PARSEOP_ACCESSTYPE_ANY
78 %token <i> PARSEOP_ACCESSTYPE_BUF
79 %token <i> PARSEOP_ACCESSTYPE_BYTE
80 %token <i> PARSEOP_ACCESSTYPE_DWORD
81 %token <i> PARSEOP_ACCESSTYPE_QWORD
82 %token <i> PARSEOP_ACCESSTYPE_WORD
83 %token <i> PARSEOP_ACQUIRE
84 %token <i> PARSEOP_ADD
85 %token <i> PARSEOP_ADDRESSINGMODE_7BIT
86 %token <i> PARSEOP_ADDRESSINGMODE_10BIT
87 %token <i> PARSEOP_ADDRESSTYPE_ACPI
88 %token <i> PARSEOP_ADDRESSTYPE_MEMORY
89 %token <i> PARSEOP_ADDRESSTYPE_NVS
90 %token <i> PARSEOP_ADDRESSTYPE_RESERVED
91 %token <i> PARSEOP_ALIAS
92 %token <i> PARSEOP_AND
93 %token <i> PARSEOP_ARG0
94 %token <i> PARSEOP_ARG1
95 %token <i> PARSEOP_ARG2
96 %token <i> PARSEOP_ARG3
97 %token <i> PARSEOP_ARG4
98 %token <i> PARSEOP_ARG5
99 %token <i> PARSEOP_ARG6
100 %token <i> PARSEOP_BANKFIELD
101 %token <i> PARSEOP_BITSPERBYTE_EIGHT
102 %token <i> PARSEOP_BITSPERBYTE_FIVE
103 %token <i> PARSEOP_BITSPERBYTE_NINE
104 %token <i> PARSEOP_BITSPERBYTE_SEVEN
105 %token <i> PARSEOP_BITSPERBYTE_SIX
106 %token <i> PARSEOP_BREAK
107 %token <i> PARSEOP_BREAKPOINT
108 %token <i> PARSEOP_BUFFER
109 %token <i> PARSEOP_BUSMASTERTYPE_MASTER
110 %token <i> PARSEOP_BUSMASTERTYPE_NOTMASTER
111 %token <i> PARSEOP_BYTECONST
112 %token <i> PARSEOP_CASE
113 %token <i> PARSEOP_CLOCKPHASE_FIRST
114 %token <i> PARSEOP_CLOCKPHASE_SECOND
115 %token <i> PARSEOP_CLOCKPOLARITY_HIGH
116 %token <i> PARSEOP_CLOCKPOLARITY_LOW
117 %token <i> PARSEOP_CONCATENATE
118 %token <i> PARSEOP_CONCATENATERESTEMPLATE
119 %token <i> PARSEOP_CONDREFOF
120 %token <i> PARSEOP_CONNECTION
121 %token <i> PARSEOP_CONTINUE
122 %token <i> PARSEOP_COPYOBJECT
123 %token <i> PARSEOP_CREATEBITFIELD
124 %token <i> PARSEOP_CREATEBYTEFIELD
125 %token <i> PARSEOP_CREATEDWORDFIELD
126 %token <i> PARSEOP_CREATEFIELD
127 %token <i> PARSEOP_CREATEQWORDFIELD
128 %token <i> PARSEOP_CREATEWORDFIELD
129 %token <i> PARSEOP_DATABUFFER
130 %token <i> PARSEOP_DATATABLEREGION
131 %token <i> PARSEOP_DEBUG
132 %token <i> PARSEOP_DECODETYPE_POS
133 %token <i> PARSEOP_DECODETYPE_SUB
134 %token <i> PARSEOP_DECREMENT
135 %token <i> PARSEOP_DEFAULT
136 %token <i> PARSEOP_DEFAULT_ARG
137 %token <i> PARSEOP_DEFINITION_BLOCK
138 %token <i> PARSEOP_DEREFOF
139 %token <i> PARSEOP_DEVICE
140 %token <i> PARSEOP_DEVICEPOLARITY_HIGH
141 %token <i> PARSEOP_DEVICEPOLARITY_LOW
142 %token <i> PARSEOP_DIVIDE
143 %token <i> PARSEOP_DMA
144 %token <i> PARSEOP_DMATYPE_A
145 %token <i> PARSEOP_DMATYPE_COMPATIBILITY
146 %token <i> PARSEOP_DMATYPE_B
147 %token <i> PARSEOP_DMATYPE_F
148 %token <i> PARSEOP_DWORDCONST
149 %token <i> PARSEOP_DWORDIO
150 %token <i> PARSEOP_DWORDMEMORY
151 %token <i> PARSEOP_DWORDSPACE
152 %token <i> PARSEOP_EISAID
153 %token <i> PARSEOP_ELSE
154 %token <i> PARSEOP_ELSEIF
155 %token <i> PARSEOP_ENDDEPENDENTFN
156 %token <i> PARSEOP_ENDIAN_BIG
157 %token <i> PARSEOP_ENDIAN_LITTLE
158 %token <i> PARSEOP_ENDTAG
159 %token <i> PARSEOP_ERRORNODE
160 %token <i> PARSEOP_EVENT
161 %token <i> PARSEOP_EXTENDEDIO
162 %token <i> PARSEOP_EXTENDEDMEMORY
163 %token <i> PARSEOP_EXTENDEDSPACE
164 %token <i> PARSEOP_EXTERNAL
165 %token <i> PARSEOP_FATAL
166 %token <i> PARSEOP_FIELD
167 %token <i> PARSEOP_FINDSETLEFTBIT
168 %token <i> PARSEOP_FINDSETRIGHTBIT
169 %token <i> PARSEOP_FIXEDDMA
170 %token <i> PARSEOP_FIXEDIO
171 %token <i> PARSEOP_FLOWCONTROL_HW
172 %token <i> PARSEOP_FLOWCONTROL_NONE
173 %token <i> PARSEOP_FLOWCONTROL_SW
174 %token <i> PARSEOP_FROMBCD
175 %token <i> PARSEOP_FUNCTION
176 %token <i> PARSEOP_GPIO_INT
177 %token <i> PARSEOP_GPIO_IO
178 %token <i> PARSEOP_I2C_SERIALBUS
179 %token <i> PARSEOP_I2C_SERIALBUS_V2
180 %token <i> PARSEOP_IF
181 %token <i> PARSEOP_INCLUDE
182 %token <i> PARSEOP_INCLUDE_END
183 %token <i> PARSEOP_INCREMENT
184 %token <i> PARSEOP_INDEX
185 %token <i> PARSEOP_INDEXFIELD
186 %token <i> PARSEOP_INTEGER
187 %token <i> PARSEOP_INTERRUPT
188 %token <i> PARSEOP_INTLEVEL_ACTIVEBOTH
189 %token <i> PARSEOP_INTLEVEL_ACTIVEHIGH
190 %token <i> PARSEOP_INTLEVEL_ACTIVELOW
191 %token <i> PARSEOP_INTTYPE_EDGE
192 %token <i> PARSEOP_INTTYPE_LEVEL
193 %token <i> PARSEOP_IO
194 %token <i> PARSEOP_IODECODETYPE_10
195 %token <i> PARSEOP_IODECODETYPE_16
196 %token <i> PARSEOP_IORESTRICT_IN
197 %token <i> PARSEOP_IORESTRICT_NONE
198 %token <i> PARSEOP_IORESTRICT_OUT
199 %token <i> PARSEOP_IORESTRICT_PRESERVE
200 %token <i> PARSEOP_IRQ
201 %token <i> PARSEOP_IRQNOFLAGS
202 %token <i> PARSEOP_LAND
203 %token <i> PARSEOP_LEQUAL
204 %token <i> PARSEOP_LGREATER
205 %token <i> PARSEOP_LGREATEREQUAL
206 %token <i> PARSEOP_LLESS
207 %token <i> PARSEOP_LLESSEQUAL
208 %token <i> PARSEOP_LNOT
209 %token <i> PARSEOP_LNOTEQUAL
210 %token <i> PARSEOP_LOAD
211 %token <i> PARSEOP_LOADTABLE
212 %token <i> PARSEOP_LOCAL0
213 %token <i> PARSEOP_LOCAL1
214 %token <i> PARSEOP_LOCAL2
215 %token <i> PARSEOP_LOCAL3
216 %token <i> PARSEOP_LOCAL4
217 %token <i> PARSEOP_LOCAL5
218 %token <i> PARSEOP_LOCAL6
219 %token <i> PARSEOP_LOCAL7
220 %token <i> PARSEOP_LOCKRULE_LOCK
221 %token <i> PARSEOP_LOCKRULE_NOLOCK
222 %token <i> PARSEOP_LOR
223 %token <i> PARSEOP_MATCH
224 %token <i> PARSEOP_MATCHTYPE_MEQ
225 %token <i> PARSEOP_MATCHTYPE_MGE
226 %token <i> PARSEOP_MATCHTYPE_MGT
227 %token <i> PARSEOP_MATCHTYPE_MLE
228 %token <i> PARSEOP_MATCHTYPE_MLT
229 %token <i> PARSEOP_MATCHTYPE_MTR
230 %token <i> PARSEOP_MAXTYPE_FIXED
231 %token <i> PARSEOP_MAXTYPE_NOTFIXED
232 %token <i> PARSEOP_MEMORY24
233 %token <i> PARSEOP_MEMORY32
234 %token <i> PARSEOP_MEMORY32FIXED
235 %token <i> PARSEOP_MEMTYPE_CACHEABLE
236 %token <i> PARSEOP_MEMTYPE_NONCACHEABLE
237 %token <i> PARSEOP_MEMTYPE_PREFETCHABLE
238 %token <i> PARSEOP_MEMTYPE_WRITECOMBINING
239 %token <i> PARSEOP_METHOD
240 %token <i> PARSEOP_METHODCALL
241 %token <i> PARSEOP_MID
242 %token <i> PARSEOP_MINTYPE_FIXED
243 %token <i> PARSEOP_MINTYPE_NOTFIXED
244 %token <i> PARSEOP_MOD
245 %token <i> PARSEOP_MULTIPLY
246 %token <i> PARSEOP_MUTEX
247 %token <i> PARSEOP_NAME
248 %token <s> PARSEOP_NAMESEG
249 %token <s> PARSEOP_NAMESTRING
250 %token <i> PARSEOP_NAND
251 %token <i> PARSEOP_NOOP
252 %token <i> PARSEOP_NOR
253 %token <i> PARSEOP_NOT
254 %token <i> PARSEOP_NOTIFY
255 %token <i> PARSEOP_OBJECTTYPE
256 %token <i> PARSEOP_OBJECTTYPE_BFF
257 %token <i> PARSEOP_OBJECTTYPE_BUF
258 %token <i> PARSEOP_OBJECTTYPE_DDB
259 %token <i> PARSEOP_OBJECTTYPE_DEV
260 %token <i> PARSEOP_OBJECTTYPE_EVT
261 %token <i> PARSEOP_OBJECTTYPE_FLD
262 %token <i> PARSEOP_OBJECTTYPE_INT
263 %token <i> PARSEOP_OBJECTTYPE_MTH
264 %token <i> PARSEOP_OBJECTTYPE_MTX
265 %token <i> PARSEOP_OBJECTTYPE_OPR
266 %token <i> PARSEOP_OBJECTTYPE_PKG
267 %token <i> PARSEOP_OBJECTTYPE_POW
268 %token <i> PARSEOP_OBJECTTYPE_PRO
269 %token <i> PARSEOP_OBJECTTYPE_STR
270 %token <i> PARSEOP_OBJECTTYPE_THZ
271 %token <i> PARSEOP_OBJECTTYPE_UNK
272 %token <i> PARSEOP_OFFSET
273 %token <i> PARSEOP_ONE
274 %token <i> PARSEOP_ONES
275 %token <i> PARSEOP_OPERATIONREGION
276 %token <i> PARSEOP_OR
277 %token <i> PARSEOP_PACKAGE
278 %token <i> PARSEOP_PACKAGE_LENGTH
279 %token <i> PARSEOP_PARITYTYPE_EVEN
280 %token <i> PARSEOP_PARITYTYPE_MARK
281 %token <i> PARSEOP_PARITYTYPE_NONE
282 %token <i> PARSEOP_PARITYTYPE_ODD
283 %token <i> PARSEOP_PARITYTYPE_SPACE
284 %token <i> PARSEOP_PINCONFIG
285 %token <i> PARSEOP_PINFUNCTION
286 %token <i> PARSEOP_PINGROUP
287 %token <i> PARSEOP_PINGROUPCONFIG
288 %token <i> PARSEOP_PINGROUPFUNCTION
289 %token <i> PARSEOP_PIN_NOPULL
290 %token <i> PARSEOP_PIN_PULLDEFAULT
291 %token <i> PARSEOP_PIN_PULLDOWN
292 %token <i> PARSEOP_PIN_PULLUP
293 %token <i> PARSEOP_POWERRESOURCE
294 %token <i> PARSEOP_PROCESSOR
295 %token <i> PARSEOP_QWORDCONST
296 %token <i> PARSEOP_QWORDIO
297 %token <i> PARSEOP_QWORDMEMORY
298 %token <i> PARSEOP_QWORDSPACE
299 %token <i> PARSEOP_RANGETYPE_ENTIRE
300 %token <i> PARSEOP_RANGETYPE_ISAONLY
301 %token <i> PARSEOP_RANGETYPE_NONISAONLY
302 %token <i> PARSEOP_RAW_DATA
303 %token <i> PARSEOP_READWRITETYPE_BOTH
304 %token <i> PARSEOP_READWRITETYPE_READONLY
305 %token <i> PARSEOP_REFOF
306 %token <i> PARSEOP_REGIONSPACE_CMOS
307 %token <i> PARSEOP_REGIONSPACE_EC
308 %token <i> PARSEOP_REGIONSPACE_FFIXEDHW
309 %token <i> PARSEOP_REGIONSPACE_GPIO
310 %token <i> PARSEOP_REGIONSPACE_GSBUS
311 %token <i> PARSEOP_REGIONSPACE_IO
312 %token <i> PARSEOP_REGIONSPACE_IPMI
313 %token <i> PARSEOP_REGIONSPACE_MEM
314 %token <i> PARSEOP_REGIONSPACE_PCC
315 %token <i> PARSEOP_REGIONSPACE_PCI
316 %token <i> PARSEOP_REGIONSPACE_PCIBAR
317 %token <i> PARSEOP_REGIONSPACE_PRM
318 %token <i> PARSEOP_REGIONSPACE_SMBUS
319 %token <i> PARSEOP_REGISTER
320 %token <i> PARSEOP_RELEASE
321 %token <i> PARSEOP_RESERVED_BYTES
322 %token <i> PARSEOP_RESET
323 %token <i> PARSEOP_RESOURCETEMPLATE
324 %token <i> PARSEOP_RESOURCETYPE_CONSUMER
325 %token <i> PARSEOP_RESOURCETYPE_PRODUCER
326 %token <i> PARSEOP_RETURN
327 %token <i> PARSEOP_REVISION
328 %token <i> PARSEOP_SCOPE
329 %token <i> PARSEOP_SERIALIZERULE_NOTSERIAL
330 %token <i> PARSEOP_SERIALIZERULE_SERIAL
331 %token <i> PARSEOP_SHARETYPE_EXCLUSIVE
332 %token <i> PARSEOP_SHARETYPE_EXCLUSIVEWAKE
333 %token <i> PARSEOP_SHARETYPE_SHARED
334 %token <i> PARSEOP_SHARETYPE_SHAREDWAKE
335 %token <i> PARSEOP_SHIFTLEFT
336 %token <i> PARSEOP_SHIFTRIGHT
337 %token <i> PARSEOP_SIGNAL
338 %token <i> PARSEOP_SIZEOF
339 %token <i> PARSEOP_SLAVEMODE_CONTROLLERINIT
340 %token <i> PARSEOP_SLAVEMODE_DEVICEINIT
341 %token <i> PARSEOP_SLEEP
342 %token <i> PARSEOP_SPI_SERIALBUS
343 %token <i> PARSEOP_SPI_SERIALBUS_V2
344 %token <i> PARSEOP_STALL
345 %token <i> PARSEOP_STARTDEPENDENTFN
346 %token <i> PARSEOP_STARTDEPENDENTFN_NOPRI
347 %token <i> PARSEOP_STOPBITS_ONE
348 %token <i> PARSEOP_STOPBITS_ONEPLUSHALF
349 %token <i> PARSEOP_STOPBITS_TWO
350 %token <i> PARSEOP_STOPBITS_ZERO
351 %token <i> PARSEOP_STORE
352 %token <s> PARSEOP_STRING_LITERAL
353 %token <i> PARSEOP_SUBTRACT
354 %token <i> PARSEOP_SWITCH
355 %token <i> PARSEOP_THERMALZONE
356 %token <i> PARSEOP_TIMER
357 %token <i> PARSEOP_TOBCD
358 %token <i> PARSEOP_TOBUFFER
359 %token <i> PARSEOP_TODECIMALSTRING
360 %token <i> PARSEOP_TOHEXSTRING
361 %token <i> PARSEOP_TOINTEGER
362 %token <i> PARSEOP_TOSTRING
363 %token <i> PARSEOP_TOUUID
364 %token <i> PARSEOP_TRANSLATIONTYPE_DENSE
365 %token <i> PARSEOP_TRANSLATIONTYPE_SPARSE
366 %token <i> PARSEOP_TYPE_STATIC
367 %token <i> PARSEOP_TYPE_TRANSLATION
368 %token <i> PARSEOP_UART_SERIALBUS
369 %token <i> PARSEOP_UART_SERIALBUS_V2
370 %token <i> PARSEOP_UNICODE
371 %token <i> PARSEOP_UNLOAD
372 %token <i> PARSEOP_UPDATERULE_ONES
373 %token <i> PARSEOP_UPDATERULE_PRESERVE
374 %token <i> PARSEOP_UPDATERULE_ZEROS
375 %token <i> PARSEOP_VAR_PACKAGE
376 %token <i> PARSEOP_VENDORLONG
377 %token <i> PARSEOP_VENDORSHORT
378 %token <i> PARSEOP_WAIT
379 %token <i> PARSEOP_WHILE
380 %token <i> PARSEOP_WIREMODE_FOUR
381 %token <i> PARSEOP_WIREMODE_THREE
382 %token <i> PARSEOP_WORDBUSNUMBER
383 %token <i> PARSEOP_WORDCONST
384 %token <i> PARSEOP_WORDIO
385 %token <i> PARSEOP_WORDSPACE
386 %token <i> PARSEOP_XFERSIZE_8
387 %token <i> PARSEOP_XFERSIZE_16
388 %token <i> PARSEOP_XFERSIZE_32
389 %token <i> PARSEOP_XFERSIZE_64
390 %token <i> PARSEOP_XFERSIZE_128
391 %token <i> PARSEOP_XFERSIZE_256
392 %token <i> PARSEOP_XFERTYPE_8
393 %token <i> PARSEOP_XFERTYPE_8_16
394 %token <i> PARSEOP_XFERTYPE_16
395 %token <i> PARSEOP_XOR
396 %token <i> PARSEOP_ZERO
397 
398 /* ToPld macro */
399 
400 %token <i> PARSEOP_TOPLD
401 %token <i> PARSEOP_PLD_REVISION
402 %token <i> PARSEOP_PLD_IGNORECOLOR
403 %token <i> PARSEOP_PLD_RED
404 %token <i> PARSEOP_PLD_GREEN
405 %token <i> PARSEOP_PLD_BLUE
406 %token <i> PARSEOP_PLD_WIDTH
407 %token <i> PARSEOP_PLD_HEIGHT
408 %token <i> PARSEOP_PLD_USERVISIBLE
409 %token <i> PARSEOP_PLD_DOCK
410 %token <i> PARSEOP_PLD_LID
411 %token <i> PARSEOP_PLD_PANEL
412 %token <i> PARSEOP_PLD_VERTICALPOSITION
413 %token <i> PARSEOP_PLD_HORIZONTALPOSITION
414 %token <i> PARSEOP_PLD_SHAPE
415 %token <i> PARSEOP_PLD_GROUPORIENTATION
416 %token <i> PARSEOP_PLD_GROUPTOKEN
417 %token <i> PARSEOP_PLD_GROUPPOSITION
418 %token <i> PARSEOP_PLD_BAY
419 %token <i> PARSEOP_PLD_EJECTABLE
420 %token <i> PARSEOP_PLD_EJECTREQUIRED
421 %token <i> PARSEOP_PLD_CABINETNUMBER
422 %token <i> PARSEOP_PLD_CARDCAGENUMBER
423 %token <i> PARSEOP_PLD_REFERENCE
424 %token <i> PARSEOP_PLD_ROTATION
425 %token <i> PARSEOP_PLD_ORDER
426 %token <i> PARSEOP_PLD_RESERVED
427 %token <i> PARSEOP_PLD_VERTICALOFFSET
428 %token <i> PARSEOP_PLD_HORIZONTALOFFSET
429 
430 /*
431  * C-style expression parser. These must appear after all of the
432  * standard ASL operators and keywords.
433  *
434  * Note: The order of these tokens implements the precedence rules
435  * (low precedence to high). See aslrules.y for an exhaustive list.
436  */
437 %right <i> PARSEOP_EXP_EQUALS
438            PARSEOP_EXP_ADD_EQ
439            PARSEOP_EXP_SUB_EQ
440            PARSEOP_EXP_MUL_EQ
441            PARSEOP_EXP_DIV_EQ
442            PARSEOP_EXP_MOD_EQ
443            PARSEOP_EXP_SHL_EQ
444            PARSEOP_EXP_SHR_EQ
445            PARSEOP_EXP_AND_EQ
446            PARSEOP_EXP_XOR_EQ
447            PARSEOP_EXP_OR_EQ
448 
449 %left <i>  PARSEOP_EXP_LOGICAL_OR
450 %left <i>  PARSEOP_EXP_LOGICAL_AND
451 %left <i>  PARSEOP_EXP_OR
452 %left <i>  PARSEOP_EXP_XOR
453 %left <i>  PARSEOP_EXP_AND
454 %left <i>  PARSEOP_EXP_EQUAL
455            PARSEOP_EXP_NOT_EQUAL
456 %left <i>  PARSEOP_EXP_GREATER
457            PARSEOP_EXP_LESS
458            PARSEOP_EXP_GREATER_EQUAL
459            PARSEOP_EXP_LESS_EQUAL
460 %left <i>  PARSEOP_EXP_SHIFT_RIGHT
461            PARSEOP_EXP_SHIFT_LEFT
462 %left <i>  PARSEOP_EXP_ADD
463            PARSEOP_EXP_SUBTRACT
464 %left <i>  PARSEOP_EXP_MULTIPLY
465            PARSEOP_EXP_DIVIDE
466            PARSEOP_EXP_MODULO
467 
468 %right <i> PARSEOP_EXP_NOT
469            PARSEOP_EXP_LOGICAL_NOT
470 
471 %left <i>  PARSEOP_EXP_INCREMENT
472            PARSEOP_EXP_DECREMENT
473 
474 %left <i>  PARSEOP_OPEN_PAREN
475            PARSEOP_CLOSE_PAREN
476 
477 /* Brackets for Index() support */
478 
479 %left <i>  PARSEOP_EXP_INDEX_LEFT
480 %right <i> PARSEOP_EXP_INDEX_RIGHT
481 
482 /* Macros */
483 
484 %token <i> PARSEOP_PRINTF
485 %token <i> PARSEOP_FPRINTF
486 %token <i> PARSEOP_FOR
487 
488 /* Structures */
489 
490 %token <i> PARSEOP_STRUCTURE
491 %token <s> PARSEOP_STRUCTURE_NAMESTRING
492 %token <i> PARSEOP_STRUCTURE_TAG
493 %token <i> PARSEOP_STRUCTURE_ELEMENT
494 %token <i> PARSEOP_STRUCTURE_INSTANCE
495 %token <i> PARSEOP_STRUCTURE_REFERENCE
496 %token <i> PARSEOP_STRUCTURE_POINTER
497 
498 /* Top level */
499 
500 %token <i> PARSEOP_ASL_CODE
501 
502 
503 /*******************************************************************************
504  *
505  * Tokens below are not in the aslmap.c file
506  *
507  ******************************************************************************/
508 
509 
510 /* Tokens below this are not in the aslmap.c file */
511 
512 /* Specific parentheses tokens are not used at this time */
513            /* PARSEOP_EXP_PAREN_OPEN */
514            /* PARSEOP_EXP_PAREN_CLOSE */
515 
516 /* ASL+ variable creation */
517 
518 %token <i> PARSEOP_INTEGER_TYPE
519 %token <i> PARSEOP_STRING_TYPE
520 %token <i> PARSEOP_BUFFER_TYPE
521 %token <i> PARSEOP_PACKAGE_TYPE
522 %token <i> PARSEOP_REFERENCE_TYPE
523 
524 
525 /*
526  * Special functions. These should probably stay at the end of this
527  * table.
528  */
529 %token <i> PARSEOP___DATE__
530 %token <i> PARSEOP___FILE__
531 %token <i> PARSEOP___LINE__
532 %token <i> PARSEOP___PATH__
533 %token <i> PARSEOP___METHOD__
534