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