1    /*
2     * Some or all of this work - Copyright (c) 2006 - 2021, Intel Corp.
3     * All rights reserved.
4     *
5     * Redistribution and use in source and binary forms, with or without modification,
6     * are permitted provided that the following conditions are met:
7     *
8     * Redistributions of source code must retain the above copyright notice,
9     * this list of conditions and the following disclaimer.
10     * Redistributions in binary form must reproduce the above copyright notice,
11     * this list of conditions and the following disclaimer in the documentation
12     * and/or other materials provided with the distribution.
13     * Neither the name of Intel Corporation nor the names of its contributors
14     * may be used to endorse or promote products derived from this software
15     * without specific prior written permission.
16     *
17     * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
18     * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
19     * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
20     * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
21     * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
22     * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
23     * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
24     * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
25     * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
26     * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
27     */
28    /*
29     * DynObj: Method execution control operators
30     */
31    Name (Z131, 0x83)
32    /* Check the Method Execution Control operators */
33
34    Method (M372, 0, Serialized)
35    {
36        /* The Created Objects benchmark Package */
37
38        Name (PP00, Package (0x01){})
39        /* The Deleted Objects benchmark Package */
40
41        Name (PP01, Package (0x01){})
42        /* The per-memory type benchmark Package */
43
44        Name (PP02, Package (0x01){})
45        /* Package for _TCI-begin statistics */
46        /* (use NamedX, don't use ArgX/LocalX). */
47        Name (PP0A, Package (0x01){})
48        /* Objects for verified operators */
49
50        Name (NUM, 0x00)
51        Name (NUM2, 0x00)
52        Name (LPN0, 0x00)
53        Name (LPC0, 0x00)
54        Name (I000, 0x00)
55        Name (I001, 0x00)
56        Name (I002, 0x00)
57        /* Methods verified */
58
59        Method (M000, 0, NotSerialized)
60        {
61        }
62
63        Method (M001, 0, NotSerialized)
64        {
65            Return (0x03E8)
66        }
67
68        Method (M002, 6, NotSerialized)
69        {
70        }
71
72        Method (M003, 7, NotSerialized)
73        {
74            Return (0x03E8)
75        }
76
77        Method (M004, 7, NotSerialized)
78        {
79            Local0 = 0x00
80            Local1 = 0x00
81            Local2 = 0x00
82            Local3 = 0x00
83            Local4 = 0x00
84            Local5 = 0x00
85            Local6 = 0x00
86            Local7 = 0x00
87            Local7 = (Local0 + Local1)
88            Return (Local7)
89        }
90
91        /* Create and initialize the Memory Consumption Statistics Packages */
92
93        Local0 = M3A0 (C200)   /* _TCI-end statistics */
94        PP0A = M3A0 (C201)     /* _TCI-begin statistics */
95        Local1 = M3A0 (0x00)      /* difference */
96        /* Available free locals */
97
98        Local2 = 0x00
99        Local3 = 0x00
100        Local4 = 0x00
101        Local5 = 0x00
102        Local6 = 0x00
103        Local7 = 0x00
104        SET0 (Z131, "m372", 0x00)
105        /* ======================== While */
106
107        If (RN00)
108        {
109            Debug = "While, Continue, Break"
110            NUM = 0x49
111            LPN0 = NUM /* \M372.NUM_ */
112            LPC0 = 0x00
113            _TCI (C200, Local0)
114            While (LPN0)
115            {
116                LPN0--
117                LPC0++
118            }
119
120            _TCI (C201, PP0A)
121            M3A3 (Local0, PP0A, Local1)
122            PP00 = M3A8 ()
123            Local5 = (0x02 * NUM) /* \M372.NUM_ */
124            PP00 [C009] = Local5 /* Integer */
125            M3A4 (Local0, PP0A, Local1, PP00, 0x00, 0x00, 0x00)
126            /* Inv: why (3*num)+1, why +1? */
127
128            NUM = 0x25
129            Local4 = NUM /* \M372.NUM_ */
130            Local5 = 0x00
131            _TCI (C200, Local0)
132            While (Local4)
133            {
134                Local4--
135                Local5++
136            }
137
138            _TCI (C201, PP0A)
139            M3A3 (Local0, PP0A, Local1)
140            PP00 = M3A8 ()
141            Local6 = (0x02 * NUM) /* \M372.NUM_ */
142            Local7 = (0x03 * NUM) /* \M372.NUM_ */
143            Local7++
144            PP00 [C009] = Local6 /* Integer */
145            PP00 [C01C] = Local7 /* LOCAL_REFERENCE */
146            M3A4 (Local0, PP0A, Local1, PP00, 0x00, 0x00, 0x01)
147        }
148
149        If (RN02)
150        {
151            /* Error: memory is lost */
152
153            NUM2 = 0xC8
154            I000 = NUM2 /* \M372.NUM2 */
155            NUM = 0xC8
156            LPN0 = NUM /* \M372.NUM_ */
157            LPC0 = 0x00
158            _TCI (C200, Local0)
159            While (LPN0)
160            {
161                If (I000)
162                {
163                    I000--
164                    Continue
165                }
166
167                LPN0--
168                LPC0++
169            }
170
171            _TCI (C201, PP0A)
172            M3A3 (Local0, PP0A, Local1)
173            PP00 = M3A8 ()
174            Local5 = (0x02 * NUM) /* \M372.NUM_ */
175            Local4 = (Local5 + NUM2) /* \M372.NUM2 */
176            PP00 [C009] = Local4 /* Integer */
177            M3A4 (Local0, PP0A, Local1, PP00, 0x00, 0x00, 0x02)
178        }
179
180        If (RN02)
181        {
182            /* Error: memory is lost */
183
184            NUM2 = 0x64
185            Local4 = NUM2 /* \M372.NUM2 */
186            NUM = 0xC8
187            Local5 = NUM /* \M372.NUM_ */
188            Local6 = 0x00
189            _TCI (C200, Local0)
190            While (Local5)
191            {
192                If (Local4)
193                {
194                    Local4--
195                    Continue
196                }
197
198                Local5--
199                Local6++
200            }
201
202            _TCI (C201, PP0A)
203            M3A3 (Local0, PP0A, Local1)
204            PP00 = M3A8 ()
205            Local5 = (0x02 * NUM) /* \M372.NUM_ */
206            Local4 = (Local5 + NUM2) /* \M372.NUM2 */
207            PP00 [C009] = Local4 /* Integer */
208            Local7 = (0x04 * NUM) /* \M372.NUM_ */
209            Local7++
210            Local6 = (0x03 * NUM2) /* \M372.NUM2 */
211            Local5 = (Local7 + Local6)
212            PP00 [C01C] = Local5 /* LOCAL_REFERENCE */
213            M3A4 (Local0, PP0A, Local1, PP00, 0x00, 0x00, 0x03)
214        }
215
216        If (RN02)
217        {
218            NUM = 0x64
219            LPN0 = NUM /* \M372.NUM_ */
220            LPC0 = 0x00
221            _TCI (C200, Local0)
222            While (LPN0)
223            {
224                Break
225                LPN0--
226                LPC0++
227            }
228
229            _TCI (C201, PP0A)
230            M3A3 (Local0, PP0A, Local1)
231            PP00 = M3A8 ()
232            M3A4 (Local0, PP0A, Local1, PP00, 0x00, 0x00, 0x04)
233        }
234
235        /* ======================== If */
236
237        If (RN00)
238        {
239            Debug = "If, ElseIf, Else"
240            _TCI (C200, Local0)
241            If (0x00){}
242            _TCI (C201, PP0A)
243            M3A3 (Local0, PP0A, Local1)
244            PP00 = M3A8 ()
245            PP00 [C009] = 0x01 /* Integer */
246            M3A4 (Local0, PP0A, Local1, PP00, 0x00, 0x00, 0x05)
247            _TCI (C200, Local0)
248            If (0x01){}
249            _TCI (C201, PP0A)
250            M3A3 (Local0, PP0A, Local1)
251            PP00 = M3A8 ()
252            PP00 [C009] = 0x01 /* Integer */
253            M3A4 (Local0, PP0A, Local1, PP00, 0x00, 0x00, 0x06)
254            I000 = 0x00
255            _TCI (C200, Local0)
256            If (I000){}
257            _TCI (C201, PP0A)
258            M3A3 (Local0, PP0A, Local1)
259            PP00 = M3A8 ()
260            M3A4 (Local0, PP0A, Local1, PP00, 0x00, 0x00, 0x07)
261            I000 = 0x01
262            _TCI (C200, Local0)
263            If (I000){}
264            _TCI (C201, PP0A)
265            M3A3 (Local0, PP0A, Local1)
266            PP00 = M3A8 ()
267            M3A4 (Local0, PP0A, Local1, PP00, 0x00, 0x00, 0x08)
268            Local4 = 0x00
269            _TCI (C200, Local0)
270            If (Local4){}
271            _TCI (C201, PP0A)
272            M3A3 (Local0, PP0A, Local1)
273            PP00 = M3A8 ()
274            PP00 [C01C] = 0x01 /* LOCAL_REFERENCE */
275            M3A4 (Local0, PP0A, Local1, PP00, 0x00, 0x00, 0x09)
276            Local4 = 0x01
277            _TCI (C200, Local0)
278            If (Local4){}
279            _TCI (C201, PP0A)
280            M3A3 (Local0, PP0A, Local1)
281            PP00 = M3A8 ()
282            PP00 [C01C] = 0x01 /* LOCAL_REFERENCE */
283            M3A4 (Local0, PP0A, Local1, PP00, 0x00, 0x00, 0x0A)
284            I000 = 0x00
285            NUM = 0x13
286            LPN0 = NUM /* \M372.NUM_ */
287            LPC0 = 0x00
288            _TCI (C200, Local0)
289            While (LPN0)
290            {
291                If (I000){}
292                LPN0--
293                LPC0++
294            }
295
296            _TCI (C201, PP0A)
297            M3A3 (Local0, PP0A, Local1)
298            PP00 = M3A8 ()
299            Local5 = (0x02 * NUM) /* \M372.NUM_ */
300            PP00 [C009] = Local5 /* Integer */
301            M3A4 (Local0, PP0A, Local1, PP00, 0x00, 0x00, 0x0B)
302            I000 = 0x01
303            NUM = 0x13
304            LPN0 = NUM /* \M372.NUM_ */
305            LPC0 = 0x00
306            _TCI (C200, Local0)
307            While (LPN0)
308            {
309                If (I000){}
310                LPN0--
311                LPC0++
312            }
313
314            _TCI (C201, PP0A)
315            M3A3 (Local0, PP0A, Local1)
316            PP00 = M3A8 ()
317            Local5 = (0x02 * NUM) /* \M372.NUM_ */
318            PP00 [C009] = Local5 /* Integer */
319            M3A4 (Local0, PP0A, Local1, PP00, 0x00, 0x00, 0x0C)
320            Local4 = 0x00
321            NUM = 0x13
322            LPN0 = NUM /* \M372.NUM_ */
323            LPC0 = 0x00
324            _TCI (C200, Local0)
325            While (LPN0)
326            {
327                If (Local4){}
328                LPN0--
329                LPC0++
330            }
331
332            _TCI (C201, PP0A)
333            M3A3 (Local0, PP0A, Local1)
334            PP00 = M3A8 ()
335            Local5 = (0x02 * NUM) /* \M372.NUM_ */
336            PP00 [C009] = Local5 /* Integer */
337            PP00 [C01C] = NUM /* LOCAL_REFERENCE */ /* \M372.NUM_ */
338            M3A4 (Local0, PP0A, Local1, PP00, 0x00, 0x00, 0x0D)
339            Local4 = 0x01
340            NUM = 0x13
341            LPN0 = NUM /* \M372.NUM_ */
342            LPC0 = 0x00
343            _TCI (C200, Local0)
344            While (LPN0)
345            {
346                If (Local4){}
347                LPN0--
348                LPC0++
349            }
350
351            _TCI (C201, PP0A)
352            M3A3 (Local0, PP0A, Local1)
353            PP00 = M3A8 ()
354            Local5 = (0x02 * NUM) /* \M372.NUM_ */
355            PP00 [C009] = Local5 /* Integer */
356            PP00 [C01C] = NUM /* LOCAL_REFERENCE */ /* \M372.NUM_ */
357            M3A4 (Local0, PP0A, Local1, PP00, 0x00, 0x00, 0x0E)
358            /* LEqual */
359
360            NUM = 0x64
361            LPN0 = NUM /* \M372.NUM_ */
362            LPC0 = 0x00
363            Local4 = 0x01
364            Local5 = 0x01
365            _TCI (C200, Local0)
366            While (LPN0)
367            {
368                If ((Local4 == Local5)){}
369                LPN0--
370                LPC0++
371            }
372
373            _TCI (C201, PP0A)
374            M3A3 (Local0, PP0A, Local1)
375            PP00 = M3A8 ()
376            Local5 = (0x03 * NUM) /* \M372.NUM_ */
377            PP00 [C009] = Local5 /* Integer */
378            Local5 = (0x02 * NUM) /* \M372.NUM_ */
379            PP00 [C01C] = Local5 /* LOCAL_REFERENCE */
380            M3A4 (Local0, PP0A, Local1, PP00, 0x00, 0x00, 0x0F)
381            NUM = 0x64
382            LPN0 = NUM /* \M372.NUM_ */
383            LPC0 = 0x00
384            Local4 = 0x00
385            Local5 = 0x01
386            _TCI (C200, Local0)
387            While (LPN0)
388            {
389                If ((Local4 == Local5)){}
390                LPN0--
391                LPC0++
392            }
393
394            _TCI (C201, PP0A)
395            M3A3 (Local0, PP0A, Local1)
396            PP00 = M3A8 ()
397            Local5 = (0x03 * NUM) /* \M372.NUM_ */
398            PP00 [C009] = Local5 /* Integer */
399            Local5 = (0x02 * NUM) /* \M372.NUM_ */
400            PP00 [C01C] = Local5 /* LOCAL_REFERENCE */
401            M3A4 (Local0, PP0A, Local1, PP00, 0x00, 0x00, 0x10)
402        }
403
404        /* ======================== If, Else */
405
406        If (RN02)
407        {
408            /* Error: 1 ACPI_MEM_LIST_STATE is not deleted */
409
410            Local4 = 0x01
411            Local5 = 0x01
412            _TCI (C200, Local0)
413            If ((Local4 == Local5)){}
414            Else
415            {
416            }
417
418            _TCI (C201, PP0A)
419            M3A3 (Local0, PP0A, Local1)
420            PP00 = M3A8 ()
421            PP00 [C009] = 0x01 /* Integer */
422            PP00 [C01C] = 0x02 /* LOCAL_REFERENCE */
423            M3A4 (Local0, PP0A, Local1, PP00, 0x00, 0x00, 0x11)
424            Local4 = 0x00
425            Local5 = 0x00
426            _TCI (C200, Local0)
427            If ((Local4 == Local5)){}
428            Else
429            {
430            }
431
432            _TCI (C201, PP0A)
433            M3A3 (Local0, PP0A, Local1)
434            PP00 = M3A8 ()
435            PP00 [C009] = 0x01 /* Integer */
436            PP00 [C01C] = 0x02 /* LOCAL_REFERENCE */
437            M3A4 (Local0, PP0A, Local1, PP00, 0x00, 0x00, 0x12)
438            I000 = 0x01
439            I001 = 0x01
440            _TCI (C200, Local0)
441            If ((I000 == I001)){}
442            Else
443            {
444            }
445
446            _TCI (C201, PP0A)
447            M3A3 (Local0, PP0A, Local1)
448            PP00 = M3A8 ()
449            PP00 [C009] = 0x01 /* Integer */
450            M3A4 (Local0, PP0A, Local1, PP00, 0x00, 0x00, 0x13)
451            I000 = 0x00
452            I001 = 0x00
453            _TCI (C200, Local0)
454            If ((I000 == I001)){}
455            Else
456            {
457            }
458
459            _TCI (C201, PP0A)
460            M3A3 (Local0, PP0A, Local1)
461            PP00 = M3A8 ()
462            PP00 [C009] = 0x01 /* Integer */
463            M3A4 (Local0, PP0A, Local1, PP00, 0x00, 0x00, 0x14)
464        }
465
466        If (RN00)
467        {
468            Local4 = 0x00
469            Local5 = 0x01
470            _TCI (C200, Local0)
471            If ((Local4 == Local5)){}
472            Else
473            {
474            }
475
476            _TCI (C201, PP0A)
477            M3A3 (Local0, PP0A, Local1)
478            PP00 = M3A8 ()
479            PP00 [C009] = 0x01 /* Integer */
480            PP00 [C01C] = 0x02 /* LOCAL_REFERENCE */
481            M3A4 (Local0, PP0A, Local1, PP00, 0x00, 0x00, 0x15)
482            I000 = 0x00
483            I001 = 0x01
484            _TCI (C200, Local0)
485            If ((I000 == I001)){}
486            Else
487            {
488            }
489
490            _TCI (C201, PP0A)
491            M3A3 (Local0, PP0A, Local1)
492            PP00 = M3A8 ()
493            PP00 [C009] = 0x01 /* Integer */
494            M3A4 (Local0, PP0A, Local1, PP00, 0x00, 0x00, 0x16)
495        }
496
497        /* ======================== If, ElseIf */
498
499        If (RN02)
500        {
501            /* Error: 1 ACPI_MEM_LIST_STATE is not deleted */
502
503            Local4 = 0x01
504            _TCI (C200, Local0)
505            If (Local4){}
506            ElseIf (Local4){}
507            ElseIf (Local4){}
508            ElseIf (Local4){}
509            ElseIf (Local4){}
510            ElseIf (Local4){}
511            _TCI (C201, PP0A)
512            M3A3 (Local0, PP0A, Local1)
513            PP00 = M3A8 ()
514            PP00 [C01C] = 0x01 /* LOCAL_REFERENCE */
515            M3A4 (Local0, PP0A, Local1, PP00, 0x00, 0x00, 0x17)
516            /* Error: 1 ACPI_MEM_LIST_STATE is not deleted */
517
518            I000 = 0x01
519            _TCI (C200, Local0)
520            If (I000){}
521            ElseIf (I000){}
522            ElseIf (I000){}
523            ElseIf (I000){}
524            ElseIf (I000){}
525            ElseIf (I000){}
526            _TCI (C201, PP0A)
527            M3A3 (Local0, PP0A, Local1)
528            PP00 = M3A8 ()
529            M3A4 (Local0, PP0A, Local1, PP00, 0x00, 0x00, 0x18)
530            /* Error: (1*num) ACPI_MEM_LIST_STATE are not deleted */
531
532            NUM = 0x64
533            LPN0 = NUM /* \M372.NUM_ */
534            LPC0 = 0x00
535            Local4 = 0x01
536            _TCI (C200, Local0)
537            While (LPN0)
538            {
539                If (Local4){}
540                ElseIf (Local4){}
541                ElseIf (Local4){}
542                ElseIf (Local4){}
543                ElseIf (Local4){}
544                ElseIf (Local4){}
545                LPN0--
546                LPC0++
547            }
548
549            _TCI (C201, PP0A)
550            M3A3 (Local0, PP0A, Local1)
551            PP00 = M3A8 ()
552            Local5 = (0x02 * NUM) /* \M372.NUM_ */
553            PP00 [C009] = Local5 /* Integer */
554            PP00 [C01C] = NUM /* LOCAL_REFERENCE */ /* \M372.NUM_ */
555            M3A4 (Local0, PP0A, Local1, PP00, 0x00, 0x00, 0x19)
556        }
557
558        If (RN00)
559        {
560            Local4 = 0x00
561            _TCI (C200, Local0)
562            If (Local4){}
563            ElseIf (Local4){}
564            ElseIf (Local4){}
565            ElseIf (Local4){}
566            ElseIf (Local4){}
567            ElseIf (Local4){}
568            _TCI (C201, PP0A)
569            M3A3 (Local0, PP0A, Local1)
570            PP00 = M3A8 ()
571            PP00 [C01C] = 0x06 /* LOCAL_REFERENCE */
572            M3A4 (Local0, PP0A, Local1, PP00, 0x00, 0x00, 0x1A)
573            I000 = 0x00
574            _TCI (C200, Local0)
575            If (I000){}
576            ElseIf (I000){}
577            ElseIf (I000){}
578            ElseIf (I000){}
579            ElseIf (I000){}
580            ElseIf (I000){}
581            _TCI (C201, PP0A)
582            M3A3 (Local0, PP0A, Local1)
583            PP00 = M3A8 ()
584            M3A4 (Local0, PP0A, Local1, PP00, 0x00, 0x00, 0x1B)
585        }
586
587        If (RN02)
588        {
589            /* Error: 1 ACPI_MEM_LIST_STATE is not deleted */
590
591            Local4 = 0x01
592            Local5 = 0x01
593            _TCI (C200, Local0)
594            If ((Local4 == Local5)){}
595            ElseIf ((Local4 == Local5)){}
596            ElseIf ((Local4 == Local5)){}
597            ElseIf ((Local4 == Local5)){}
598            ElseIf ((Local4 == Local5)){}
599            ElseIf ((Local4 == Local5)){}
600            _TCI (C201, PP0A)
601            M3A3 (Local0, PP0A, Local1)
602            PP00 = M3A8 ()
603            PP00 [C009] = 0x01 /* Integer */
604            PP00 [C01C] = 0x02 /* LOCAL_REFERENCE */
605            M3A4 (Local0, PP0A, Local1, PP00, 0x00, 0x00, 0x1C)
606            /* Error: (1*num) ACPI_MEM_LIST_STATE are not deleted */
607
608            NUM = 0x64
609            LPN0 = NUM /* \M372.NUM_ */
610            LPC0 = 0x00
611            Local4 = 0x01
612            Local5 = 0x01
613            _TCI (C200, Local0)
614            While (LPN0)
615            {
616                If ((Local4 == Local5)){}
617                ElseIf ((Local4 == Local5)){}
618                ElseIf ((Local4 == Local5)){}
619                ElseIf ((Local4 == Local5)){}
620                ElseIf ((Local4 == Local5)){}
621                ElseIf ((Local4 == Local5)){}
622                LPN0--
623                LPC0++
624            }
625
626            _TCI (C201, PP0A)
627            M3A3 (Local0, PP0A, Local1)
628            PP00 = M3A8 ()
629            Local5 = (0x03 * NUM) /* \M372.NUM_ */
630            PP00 [C009] = Local5 /* Integer */
631            Local5 = (0x02 * NUM) /* \M372.NUM_ */
632            PP00 [C01C] = Local5 /* LOCAL_REFERENCE */
633            M3A4 (Local0, PP0A, Local1, PP00, 0x00, 0x00, 0x1D)
634            /* Error: (1*num) ACPI_MEM_LIST_STATE are not deleted */
635
636            NUM = 0x64
637            LPN0 = NUM /* \M372.NUM_ */
638            LPC0 = 0x00
639            I000 = 0x01
640            I001 = 0x01
641            _TCI (C200, Local0)
642            While (LPN0)
643            {
644                If ((I000 == I001)){}
645                ElseIf ((I000 == I001)){}
646                ElseIf ((I000 == I001)){}
647                ElseIf ((I000 == I001)){}
648                ElseIf ((I000 == I001)){}
649                ElseIf ((I000 == I001)){}
650                LPN0--
651                LPC0++
652            }
653
654            _TCI (C201, PP0A)
655            M3A3 (Local0, PP0A, Local1)
656            PP00 = M3A8 ()
657            Local5 = (0x03 * NUM) /* \M372.NUM_ */
658            PP00 [C009] = Local5 /* Integer */
659            M3A4 (Local0, PP0A, Local1, PP00, 0x00, 0x00, 0x1E)
660            /* Error: (1*num) ACPI_MEM_LIST_STATE are not deleted */
661
662            NUM = 0x64
663            LPN0 = NUM /* \M372.NUM_ */
664            LPC0 = 0x00
665            I000 = 0x00
666            I001 = 0x00
667            _TCI (C200, Local0)
668            While (LPN0)
669            {
670                If ((I000 == I001)){}
671                ElseIf ((I000 == I001)){}
672                ElseIf ((I000 == I001)){}
673                ElseIf ((I000 == I001)){}
674                ElseIf ((I000 == I001)){}
675                ElseIf ((I000 == I001)){}
676                LPN0--
677                LPC0++
678            }
679
680            _TCI (C201, PP0A)
681            M3A3 (Local0, PP0A, Local1)
682            PP00 = M3A8 ()
683            Local5 = (0x03 * NUM) /* \M372.NUM_ */
684            PP00 [C009] = Local5 /* Integer */
685            M3A4 (Local0, PP0A, Local1, PP00, 0x00, 0x00, 0x1F)
686        }
687
688        If (RN00)
689        {
690            NUM = 0x11
691            LPN0 = NUM /* \M372.NUM_ */
692            LPC0 = 0x00
693            Local4 = 0x00
694            Local5 = 0x01
695            _TCI (C200, Local0)
696            While (LPN0)
697            {
698                If ((Local4 == Local5)){}
699                ElseIf ((Local4 == Local5)){}
700                ElseIf ((Local4 == Local5)){}
701                ElseIf ((Local4 == Local5)){}
702                ElseIf ((Local4 == Local5)){}
703                ElseIf ((Local4 == Local5)){}
704                LPN0--
705                LPC0++
706            }
707
708            _TCI (C201, PP0A)
709            M3A3 (Local0, PP0A, Local1)
710            PP00 = M3A8 ()
711            Local5 = (0x08 * NUM) /* \M372.NUM_ */
712            PP00 [C009] = Local5 /* Integer */
713            Local5 = (0x0C * NUM) /* \M372.NUM_ */
714            PP00 [C01C] = Local5 /* LOCAL_REFERENCE */
715            M3A4 (Local0, PP0A, Local1, PP00, 0x00, 0x00, 0x20)
716            NUM = 0x11
717            LPN0 = NUM /* \M372.NUM_ */
718            LPC0 = 0x00
719            I000 = 0x00
720            I001 = 0x01
721            _TCI (C200, Local0)
722            While (LPN0)
723            {
724                If ((I000 == I001)){}
725                ElseIf ((I000 == I001)){}
726                ElseIf ((I000 == I001)){}
727                ElseIf ((I000 == I001)){}
728                ElseIf ((I000 == I001)){}
729                ElseIf ((I000 == I001)){}
730                LPN0--
731                LPC0++
732            }
733
734            _TCI (C201, PP0A)
735            M3A3 (Local0, PP0A, Local1)
736            PP00 = M3A8 ()
737            Local5 = (0x08 * NUM) /* \M372.NUM_ */
738            PP00 [C009] = Local5 /* Integer */
739            M3A4 (Local0, PP0A, Local1, PP00, 0x00, 0x00, 0x21)
740        }
741
742        If (RN02)
743        {
744            /* Error: (1*num) ACPI_MEM_LIST_STATE are not deleted */
745
746            NUM = 0x64
747            LPN0 = NUM /* \M372.NUM_ */
748            LPC0 = 0x00
749            Local4 = 0x00
750            Local5 = 0x01
751            _TCI (C200, Local0)
752            While (LPN0)
753            {
754                If ((Local4 == Local5)){}
755                ElseIf ((Local4 == Local5)){}
756                ElseIf ((Local4 == 0x00)){}
757                ElseIf ((Local4 == Local5)){}
758                ElseIf ((Local4 == Local5)){}
759                ElseIf ((Local4 == Local5)){}
760                LPN0--
761                LPC0++
762            }
763
764            _TCI (C201, PP0A)
765            M3A3 (Local0, PP0A, Local1)
766            PP00 = M3A8 ()
767            Local5 = (0x06 * NUM) /* \M372.NUM_ */
768            PP00 [C009] = Local5 /* Integer */
769            Local5 = (0x05 * NUM) /* \M372.NUM_ */
770            PP00 [C01C] = Local5 /* LOCAL_REFERENCE */
771            M3A4 (Local0, PP0A, Local1, PP00, 0x00, 0x00, 0x22)
772        }
773
774        /* ======================== If, ElseIf, Else */
775
776        If (RN02)
777        {
778            /* Error: (1*num) ACPI_MEM_LIST_STATE are not deleted */
779
780            NUM = 0x64
781            LPN0 = NUM /* \M372.NUM_ */
782            LPC0 = 0x00
783            Local4 = 0x01
784            Local5 = 0x01
785            _TCI (C200, Local0)
786            While (LPN0)
787            {
788                If ((Local4 == Local5)){}
789                ElseIf ((Local4 == Local5)){}
790                ElseIf ((Local4 == Local5)){}
791                ElseIf ((Local4 == Local5)){}
792                ElseIf ((Local4 == Local5)){}
793                ElseIf ((Local4 == Local5)){}
794                Else
795                {
796                }
797
798                LPN0--
799                LPC0++
800            }
801
802            _TCI (C201, PP0A)
803            M3A3 (Local0, PP0A, Local1)
804            PP00 = M3A8 ()
805            Local5 = (0x03 * NUM) /* \M372.NUM_ */
806            PP00 [C009] = Local5 /* Integer */
807            Local5 = (0x02 * NUM) /* \M372.NUM_ */
808            PP00 [C01C] = Local5 /* LOCAL_REFERENCE */
809            M3A4 (Local0, PP0A, Local1, PP00, 0x00, 0x00, 0x23)
810        }
811
812        /* ======================== Switch, Case, Default */
813        /* CAUTION: these tests should be a few updated after fixing interpreter */
814        If (RN02)
815        {
816            Debug = "Switch, Case, Default"
817            /* Inv: why so many Integers, 4 */
818            /* Error: why is one Integer not deleted */
819            _TCI (C200, Local0)
820            Switch (0x00)
821            {
822                Case (0x01)
823                {
824                }
825
826            }
827
828            _TCI (C201, PP0A)
829            M3A3 (Local0, PP0A, Local1)
830            PP00 = M3A8 ()
831            PP00 [C009] = 0x03 /* Integer */
832            M3A4 (Local0, PP0A, Local1, PP00, 0x00, 0x00, 0x24)
833            _TCI (C200, Local0)
834            Switch (0x01)
835            {
836                Case (0x01)
837                {
838                }
839
840            }
841
842            _TCI (C201, PP0A)
843            M3A3 (Local0, PP0A, Local1)
844            PP00 = M3A8 ()
845            PP00 [C009] = 0x03 /* Integer */
846            M3A4 (Local0, PP0A, Local1, PP00, 0x00, 0x00, 0x25)
847        }
848
849        If (RN02)
850        {
851            /* Inv: why so many Integers, 4 */
852            /* Error: why is one Integer not deleted */
853            /* Error: 1 ACPI_MEM_LIST_STATE is not deleted */
854            _TCI (C200, Local0)
855            Switch (0x00)
856            {
857                Case (0x01)
858                {
859                }
860                Default
861                {
862                }
863
864            }
865
866            _TCI (C201, PP0A)
867            M3A3 (Local0, PP0A, Local1)
868            PP00 = M3A8 ()
869            PP00 [C009] = 0x04 /* Integer */
870            M3A4 (Local0, PP0A, Local1, PP00, 0x00, 0x00, 0x26)
871            _TCI (C200, Local0)
872            Switch (0x01)
873            {
874                Case (0x01)
875                {
876                }
877                Default
878                {
879                }
880
881            }
882
883            _TCI (C201, PP0A)
884            M3A3 (Local0, PP0A, Local1)
885            PP00 = M3A8 ()
886            PP00 [C009] = 0x04 /* Integer */
887            M3A4 (Local0, PP0A, Local1, PP00, 0x00, 0x00, 0x27)
888        }
889
890        If (RN02)
891        {
892            /* Inv: what is the number of Integers */
893            /* Error: why is one Integer not deleted */
894            /* Error: (1*num) ACPI_MEM_LIST_STATE are not deleted */
895            NUM = 0x0A
896            LPN0 = NUM /* \M372.NUM_ */
897            LPC0 = 0x00
898            _TCI (C200, Local0)
899            While (LPN0)
900            {
901                Switch (0x01)
902                {
903                    Case (0x01)
904                    {
905                    }
906                    Default
907                    {
908                    }
909
910                }
911
912                LPN0--
913                LPC0++
914            }
915
916            _TCI (C201, PP0A)
917            M3A3 (Local0, PP0A, Local1)
918            PP00 = M3A8 ()
919            Local5 = (0x06 * NUM) /* \M372.NUM_ */
920            PP00 [C009] = Local5 /* Integer */
921            M3A4 (Local0, PP0A, Local1, PP00, 0x00, 0x00, 0x28)
922        }
923
924        /* ///////////////////// NamedX & LocalX */
925
926        If (RN02)
927        {
928            /* NamedX */
929            /* Error: why is one Integer not deleted */
930            I000 = 0x00
931            _TCI (C200, Local0)
932            Switch (ToInteger (I000))
933            {
934                Case (0x00)
935                {
936                }
937
938            }
939
940            _TCI (C201, PP0A)
941            M3A3 (Local0, PP0A, Local1)
942            PP00 = M3A8 ()
943            PP00 [C009] = 0x03 /* Integer */
944            M3A4 (Local0, PP0A, Local1, PP00, 0x00, 0x00, 0x29)
945            I000 = 0x01
946            _TCI (C200, Local0)
947            Switch (ToInteger (I000))
948            {
949                Case (0x01)
950                {
951                }
952
953            }
954
955            _TCI (C201, PP0A)
956            M3A3 (Local0, PP0A, Local1)
957            PP00 = M3A8 ()
958            PP00 [C009] = 0x03 /* Integer */
959            M3A4 (Local0, PP0A, Local1, PP00, 0x00, 0x00, 0x2A)
960            I000 = 0x00
961            _TCI (C200, Local0)
962            Switch (ToInteger (I000))
963            {
964                Case (0x01)
965                {
966                }
967
968            }
969
970            _TCI (C201, PP0A)
971            M3A3 (Local0, PP0A, Local1)
972            PP00 = M3A8 ()
973            PP00 [C009] = 0x03 /* Integer */
974            M3A4 (Local0, PP0A, Local1, PP00, 0x00, 0x00, 0x2B)
975            /* LocalX */
976
977            Local4 = 0x00
978            _TCI (C200, Local0)
979            Switch (ToInteger (Local4))
980            {
981                Case (0x00)
982                {
983                }
984
985            }
986
987            _TCI (C201, PP0A)
988            M3A3 (Local0, PP0A, Local1)
989            PP00 = M3A8 ()
990            PP00 [C009] = 0x03 /* Integer */
991            PP00 [C01C] = 0x01 /* LOCAL_REFERENCE */
992            M3A4 (Local0, PP0A, Local1, PP00, 0x00, 0x00, 0x2C)
993            Local4 = 0x01
994            _TCI (C200, Local0)
995            Switch (ToInteger (Local4))
996            {
997                Case (0x01)
998                {
999                }
1000
1001            }
1002
1003            _TCI (C201, PP0A)
1004            M3A3 (Local0, PP0A, Local1)
1005            PP00 = M3A8 ()
1006            PP00 [C009] = 0x03 /* Integer */
1007            PP00 [C01C] = 0x01 /* LOCAL_REFERENCE */
1008            M3A4 (Local0, PP0A, Local1, PP00, 0x00, 0x00, 0x2D)
1009            Local4 = 0x00
1010            _TCI (C200, Local0)
1011            Switch (ToInteger (Local4))
1012            {
1013                Case (0x01)
1014                {
1015                }
1016
1017            }
1018
1019            _TCI (C201, PP0A)
1020            M3A3 (Local0, PP0A, Local1)
1021            PP00 = M3A8 ()
1022            PP00 [C009] = 0x03 /* Integer */
1023            PP00 [C01C] = 0x01 /* LOCAL_REFERENCE */
1024            M3A4 (Local0, PP0A, Local1, PP00, 0x00, 0x00, 0x2E)
1025        }
1026
1027        If (RN02)
1028        {
1029            /* NamedX */
1030            /* Error: why is one Integer not deleted */
1031            I000 = 0x00
1032            _TCI (C200, Local0)
1033            Switch (ToInteger (I000))
1034            {
1035                Case (0x00)
1036                {
1037                }
1038                Default
1039                {
1040                }
1041
1042            }
1043
1044            _TCI (C201, PP0A)
1045            M3A3 (Local0, PP0A, Local1)
1046            PP00 = M3A8 ()
1047            PP00 [C009] = 0x03 /* Integer */
1048            M3A4 (Local0, PP0A, Local1, PP00, 0x00, 0x00, 0x2F)
1049            I000 = 0x01
1050            _TCI (C200, Local0)
1051            Switch (ToInteger (I000))
1052            {
1053                Case (0x01)
1054                {
1055                }
1056                Default
1057                {
1058                }
1059
1060            }
1061
1062            _TCI (C201, PP0A)
1063            M3A3 (Local0, PP0A, Local1)
1064            PP00 = M3A8 ()
1065            PP00 [C009] = 0x03 /* Integer */
1066            M3A4 (Local0, PP0A, Local1, PP00, 0x00, 0x00, 0x30)
1067            I000 = 0x00
1068            _TCI (C200, Local0)
1069            Switch (ToInteger (I000))
1070            {
1071                Case (0x01)
1072                {
1073                }
1074                Default
1075                {
1076                }
1077
1078            }
1079
1080            _TCI (C201, PP0A)
1081            M3A3 (Local0, PP0A, Local1)
1082            PP00 = M3A8 ()
1083            PP00 [C009] = 0x03 /* Integer */
1084            M3A4 (Local0, PP0A, Local1, PP00, 0x00, 0x00, 0x31)
1085            /* LocalX */
1086
1087            Local4 = 0x00
1088            _TCI (C200, Local0)
1089            Switch (ToInteger (Local4))
1090            {
1091                Case (0x00)
1092                {
1093                }
1094                Default
1095                {
1096                }
1097
1098            }
1099
1100            _TCI (C201, PP0A)
1101            M3A3 (Local0, PP0A, Local1)
1102            PP00 = M3A8 ()
1103            PP00 [C009] = 0x03 /* Integer */
1104            PP00 [C01C] = 0x01 /* LOCAL_REFERENCE */
1105            M3A4 (Local0, PP0A, Local1, PP00, 0x00, 0x00, 0x32)
1106            Local4 = 0x01
1107            _TCI (C200, Local0)
1108            Switch (ToInteger (Local4))
1109            {
1110                Case (0x01)
1111                {
1112                }
1113                Default
1114                {
1115                }
1116
1117            }
1118
1119            _TCI (C201, PP0A)
1120            M3A3 (Local0, PP0A, Local1)
1121            PP00 = M3A8 ()
1122            PP00 [C009] = 0x03 /* Integer */
1123            PP00 [C01C] = 0x01 /* LOCAL_REFERENCE */
1124            M3A4 (Local0, PP0A, Local1, PP00, 0x00, 0x00, 0x33)
1125            Local4 = 0x00
1126            _TCI (C200, Local0)
1127            Switch (ToInteger (Local4))
1128            {
1129                Case (0x01)
1130                {
1131                }
1132                Default
1133                {
1134                }
1135
1136            }
1137
1138            _TCI (C201, PP0A)
1139            M3A3 (Local0, PP0A, Local1)
1140            PP00 = M3A8 ()
1141            PP00 [C009] = 0x03 /* Integer */
1142            PP00 [C01C] = 0x01 /* LOCAL_REFERENCE */
1143            M3A4 (Local0, PP0A, Local1, PP00, 0x00, 0x00, 0x34)
1144        }
1145
1146        If (RN02)
1147        {
1148            I000 = 0x01
1149            _TCI (C200, Local0)
1150            Switch (ToInteger (I000))
1151            {
1152                Case (0x01)
1153                {
1154                }
1155                Case (0x02)
1156                {
1157                }
1158                Case (0x03)
1159                {
1160                }
1161                Case (0x04)
1162                {
1163                }
1164                Case (0x05)
1165                {
1166                }
1167                Case (0x06)
1168                {
1169                }
1170                Case (0x07)
1171                {
1172                }
1173                Default
1174                {
1175                }
1176
1177            }
1178
1179            _TCI (C201, PP0A)
1180            M3A3 (Local0, PP0A, Local1)
1181            PP00 = M3A8 ()
1182            PP00 [C009] = 0x03 /* Integer */
1183            M3A4 (Local0, PP0A, Local1, PP00, 0x00, 0x00, 0x35)
1184            I000 = 0x07
1185            _TCI (C200, Local0)
1186            Switch (ToInteger (I000))
1187            {
1188                Case (0x01)
1189                {
1190                }
1191                Case (0x02)
1192                {
1193                }
1194                Case (0x03)
1195                {
1196                }
1197                Case (0x04)
1198                {
1199                }
1200                Case (0x05)
1201                {
1202                }
1203                Case (0x06)
1204                {
1205                }
1206                Case (0x07)
1207                {
1208                }
1209                Default
1210                {
1211                }
1212
1213            }
1214
1215            _TCI (C201, PP0A)
1216            M3A3 (Local0, PP0A, Local1)
1217            PP00 = M3A8 ()
1218            PP00 [C009] = 0x11 /* Integer */
1219            M3A4 (Local0, PP0A, Local1, PP00, 0x00, 0x00, 0x36)
1220            I000 = 0x2710
1221            _TCI (C200, Local0)
1222            Switch (ToInteger (I000))
1223            {
1224                Case (0x01)
1225                {
1226                }
1227                Case (0x02)
1228                {
1229                }
1230                Case (0x03)
1231                {
1232                }
1233                Case (0x04)
1234                {
1235                }
1236                Case (0x05)
1237                {
1238                }
1239                Case (0x06)
1240                {
1241                }
1242                Case (0x07)
1243                {
1244                }
1245                Default
1246                {
1247                }
1248
1249            }
1250
1251            _TCI (C201, PP0A)
1252            M3A3 (Local0, PP0A, Local1)
1253            PP00 = M3A8 ()
1254            PP00 [C009] = 0x11 /* Integer */
1255            M3A4 (Local0, PP0A, Local1, PP00, 0x00, 0x00, 0x37)
1256        }
1257
1258        If (RN02)
1259        {
1260            Local4 = 0x01
1261            _TCI (C200, Local0)
1262            Switch (ToInteger (Local4))
1263            {
1264                Case (0x01)
1265                {
1266                }
1267                Case (0x02)
1268                {
1269                }
1270                Case (0x03)
1271                {
1272                }
1273                Case (0x04)
1274                {
1275                }
1276                Case (0x05)
1277                {
1278                }
1279                Case (0x06)
1280                {
1281                }
1282                Case (0x07)
1283                {
1284                }
1285                Default
1286                {
1287                }
1288
1289            }
1290
1291            _TCI (C201, PP0A)
1292            M3A3 (Local0, PP0A, Local1)
1293            PP00 = M3A8 ()
1294            PP00 [C009] = 0x03 /* Integer */
1295            M3A4 (Local0, PP0A, Local1, PP00, 0x00, 0x00, 0x38)
1296            Local4 = 0x07
1297            _TCI (C200, Local0)
1298            Switch (ToInteger (Local4))
1299            {
1300                Case (0x01)
1301                {
1302                }
1303                Case (0x02)
1304                {
1305                }
1306                Case (0x03)
1307                {
1308                }
1309                Case (0x04)
1310                {
1311                }
1312                Case (0x05)
1313                {
1314                }
1315                Case (0x06)
1316                {
1317                }
1318                Case (0x07)
1319                {
1320                }
1321                Default
1322                {
1323                }
1324
1325            }
1326
1327            _TCI (C201, PP0A)
1328            M3A3 (Local0, PP0A, Local1)
1329            PP00 = M3A8 ()
1330            PP00 [C009] = 0x11 /* Integer */
1331            M3A4 (Local0, PP0A, Local1, PP00, 0x00, 0x00, 0x39)
1332            Local4 = 0x2710
1333            _TCI (C200, Local0)
1334            Switch (ToInteger (Local4))
1335            {
1336                Case (0x01)
1337                {
1338                }
1339                Case (0x02)
1340                {
1341                }
1342                Case (0x03)
1343                {
1344                }
1345                Case (0x04)
1346                {
1347                }
1348                Case (0x05)
1349                {
1350                }
1351                Case (0x06)
1352                {
1353                }
1354                Case (0x07)
1355                {
1356                }
1357                Default
1358                {
1359                }
1360
1361            }
1362
1363            _TCI (C201, PP0A)
1364            M3A3 (Local0, PP0A, Local1)
1365            PP00 = M3A8 ()
1366            PP00 [C009] = 0x11 /* Integer */
1367            M3A4 (Local0, PP0A, Local1, PP00, 0x00, 0x00, 0x3A)
1368        }
1369
1370        /* ======================== Method */
1371
1372        If (RN00)
1373        {
1374            Debug = "Method"
1375            _TCI (C200, Local0)
1376            M000 ()
1377            _TCI (C201, PP0A)
1378            M3A3 (Local0, PP0A, Local1)
1379            PP00 = M3A8 ()
1380            M3A4 (Local0, PP0A, Local1, PP00, 0x00, 0x00, 0x3B)
1381            _TCI (C200, Local0)
1382            M001 ()
1383            _TCI (C201, PP0A)
1384            M3A3 (Local0, PP0A, Local1)
1385            PP00 = M3A8 ()
1386            PP00 [C009] = 0x01 /* Integer */
1387            M3A4 (Local0, PP0A, Local1, PP00, 0x00, 0x00, 0x3C)
1388            _TCI (C200, Local0)
1389            M002 (0x01, 0x02, 0x03, 0x04, 0x05, 0x06)
1390            _TCI (C201, PP0A)
1391            M3A3 (Local0, PP0A, Local1)
1392            PP00 = M3A8 ()
1393            PP00 [C009] = 0x06 /* Integer */
1394            M3A4 (Local0, PP0A, Local1, PP00, 0x00, 0x00, 0x3D)
1395            _TCI (C200, Local0)
1396            M003 (0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06)
1397            _TCI (C201, PP0A)
1398            M3A3 (Local0, PP0A, Local1)
1399            PP00 = M3A8 ()
1400            PP00 [C009] = 0x08 /* Integer */
1401            M3A4 (Local0, PP0A, Local1, PP00, 0x00, 0x00, 0x3E)
1402            _TCI (C200, Local0)
1403            M004 (0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06)
1404            _TCI (C201, PP0A)
1405            M3A3 (Local0, PP0A, Local1)
1406            PP00 = M3A8 ()
1407            PP00 [C009] = 0x10 /* Integer */
1408            PP00 [C01C] = 0x0C /* LOCAL_REFERENCE */
1409            M3A4 (Local0, PP0A, Local1, PP00, 0x00, 0x00, 0x3F)
1410        }
1411
1412        /* ======================== NoOp */
1413
1414        If (RN00)
1415        {
1416            Debug = "NoOp"
1417            _TCI (C200, Local0)
1418            Noop
1419            _TCI (C201, PP0A)
1420            M3A3 (Local0, PP0A, Local1)
1421            PP00 = M3A8 ()
1422            M3A4 (Local0, PP0A, Local1, PP00, 0x00, 0x00, 0x40)
1423        }
1424
1425        RST0 ()
1426    }
1427