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     *  Uninitialized Data
30     *
31     * (verify exceptions caused by use of Uninitialized Data)
32     */
33    Name (Z092, 0x5C)
34    /* Expected exceptions: */
35    /* */
36    /* 49 - AE_AML_UNINITIALIZED_LOCAL */
37    /* 50 - AE_AML_UNINITIALIZED_ARG */
38    /* 51 - AE_AML_UNINITIALIZED_ELEMENT */
39    Method (M4B0, 1, Serialized)
40    {
41        Name (I000, 0x00)
42        Event (E000)
43        /* Uninitialized Local */
44
45        Method (M000, 2, NotSerialized)
46        {
47            If (Arg1)
48            {
49                Local0 = 0x00
50            }
51
52            /* CondRefOf */
53
54            CondRefOf (Local0, Local1)
55            CH03 (__METHOD__, Z092, __LINE__, 0x00, 0x00)
56            /* CopyObject */
57
58            CopyObject (Local0, Local1)
59            CH06 (Arg0, 0x00, 0x31)
60            /* Decrement */
61
62            Local0--
63            CH06 (Arg0, 0x01, 0x31)
64            /* DerefOf */
65
66            Local1 = DerefOf (Local0)
67            CH06 (Arg0, 0x02, 0x31)
68            /* FindSetLeftBit */
69
70            FindSetLeftBit (Local0, Local1)
71            CH06 (Arg0, 0x04, 0x31)
72            /* FindSetRightBit */
73
74            FindSetRightBit (Local0, Local1)
75            CH06 (Arg0, 0x06, 0x31)
76            /* FromBCD */
77
78            FromBCD (Local0, Local1)
79            CH06 (Arg0, 0x08, 0x31)
80            /* Increment */
81
82            Local0++
83            CH06 (Arg0, 0x09, 0x31)
84            /* LNot */
85
86            Local1 = !Local0
87            CH06 (Arg0, 0x0A, 0x31)
88            /* Not */
89
90            Local1 = ~Local0
91            CH06 (Arg0, 0x0C, 0x31)
92            /* ObjectType */
93
94            Local1 = ObjectType (Local0)
95            CH03 (__METHOD__, Z092, __LINE__, 0x00, 0x00)
96            /* RefOf */
97
98            Local1 = RefOf (Local0)
99            CH03 (__METHOD__, Z092, __LINE__, 0x00, 0x00)
100            /* Release */
101
102            Release (Local0)
103            CH06 (Arg0, 0x0D, 0x31)
104            /* Reset */
105
106            Reset (Local0)
107            CH06 (Arg0, 0x0E, 0x31)
108            /* Signal */
109
110            Signal (Local0)
111            CH06 (Arg0, 0x0F, 0x31)
112            /* SizeOf */
113
114            Local1 = SizeOf (Local0)
115            CH06 (Arg0, 0x10, 0x31)
116            /* Sleep */
117
118            Sleep (Local0)
119            CH06 (Arg0, 0x11, 0x31)
120            /* Stall */
121
122            Stall (Local0)
123            CH06 (Arg0, 0x12, 0x31)
124            /* Store */
125
126            Local1 = Local0
127            CH06 (Arg0, 0x13, 0x31)
128            /* ToBCD */
129
130            ToBCD (Local0, Local1)
131            CH06 (Arg0, 0x15, 0x31)
132            /* ToBuffer */
133
134            ToBuffer (Local0, Local1)
135            CH06 (Arg0, 0x17, 0x31)
136            /* ToDecimalString */
137
138            ToDecimalString (Local0, Local1)
139            CH06 (Arg0, 0x19, 0x31)
140            /* ToHexString */
141
142            ToHexString (Local0, Local1)
143            CH06 (Arg0, 0x1B, 0x31)
144            /* ToInteger */
145
146            ToInteger (Local0, Local1)
147            CH06 (Arg0, 0x1D, 0x31)
148            /* Acquire */
149
150            Local1 = Acquire (Local0, 0x0064)
151            CH06 (Arg0, 0x1E, 0x31)
152            /* Add */
153
154            Local1 = (Local0 + I000) /* \M4B0.I000 */
155            CH06 (Arg0, 0x21, 0x31)
156            Local1 = (I000 + Local0)
157            CH06 (Arg0, 0x22, 0x31)
158            /* And */
159
160            Local1 = (Local0 & I000) /* \M4B0.I000 */
161            CH06 (Arg0, 0x25, 0x31)
162            Local1 = (I000 & Local0)
163            CH06 (Arg0, 0x26, 0x31)
164            /* Concatenate */
165
166            Concatenate (Local0, I000, Local1)
167            CH06 (Arg0, 0x29, 0x31)
168            Concatenate (I000, Local0, Local1)
169            CH06 (Arg0, 0x2A, 0x31)
170            /* ConcatenateResTemplate */
171
172            ConcatenateResTemplate (Local0, Buffer (0x02)
173                {
174                     0x79, 0x00                                       // y.
175                }, Local1)
176            CH06 (Arg0, 0x2D, 0x31)
177            ConcatenateResTemplate (Buffer (0x02)
178                {
179                     0x79, 0x00                                       // y.
180                }, Local0, Local1)
181            CH06 (Arg0, 0x2E, 0x31)
182            /* Divide */
183
184            Divide (Local0, I000, Local2)
185            CH06 (Arg0, 0x31, 0x31)
186            Divide (I000, Local0, Local2)
187            CH06 (Arg0, 0x32, 0x31)
188            Divide (Local0, I000, Local2, Local1)
189            CH06 (Arg0, 0x33, 0x31)
190            Divide (I000, Local0, Local2, Local1)
191            CH06 (Arg0, 0x34, 0x31)
192            /* Fatal */
193
194            Fatal (0xFF, 0xFFFFFFFF, Local0)
195            CH06 (Arg0, 0x35, 0x31)
196            /* Index */
197
198            Local1 = Local0 [0x00]
199            CH06 (Arg0, 0x38, 0x31)
200            Index ("0", Local0, Local1)
201            CH06 (Arg0, 0x39, 0x31)
202            /* LEqual */
203
204            Local1 = (Local0 == I000)
205            CH06 (Arg0, 0x3A, 0x31)
206            Local1 = (I000 == Local0)
207            CH06 (Arg0, 0x3B, 0x31)
208            /* LGreater */
209
210            Local1 = (Local0 > I000)
211            CH06 (Arg0, 0x3C, 0x31)
212            Local1 = (I000 > Local0)
213            CH06 (Arg0, 0x3D, 0x31)
214            /* LGreaterEqual */
215
216            Local1 = (Local0 >= I000)
217            CH06 (Arg0, 0x3E, 0xFF)
218            Local1 = (I000 >= Local0)
219            CH06 (Arg0, 0x3F, 0xFF)
220            /* LLess */
221
222            Local1 = (Local0 < I000)
223            CH06 (Arg0, 0x40, 0x31)
224            Local1 = (I000 < Local0)
225            CH06 (Arg0, 0x41, 0x31)
226            /* LLessEqual */
227
228            Local1 = (Local0 <= I000)
229            CH06 (Arg0, 0x42, 0xFF)
230            Local1 = (I000 <= Local0)
231            CH06 (Arg0, 0x43, 0xFF)
232            /* LNotEqual */
233
234            Local1 = (Local0 != I000)
235            CH06 (Arg0, 0x44, 0xFF)
236            Local1 = (I000 != Local0)
237            CH06 (Arg0, 0x45, 0xFF)
238            /* LOr */
239
240            Local1 = (Local0 || I000)
241            CH06 (Arg0, 0x46, 0x31)
242            Local1 = (I000 || Local0)
243            CH06 (Arg0, 0x47, 0x31)
244            /* Mod */
245
246            Local1 = (Local0 % I000) /* \M4B0.I000 */
247            CH06 (Arg0, 0x4A, 0x31)
248            Local1 = (I000 % Local0)
249            CH06 (Arg0, 0x4B, 0x31)
250            /* Multiply */
251
252            Local1 = (Local0 * I000) /* \M4B0.I000 */
253            CH06 (Arg0, 0x4E, 0x31)
254            Local1 = (I000 * Local0)
255            CH06 (Arg0, 0x4F, 0x31)
256            /* NAnd */
257
258            NAnd (Local0, I000, Local1)
259            CH06 (Arg0, 0x52, 0x31)
260            NAnd (I000, Local0, Local1)
261            CH06 (Arg0, 0x53, 0x31)
262            /* NOr */
263
264            NOr (Local0, I000, Local1)
265            CH06 (Arg0, 0x56, 0x31)
266            NOr (I000, Local0, Local1)
267            CH06 (Arg0, 0x57, 0x31)
268            /* Or */
269
270            Local1 = (Local0 | I000) /* \M4B0.I000 */
271            CH06 (Arg0, 0x5A, 0x31)
272            Local1 = (I000 | Local0)
273            CH06 (Arg0, 0x5B, 0x31)
274            /* ShiftLeft */
275
276            Local1 = (Local0 << I000) /* \M4B0.I000 */
277            CH06 (Arg0, 0x5E, 0x31)
278            Local1 = (I000 << Local0)
279            CH06 (Arg0, 0x5F, 0x31)
280            /* ShiftRight */
281
282            Local1 = (Local0 >> I000) /* \M4B0.I000 */
283            CH06 (Arg0, 0x62, 0x31)
284            Local1 = (I000 >> Local0)
285            CH06 (Arg0, 0x63, 0x31)
286            /* Subtract */
287
288            Local1 = (Local0 - I000) /* \M4B0.I000 */
289            CH06 (Arg0, 0x66, 0x31)
290            Local1 = (I000 - Local0)
291            CH06 (Arg0, 0x67, 0x31)
292            /* ToString */
293
294            ToString (Local0, 0x01, Local1)
295            CH06 (Arg0, 0x6A, 0x31)
296            ToString (I000, Local0, Local1)
297            CH06 (Arg0, 0x6B, 0x31)
298            /* Wait */
299
300            Local1 = Wait (Local0, I000)
301            CH06 (Arg0, 0x6C, 0x31)
302            Local1 = Wait (E000, Local0)
303            CH06 (Arg0, 0x6D, 0x31)
304            /* XOr */
305
306            Local1 = (Local0 ^ I000) /* \M4B0.I000 */
307            CH06 (Arg0, 0x70, 0x31)
308            Local1 = (I000 ^ Local0)
309            CH06 (Arg0, 0x71, 0x31)
310            /* Mid */
311
312            Mid (Local0, 0x01, 0x01, Local1)
313            CH06 (Arg0, 0x75, 0x31)
314            Mid ("123", Local0, 0x01, Local1)
315            CH06 (Arg0, 0x76, 0x31)
316            Mid ("123", 0x01, Local0, Local1)
317            CH06 (Arg0, 0x77, 0x31)
318            /* Match */
319
320            Local1 = Match (Local0, MTR, 0x00, MTR, 0x00, 0x00)
321            CH06 (Arg0, 0x78, 0x31)
322            Local1 = Match (Package (0x01)
323                    {
324                        0x01
325                    }, MTR, Local0, MTR, 0x00, 0x00)
326            CH06 (Arg0, 0x79, 0x31)
327            Local1 = Match (Package (0x01)
328                    {
329                        0x01
330                    }, MTR, 0x00, MTR, Local0, 0x00)
331            CH06 (Arg0, 0x7A, 0x31)
332            Local1 = Match (Package (0x01)
333                    {
334                        0x01
335                    }, MTR, 0x00, MTR, 0x00, Local0)
336            CH06 (Arg0, 0x7B, 0x31)
337        }
338
339        /* Uninitialized element of Package */
340
341        Method (M001, 1, Serialized)
342        {
343            Name (P000, Package (0x01){})
344            /* DeRefOf(Index(Package, Ind)) */
345
346            Local1 = DerefOf (P000 [0x00])
347            CH04 (__METHOD__, 0x01, 0x33, Z092, __LINE__, 0x00, 0x00)
348            /* CondRefOf */
349
350            CondRefOf (DerefOf (P000 [0x00]), Local1)
351            CH06 (Arg0, 0x01, 0xFF)
352            /* CopyObject */
353
354            CopyObject (DerefOf (P000 [0x00]), Local1)
355            CH06 (Arg0, 0x02, 0xFF)
356            /* Decrement */
357
358            DerefOf (P000 [0x00])--
359            CH06 (Arg0, 0x03, 0xFF)
360            /* DerefOf */
361
362            Local1 = DerefOf (DerefOf (P000 [0x00]))
363            CH06 (Arg0, 0x04, 0xFF)
364            /* FindSetLeftBit */
365
366            FindSetLeftBit (DerefOf (P000 [0x00]), Local1)
367            CH06 (Arg0, 0x06, 0xFF)
368            /* FindSetRightBit */
369
370            FindSetRightBit (DerefOf (P000 [0x00]), Local1)
371            CH06 (Arg0, 0x08, 0xFF)
372            /* FromBCD */
373
374            FromBCD (DerefOf (P000 [0x00]), Local1)
375            CH06 (Arg0, 0x0A, 0xFF)
376            /* Increment */
377
378            DerefOf (P000 [0x00])++
379            CH06 (Arg0, 0x0B, 0xFF)
380            /* LNot */
381
382            Local1 = !DerefOf (P000 [0x00])
383            CH06 (Arg0, 0x0C, 0xFF)
384            /* Not */
385
386            Local1 = ~DerefOf (P000 [0x00])
387            CH06 (Arg0, 0x0E, 0xFF)
388            /* ObjectType */
389
390            If (X104)
391            {
392                Local1 = ObjectType (DerefOf (P000 [0x00]))
393                CH03 (__METHOD__, Z092, __LINE__, 0x00, 0x00)
394            }
395
396            /* RefOf */
397
398            Local1 = RefOf (DerefOf (P000 [0x00]))
399            CH06 (Arg0, 0x0F, 0xFF)
400            /* Release */
401            /* Reset */
402            /* Signal */
403            /* SizeOf */
404            Local1 = SizeOf (DerefOf (P000 [0x00]))
405            CH06 (Arg0, 0x10, 0xFF)
406            /* Sleep */
407
408            Sleep (DerefOf (P000 [0x00]))
409            CH06 (Arg0, 0x11, 0xFF)
410            /* Stall */
411
412            Stall (DerefOf (P000 [0x00]))
413            CH06 (Arg0, 0x12, 0xFF)
414            /* Store */
415
416            Local1 = DerefOf (P000 [0x00])
417            CH06 (Arg0, 0x13, 0xFF)
418            /* ToBCD */
419
420            ToBCD (DerefOf (P000 [0x00]), Local1)
421            CH06 (Arg0, 0x15, 0xFF)
422            /* ToBuffer */
423
424            ToBuffer (DerefOf (P000 [0x00]), Local1)
425            CH06 (Arg0, 0x17, 0xFF)
426            /* ToDecimalString */
427
428            ToDecimalString (DerefOf (P000 [0x00]), Local1)
429            CH06 (Arg0, 0x19, 0xFF)
430            /* ToHexString */
431
432            ToHexString (DerefOf (P000 [0x00]), Local1)
433            CH06 (Arg0, 0x1B, 0xFF)
434            /* ToInteger */
435
436            ToInteger (DerefOf (P000 [0x00]), Local1)
437            CH06 (Arg0, 0x1D, 0xFF)
438            /* Acquire */
439            /* Add */
440            Local1 = (DerefOf (P000 [0x00]) + I000) /* \M4B0.I000 */
441            CH06 (Arg0, 0x21, 0xFF)
442            Local1 = (I000 + DerefOf (P000 [0x00]))
443            CH06 (Arg0, 0x22, 0xFF)
444            /* And */
445
446            Local1 = (DerefOf (P000 [0x00]) & I000) /* \M4B0.I000 */
447            CH06 (Arg0, 0x25, 0xFF)
448            Local1 = (I000 & DerefOf (P000 [0x00]))
449            CH06 (Arg0, 0x26, 0xFF)
450            /* Concatenate */
451
452            Concatenate (DerefOf (P000 [0x00]), I000, Local1)
453            CH06 (Arg0, 0x29, 0xFF)
454            Concatenate (I000, DerefOf (P000 [0x00]), Local1)
455            CH06 (Arg0, 0x2A, 0xFF)
456            /* ConcatenateResTemplate */
457
458            ConcatenateResTemplate (DerefOf (P000 [0x00]), Buffer (0x02)
459                {
460                     0x79, 0x00                                       // y.
461                }, Local1)
462            CH06 (Arg0, 0x2D, 0xFF)
463            ConcatenateResTemplate (Buffer (0x02)
464                {
465                     0x79, 0x00                                       // y.
466                }, DerefOf (P000 [0x00]), Local1)
467            CH06 (Arg0, 0x2E, 0xFF)
468            /* Divide */
469
470            Divide (DerefOf (P000 [0x00]), I000, Local2)
471            CH06 (Arg0, 0x31, 0xFF)
472            Divide (I000, DerefOf (P000 [0x00]), Local2)
473            CH06 (Arg0, 0x32, 0xFF)
474            Divide (DerefOf (P000 [0x00]), I000, Local2, Local1)
475            CH06 (Arg0, 0x33, 0xFF)
476            Divide (I000, DerefOf (P000 [0x00]), Local2, Local1)
477            CH06 (Arg0, 0x34, 0xFF)
478            /* Fatal */
479
480            Fatal (0xFF, 0xFFFFFFFF, DerefOf (P000 [0x00]))
481            CH06 (Arg0, 0x35, 0xFF)
482            /* Index */
483
484            Local1 = DerefOf (P000 [0x00]) [0x00]
485            CH06 (Arg0, 0x38, 0xFF)
486            Index ("0", DerefOf (P000 [0x00]), Local1)
487            CH06 (Arg0, 0x39, 0xFF)
488            /* LEqual */
489
490            Local1 = (DerefOf (P000 [0x00]) == I000)
491            CH06 (Arg0, 0x3A, 0xFF)
492            Local1 = (I000 == DerefOf (P000 [0x00]))
493            CH06 (Arg0, 0x3B, 0xFF)
494            /* LGreater */
495
496            Local1 = (DerefOf (P000 [0x00]) > I000)
497            CH06 (Arg0, 0x3C, 0xFF)
498            Local1 = (I000 > DerefOf (P000 [0x00]))
499            CH06 (Arg0, 0x3D, 0xFF)
500            /* LGreaterEqual */
501
502            Local1 = (DerefOf (P000 [0x00]) >= I000)
503            CH06 (Arg0, 0x3E, 0xFF)
504            Local1 = (I000 >= DerefOf (P000 [0x00]))
505            CH06 (Arg0, 0x3F, 0xFF)
506            /* LLess */
507
508            Local1 = (DerefOf (P000 [0x00]) < I000)
509            CH06 (Arg0, 0x40, 0xFF)
510            Local1 = (I000 < DerefOf (P000 [0x00]))
511            CH06 (Arg0, 0x41, 0xFF)
512            /* LLessEqual */
513
514            Local1 = (DerefOf (P000 [0x00]) <= I000)
515            CH06 (Arg0, 0x42, 0xFF)
516            Local1 = (I000 <= DerefOf (P000 [0x00]))
517            CH06 (Arg0, 0x43, 0xFF)
518            /* LNotEqual */
519
520            Local1 = (DerefOf (P000 [0x00]) != I000)
521            CH06 (Arg0, 0x44, 0xFF)
522            Local1 = (I000 != DerefOf (P000 [0x00]))
523            CH06 (Arg0, 0x45, 0xFF)
524            /* LOr */
525
526            Local1 = (DerefOf (P000 [0x00]) || I000)
527            CH06 (Arg0, 0x46, 0xFF)
528            Local1 = (I000 || DerefOf (P000 [0x00]))
529            CH06 (Arg0, 0x47, 0xFF)
530            /* Mod */
531
532            Local1 = (DerefOf (P000 [0x00]) % I000) /* \M4B0.I000 */
533            CH06 (Arg0, 0x4A, 0xFF)
534            Local1 = (I000 % DerefOf (P000 [0x00]))
535            CH06 (Arg0, 0x4B, 0xFF)
536            /* Multiply */
537
538            Local1 = (DerefOf (P000 [0x00]) * I000) /* \M4B0.I000 */
539            CH06 (Arg0, 0x4E, 0xFF)
540            Local1 = (I000 * DerefOf (P000 [0x00]))
541            CH06 (Arg0, 0x4F, 0xFF)
542            /* NAnd */
543
544            NAnd (DerefOf (P000 [0x00]), I000, Local1)
545            CH06 (Arg0, 0x52, 0xFF)
546            NAnd (I000, DerefOf (P000 [0x00]), Local1)
547            CH06 (Arg0, 0x53, 0xFF)
548            /* NOr */
549
550            NOr (DerefOf (P000 [0x00]), I000, Local1)
551            CH06 (Arg0, 0x56, 0xFF)
552            NOr (I000, DerefOf (P000 [0x00]), Local1)
553            CH06 (Arg0, 0x57, 0xFF)
554            /* Or */
555
556            Local1 = (DerefOf (P000 [0x00]) | I000) /* \M4B0.I000 */
557            CH06 (Arg0, 0x5A, 0xFF)
558            Local1 = (I000 | DerefOf (P000 [0x00]))
559            CH06 (Arg0, 0x5B, 0xFF)
560            /* ShiftLeft */
561
562            Local1 = (DerefOf (P000 [0x00]) << I000) /* \M4B0.I000 */
563            CH06 (Arg0, 0x5E, 0xFF)
564            Local1 = (I000 << DerefOf (P000 [0x00]))
565            CH06 (Arg0, 0x5F, 0xFF)
566            /* ShiftRight */
567
568            Local1 = (DerefOf (P000 [0x00]) >> I000) /* \M4B0.I000 */
569            CH06 (Arg0, 0x62, 0xFF)
570            Local1 = (I000 >> DerefOf (P000 [0x00]))
571            CH06 (Arg0, 0x63, 0xFF)
572            /* Subtract */
573
574            Local1 = (DerefOf (P000 [0x00]) - I000) /* \M4B0.I000 */
575            CH06 (Arg0, 0x66, 0xFF)
576            Local1 = (I000 - DerefOf (P000 [0x00]))
577            CH06 (Arg0, 0x67, 0xFF)
578            /* ToString */
579
580            ToString (DerefOf (P000 [0x00]), 0x01, Local1)
581            CH06 (Arg0, 0x6A, 0xFF)
582            ToString (I000, DerefOf (P000 [0x00]), Local1)
583            CH06 (Arg0, 0x6B, 0xFF)
584            /* Wait */
585
586            Local1 = Wait (E000, DerefOf (P000 [0x00]))
587            CH06 (Arg0, 0x6D, 0xFF)
588            /* XOr */
589
590            Local1 = (DerefOf (P000 [0x00]) ^ I000) /* \M4B0.I000 */
591            CH06 (Arg0, 0x70, 0xFF)
592            Local1 = (I000 ^ DerefOf (P000 [0x00]))
593            CH06 (Arg0, 0x71, 0xFF)
594            /* Mid */
595
596            Mid (DerefOf (P000 [0x00]), 0x01, 0x01, Local1)
597            CH06 (Arg0, 0x75, 0xFF)
598            Mid ("123", DerefOf (P000 [0x00]), 0x01, Local1)
599            CH06 (Arg0, 0x76, 0xFF)
600            Mid ("123", 0x01, DerefOf (P000 [0x00]), Local1)
601            CH06 (Arg0, 0x77, 0xFF)
602            /* Match */
603
604            Local1 = Match (Package (0x01)
605                    {
606                        0x01
607                    }, MTR, DerefOf (P000 [0x00]), MTR, 0x00, 0x00)
608            CH06 (Arg0, 0x79, 0xFF)
609            Local1 = Match (Package (0x01)
610                    {
611                        0x01
612                    }, MTR, 0x00, MTR, DerefOf (P000 [0x00]), 0x00)
613            CH06 (Arg0, 0x7A, 0xFF)
614            Local1 = Match (Package (0x01)
615                    {
616                        0x01
617                    }, MTR, 0x00, MTR, 0x00, DerefOf (P000 [0x00]))
618            CH06 (Arg0, 0x7B, 0xFF)
619            /* DeRefOf(Index(Package, Ind, Dest)) */
620            /* This should cause an exception */
621            /* on storing to Dest (see m001) */
622            Return (0x00)
623        }
624
625        /*
626         // Causes Remark on compilation
627         // Uninitialized Arg
628         Method(m002, 2)
629         {
630         if (arg1) {
631         Store(0, arg2)
632         }
633         // CondRefOf
634
635         CondRefOf(arg2)
636         CH03(ts, z092, 6, __LINE__, 0)
637         CondRefOf(arg2, Local1)
638         CH03(ts, z092, 7, __LINE__, 0)
639         // CopyObject
640         CopyObject(arg2, Local1)
641         CH06(arg0, 0, 50)
642         // Decrement
643         Decrement(arg2)
644         CH06(arg0, 1, 50)
645         // DerefOf
646         DerefOf(arg2)
647         CH06(arg0, 2, 50)
648         // FindSetLeftBit
649         FindSetLeftBit(arg2)
650         CH06(arg0, 3, 50)
651         FindSetLeftBit(arg2, Local1)
652         CH06(arg0, 4, 50)
653         // FindSetRightBit
654         FindSetRightBit(arg2)
655         CH06(arg0, 5, 50)
656         FindSetRightBit(arg2, Local1)
657         CH06(arg0, 6, 50)
658         // FromBCD
659         FromBCD(arg2)
660         CH06(arg0, 7, 50)
661         FromBCD(arg2, Local1)
662         CH06(arg0, 8, 50)
663         // Increment
664         Increment(arg2)
665         CH06(arg0, 9, 50)
666         // LNot
667         LNot(arg2)
668         CH06(arg0, 10, 50)
669         // Not
670         Not(arg2)
671         CH06(arg0, 11, 50)
672         Not(arg2, Local1)
673         CH06(arg0, 12, 50)
674         // ObjectType
675         ObjectType(arg2)
676         CH03(ts, z092, 8, __LINE__, 0)
677         // RefOf
678         RefOf(arg2)
679         CH03(ts, z092, 9, __LINE__, 0)
680         // Release
681         Release(arg2)
682         CH06(arg0, 13, 50)
683         // Reset
684         Reset(arg2)
685         CH06(arg0, 14, 50)
686         // Signal
687         Signal(arg2)
688         CH06(arg0, 15, 50)
689         // SizeOf
690         SizeOf(arg2)
691         CH06(arg0, 16, 50)
692         // Sleep
693         Sleep(arg2)
694         CH06(arg0, 17, 50)
695         // Stall
696         Stall(arg2)
697         CH06(arg0, 18, 50)
698         // Store
699         Store(arg2, Local1)
700         CH06(arg0, 19, 50)
701         // ToBCD
702         ToBCD(arg2)
703         CH06(arg0, 20, 50)
704         ToBCD(arg2, Local1)
705         CH06(arg0, 21, 50)
706         // ToBuffer
707         ToBuffer(arg2)
708         CH06(arg0, 22, 50)
709         ToBuffer(arg2, Local1)
710         CH06(arg0, 23, 50)
711         // ToDecimalString
712         ToDecimalString(arg2)
713         CH06(arg0, 24, 50)
714         ToDecimalString(arg2, Local1)
715         CH06(arg0, 25, 50)
716         // ToHexString
717         ToHexString(arg2)
718         CH06(arg0, 26, 50)
719         ToHexString(arg2, Local1)
720         CH06(arg0, 27, 50)
721         // ToInteger
722         ToInteger(arg2)
723         CH06(arg0, 28, 50)
724         ToInteger(arg2, Local1)
725         CH06(arg0, 29, 50)
726         // Acquire
727         Store(Acquire(arg2, 100), Local1)
728         CH06(arg0, 30, 50)
729         // Add
730         Add(arg2, i000)
731         CH06(arg0, 31, 50)
732         Add(i000, arg2)
733         CH06(arg0, 32, 50)
734         Add(arg2, i000, Local1)
735         CH06(arg0, 33, 50)
736         Add(i000, arg2, Local1)
737         CH06(arg0, 34, 50)
738         // And
739         And(arg2, i000)
740         CH06(arg0, 35, 50)
741         And(i000, arg2)
742         CH06(arg0, 36, 50)
743         And(arg2, i000, Local1)
744         CH06(arg0, 37, 50)
745         And(i000, arg2, Local1)
746         CH06(arg0, 38, 50)
747         // Concatenate
748         Concatenate(arg2, i000)
749         CH06(arg0, 39, 50)
750         Concatenate(i000, arg2)
751         CH06(arg0, 40, 50)
752         Concatenate(arg2, i000, Local1)
753         CH06(arg0, 41, 50)
754         Concatenate(i000, arg2, Local1)
755         CH06(arg0, 42, 50)
756         // ConcatenateResTemplate
757         ConcatenateResTemplate(arg2, ResourceTemplate(){})
758         CH06(arg0, 43, 50)
759         ConcatenateResTemplate(ResourceTemplate(){}, arg2)
760         CH06(arg0, 44, 50)
761         ConcatenateResTemplate(arg2, ResourceTemplate(){}, Local1)
762         CH06(arg0, 45, 50)
763         ConcatenateResTemplate(ResourceTemplate(){}, arg2, Local1)
764         CH06(arg0, 46, 50)
765         // Divide
766         Divide(arg2, i000)
767         CH06(arg0, 47, 50)
768         Divide(i000, arg2)
769         CH06(arg0, 48, 50)
770         Divide(arg2, i000, Local2)
771         CH06(arg0, 49, 50)
772         Divide(i000, arg2, Local2)
773         CH06(arg0, 50, 50)
774         Divide(arg2, i000, Local2, Local1)
775         CH06(arg0, 51, 50)
776         Divide(i000, arg2, Local2, Local1)
777         CH06(arg0, 52, 50)
778         // Fatal
779         Fatal(0xff, 0xffffffff, arg2)
780         CH06(arg0, 53, 50)
781         // Index
782         Index(arg2, 0)
783         CH06(arg0, 54, 50)
784         Index("0", arg2)
785         CH06(arg0, 55, 50)
786         Index(arg2, 0, Local1)
787         CH06(arg0, 56, 50)
788         Index("0", arg2, Local1)
789         CH06(arg0, 57, 50)
790         // LEqual
791         LEqual(arg2, i000)
792         CH06(arg0, 58, 50)
793         LEqual(i000, arg2)
794         CH06(arg0, 59, 50)
795         // LGreater
796         LGreater(arg2, i000)
797         CH06(arg0, 60, 50)
798         LGreater(i000, arg2)
799         CH06(arg0, 61, 50)
800         // LGreaterEqual
801         LGreaterEqual(arg2, i000)
802         CH06(arg0, 62, 0xff)
803         LGreaterEqual(i000, arg2)
804         CH06(arg0, 63, 0xff)
805         // LLess
806         LLess(arg2, i000)
807         CH06(arg0, 64, 50)
808         LLess(i000, arg2)
809         CH06(arg0, 65, 50)
810         // LLessEqual
811         LLessEqual(arg2, i000)
812         CH06(arg0, 66, 0xff)
813         LLessEqual(i000, arg2)
814         CH06(arg0, 67, 0xff)
815         // LNotEqual
816         LNotEqual(arg2, i000)
817         CH06(arg0, 68, 0xff)
818         LNotEqual(i000, arg2)
819         CH06(arg0, 69, 0xff)
820         // LOr
821         LOr(arg2, i000)
822         CH06(arg0, 70, 50)
823         LOr(i000, arg2)
824         CH06(arg0, 71, 50)
825         // Mod
826         Mod(arg2, i000)
827         CH06(arg0, 72, 50)
828         Mod(i000, arg2)
829         CH06(arg0, 73, 50)
830         Mod(arg2, i000, Local1)
831         CH06(arg0, 74, 50)
832         Mod(i000, arg2, Local1)
833         CH06(arg0, 75, 50)
834         // Multiply
835         Multiply(arg2, i000)
836         CH06(arg0, 76, 50)
837         Multiply(i000, arg2)
838         CH06(arg0, 77, 50)
839         Multiply(arg2, i000, Local1)
840         CH06(arg0, 78, 50)
841         Multiply(i000, arg2, Local1)
842         CH06(arg0, 79, 50)
843         // NAnd
844         NAnd(arg2, i000)
845         CH06(arg0, 80, 50)
846         NAnd(i000, arg2)
847         CH06(arg0, 81, 50)
848         NAnd(arg2, i000, Local1)
849         CH06(arg0, 82, 50)
850         NAnd(i000, arg2, Local1)
851         CH06(arg0, 83, 50)
852         // NOr
853         NOr(arg2, i000)
854         CH06(arg0, 84, 50)
855         NOr(i000, arg2)
856         CH06(arg0, 85, 50)
857         NOr(arg2, i000, Local1)
858         CH06(arg0, 86, 50)
859         NOr(i000, arg2, Local1)
860         CH06(arg0, 87, 50)
861         // Or
862         Or(arg2, i000)
863         CH06(arg0, 88, 50)
864         Or(i000, arg2)
865         CH06(arg0, 89, 50)
866         Or(arg2, i000, Local1)
867         CH06(arg0, 90, 50)
868         Or(i000, arg2, Local1)
869         CH06(arg0, 91, 50)
870         // ShiftLeft
871         ShiftLeft(arg2, i000)
872         CH06(arg0, 92, 50)
873         ShiftLeft(i000, arg2)
874         CH06(arg0, 93, 50)
875         ShiftLeft(arg2, i000, Local1)
876         CH06(arg0, 94, 50)
877         ShiftLeft(i000, arg2, Local1)
878         CH06(arg0, 95, 50)
879         // ShiftRight
880         ShiftRight(arg2, i000)
881         CH06(arg0, 96, 50)
882         ShiftRight(i000, arg2)
883         CH06(arg0, 97, 50)
884         ShiftRight(arg2, i000, Local1)
885         CH06(arg0, 98, 50)
886         ShiftRight(i000, arg2, Local1)
887         CH06(arg0, 99, 50)
888         // Subtract
889         Subtract(arg2, i000)
890         CH06(arg0, 100, 50)
891         Subtract(i000, arg2)
892         CH06(arg0, 101, 50)
893         Subtract(arg2, i000, Local1)
894         CH06(arg0, 102, 50)
895         Subtract(i000, arg2, Local1)
896         CH06(arg0, 103, 50)
897         // ToString
898         ToString(arg2, 1)
899         CH06(arg0, 104, 50)
900         ToString(i000, arg2)
901         CH06(arg0, 105, 50)
902         ToString(arg2, 1, Local1)
903         CH06(arg0, 106, 50)
904         ToString(i000, arg2, Local1)
905         CH06(arg0, 107, 50)
906         // Wait
907         Store(Wait(arg2, i000), Local1)
908         CH06(arg0, 108, 50)
909         Store(Wait(e000, arg2), Local1)
910         CH06(arg0, 109, 50)
911         // XOr
912         XOr(arg2, i000)
913         CH06(arg0, 110, 50)
914         XOr(i000, arg2)
915         CH06(arg0, 111, 50)
916         XOr(arg2, i000, Local1)
917         CH06(arg0, 112, 50)
918         XOr(i000, arg2, Local1)
919         CH06(arg0, 113, 50)
920         // Mid
921         Mid(arg2, 1, 1)
922         CH06(arg0, 114, 50)
923         Mid("123", arg2, 1)
924         CH06(arg0, 115, 50)
925         Mid("123", 1, arg2)
926         CH06(arg0, 116, 50)
927         Mid(arg2, 1, 1, Local1)
928         CH06(arg0, 117, 50)
929         Mid("123", arg2, 1, Local1)
930         CH06(arg0, 118, 50)
931         Mid("123", 1, arg2, Local1)
932         CH06(arg0, 119, 50)
933         // Match
934         Match(arg2, MTR, 0, MTR, 0, 0)
935         CH06(arg0, 120, 50)
936         Match(Package(){1}, MTR, arg2, MTR, 0, 0)
937         CH06(arg0, 121, 50)
938         Match(Package(){1}, MTR, 0, MTR, arg2, 0)
939         CH06(arg0, 122, 50)
940         Match(Package(){1}, MTR, 0, MTR, 0, arg2)
941         CH06(arg0, 123, 50)
942         }
943         */
944        /* Reference to Uninitialized Object */
945        Method (M003, 2, NotSerialized)
946        {
947            Local0 = ObjectType (Arg1)
948            If ((Local0 != 0x00))
949            {
950                ERR (Arg0, Z092, __LINE__, 0x00, 0x00, Local0, 0x00)
951                Return (0x01)
952            }
953
954            Local1 = DerefOf (Arg1)
955            CH04 (__METHOD__, 0x00, 0x3E, Z092, __LINE__, 0x00, 0x00)
956            /* CondRefOf */
957
958            CondRefOf (DerefOf (Arg1), Local1)
959            CH06 (Arg0, 0x01, 0xFF)
960            /* CopyObject */
961
962            CopyObject (DerefOf (Arg1), Local1)
963            CH06 (Arg0, 0x02, 0xFF)
964            /* Decrement */
965
966            DerefOf (Arg1)--
967            CH06 (Arg0, 0x03, 0xFF)
968            /* DerefOf */
969
970            Local1 = DerefOf (DerefOf (Arg1))
971            CH06 (Arg0, 0x04, 0xFF)
972            /* FindSetLeftBit */
973
974            FindSetLeftBit (DerefOf (Arg1), Local1)
975            CH06 (Arg0, 0x06, 0xFF)
976            /* FindSetRightBit */
977
978            FindSetRightBit (DerefOf (Arg1), Local1)
979            CH06 (Arg0, 0x08, 0xFF)
980            /* FromBCD */
981
982            FromBCD (DerefOf (Arg1), Local1)
983            CH06 (Arg0, 0x0A, 0xFF)
984            /* Increment */
985
986            DerefOf (Arg1)++
987            CH06 (Arg0, 0x0B, 0xFF)
988            /* LNot */
989
990            Local1 = !DerefOf (Arg1)
991            CH06 (Arg0, 0x0C, 0xFF)
992            /* Not */
993
994            Store (~DerefOf (Arg1), Local1)
995            CH06 (Arg0, 0x0E, 0xFF)
996            /* ObjectType */
997
998            If (X104)
999            {
1000                Local1 = ObjectType (DerefOf (Arg1))
1001                CH03 (__METHOD__, Z092, __LINE__, 0x00, 0x00)
1002            }
1003
1004            /* RefOf */
1005
1006            Local1 = RefOf (DerefOf (Arg1))
1007            CH06 (Arg0, 0x0F, 0xFF)
1008            /* Release */
1009            /* Reset */
1010            /* Signal */
1011            /* SizeOf */
1012            Local1 = SizeOf (DerefOf (Arg1))
1013            CH06 (Arg0, 0x10, 0xFF)
1014            /* Sleep */
1015
1016            Sleep (DerefOf (Arg1))
1017            CH06 (Arg0, 0x11, 0xFF)
1018            /* Stall */
1019
1020            Stall (DerefOf (Arg1))
1021            CH06 (Arg0, 0x12, 0xFF)
1022            /* Store */
1023
1024            Local1 = DerefOf (Arg1)
1025            CH06 (Arg0, 0x13, 0xFF)
1026            /* ToBCD */
1027
1028            ToBCD (DerefOf (Arg1), Local1)
1029            CH06 (Arg0, 0x15, 0xFF)
1030            /* ToBuffer */
1031
1032            ToBuffer (DerefOf (Arg1), Local1)
1033            CH06 (Arg0, 0x17, 0xFF)
1034            /* ToDecimalString */
1035
1036            ToDecimalString (DerefOf (Arg1), Local1)
1037            CH06 (Arg0, 0x19, 0xFF)
1038            /* ToHexString */
1039
1040            ToHexString (DerefOf (Arg1), Local1)
1041            CH06 (Arg0, 0x1B, 0xFF)
1042            /* ToInteger */
1043
1044            ToInteger (DerefOf (Arg1), Local1)
1045            CH06 (Arg0, 0x1D, 0xFF)
1046            /* Acquire */
1047            /* Add */
1048            Local1 = (DerefOf (Arg1) + I000) /* \M4B0.I000 */
1049            CH06 (Arg0, 0x21, 0xFF)
1050            Local1 = (I000 + DerefOf (Arg1))
1051            CH06 (Arg0, 0x22, 0xFF)
1052            /* And */
1053
1054            Local1 = (DerefOf (Arg1) & I000) /* \M4B0.I000 */
1055            CH06 (Arg0, 0x25, 0xFF)
1056            Local1 = (I000 & DerefOf (Arg1))
1057            CH06 (Arg0, 0x26, 0xFF)
1058            /* Concatenate */
1059
1060            Concatenate (DerefOf (Arg1), I000, Local1)
1061            CH06 (Arg0, 0x29, 0xFF)
1062            Concatenate (I000, DerefOf (Arg1), Local1)
1063            CH06 (Arg0, 0x2A, 0xFF)
1064            /* ConcatenateResTemplate */
1065
1066            ConcatenateResTemplate (DerefOf (Arg1), Buffer (0x02)
1067                {
1068                     0x79, 0x00                                       // y.
1069                }, Local1)
1070            CH06 (Arg0, 0x2D, 0xFF)
1071            ConcatenateResTemplate (Buffer (0x02)
1072                {
1073                     0x79, 0x00                                       // y.
1074                }, DerefOf (Arg1), Local1)
1075            CH06 (Arg0, 0x2E, 0xFF)
1076            /* Divide */
1077
1078            Divide (DerefOf (Arg1), I000, Local2)
1079            CH06 (Arg0, 0x31, 0xFF)
1080            Divide (I000, DerefOf (Arg1), Local2)
1081            CH06 (Arg0, 0x32, 0xFF)
1082            Divide (DerefOf (Arg1), I000, Local2, Local1)
1083            CH06 (Arg0, 0x33, 0xFF)
1084            Divide (I000, DerefOf (Arg1), Local2, Local1)
1085            CH06 (Arg0, 0x34, 0xFF)
1086            /* Fatal */
1087
1088            Fatal (0xFF, 0xFFFFFFFF, DerefOf (Arg1))
1089            CH06 (Arg0, 0x35, 0xFF)
1090            /* Index */
1091
1092            Local1 = DerefOf (Arg1) [0x00]
1093            CH06 (Arg0, 0x38, 0xFF)
1094            Index ("0", DerefOf (Arg1), Local1)
1095            CH06 (Arg0, 0x39, 0xFF)
1096            /* LEqual */
1097
1098            Local1 = (DerefOf (Arg1) == I000)
1099            CH06 (Arg0, 0x3A, 0xFF)
1100            Local1 = (I000 == DerefOf (Arg1))
1101            CH06 (Arg0, 0x3B, 0xFF)
1102            /* LGreater */
1103
1104            Local1 = (DerefOf (Arg1) > I000)
1105            CH06 (Arg0, 0x3C, 0xFF)
1106            Local1 = (I000 > DerefOf (Arg1))
1107            CH06 (Arg0, 0x3D, 0xFF)
1108            /* LGreaterEqual */
1109
1110            Local1 = (DerefOf (Arg1) >= I000)
1111            CH06 (Arg0, 0x3E, 0xFF)
1112            Local1 = (I000 >= DerefOf (Arg1))
1113            CH06 (Arg0, 0x3F, 0xFF)
1114            /* LLess */
1115
1116            Local1 = (DerefOf (Arg1) < I000)
1117            CH06 (Arg0, 0x40, 0xFF)
1118            Local1 = (I000 < DerefOf (Arg1))
1119            CH06 (Arg0, 0x41, 0xFF)
1120            /* LLessEqual */
1121
1122            Local1 = (DerefOf (Arg1) <= I000)
1123            CH06 (Arg0, 0x42, 0xFF)
1124            Local1 = (I000 <= DerefOf (Arg1))
1125            CH06 (Arg0, 0x43, 0xFF)
1126            /* LNotEqual */
1127
1128            Local1 = (DerefOf (Arg1) != I000)
1129            CH06 (Arg0, 0x44, 0xFF)
1130            Local1 = (I000 != DerefOf (Arg1))
1131            CH06 (Arg0, 0x45, 0xFF)
1132            /* LOr */
1133
1134            Local1 = (DerefOf (Arg1) || I000)
1135            CH06 (Arg0, 0x46, 0xFF)
1136            Local1 = (I000 || DerefOf (Arg1))
1137            CH06 (Arg0, 0x47, 0xFF)
1138            /* Mod */
1139
1140            Local1 = (DerefOf (Arg1) % I000) /* \M4B0.I000 */
1141            CH06 (Arg0, 0x4A, 0xFF)
1142            Local1 = (I000 % DerefOf (Arg1))
1143            CH06 (Arg0, 0x4B, 0xFF)
1144            /* Multiply */
1145
1146            Local1 = (DerefOf (Arg1) * I000) /* \M4B0.I000 */
1147            CH06 (Arg0, 0x4E, 0xFF)
1148            Local1 = (I000 * DerefOf (Arg1))
1149            CH06 (Arg0, 0x4F, 0xFF)
1150            /* NAnd */
1151
1152            NAnd (DerefOf (Arg1), I000, Local1)
1153            CH06 (Arg0, 0x52, 0xFF)
1154            NAnd (I000, DerefOf (Arg1), Local1)
1155            CH06 (Arg0, 0x53, 0xFF)
1156            /* NOr */
1157
1158            NOr (DerefOf (Arg1), I000, Local1)
1159            CH06 (Arg0, 0x56, 0xFF)
1160            NOr (I000, DerefOf (Arg1), Local1)
1161            CH06 (Arg0, 0x57, 0xFF)
1162            /* Or */
1163
1164            Local1 = (DerefOf (Arg1) | I000) /* \M4B0.I000 */
1165            CH06 (Arg0, 0x5A, 0xFF)
1166            Local1 = (I000 | DerefOf (Arg1))
1167            CH06 (Arg0, 0x5B, 0xFF)
1168            /* ShiftLeft */
1169
1170            Local1 = (DerefOf (Arg1) << I000) /* \M4B0.I000 */
1171            CH06 (Arg0, 0x5E, 0xFF)
1172            Local1 = (I000 << DerefOf (Arg1))
1173            CH06 (Arg0, 0x5F, 0xFF)
1174            /* ShiftRight */
1175
1176            Local1 = (DerefOf (Arg1) >> I000) /* \M4B0.I000 */
1177            CH06 (Arg0, 0x62, 0xFF)
1178            Local1 = (I000 >> DerefOf (Arg1))
1179            CH06 (Arg0, 0x63, 0xFF)
1180            /* Subtract */
1181
1182            Local1 = (DerefOf (Arg1) - I000) /* \M4B0.I000 */
1183            CH06 (Arg0, 0x66, 0xFF)
1184            Local1 = (I000 - DerefOf (Arg1))
1185            CH06 (Arg0, 0x67, 0xFF)
1186            /* ToString */
1187
1188            ToString (DerefOf (Arg1), 0x01, Local1)
1189            CH06 (Arg0, 0x6A, 0xFF)
1190            ToString (I000, DerefOf (Arg1), Local1)
1191            CH06 (Arg0, 0x6B, 0xFF)
1192            /* Wait */
1193
1194            Local1 = Wait (E000, DerefOf (Arg1))
1195            CH06 (Arg0, 0x6D, 0xFF)
1196            /* XOr */
1197
1198            Local1 = (DerefOf (Arg1) ^ I000) /* \M4B0.I000 */
1199            CH06 (Arg0, 0x70, 0xFF)
1200            Local1 = (I000 ^ DerefOf (Arg1))
1201            CH06 (Arg0, 0x71, 0xFF)
1202            /* Mid */
1203
1204            Mid (DerefOf (Arg1), 0x01, 0x01, Local1)
1205            CH06 (Arg0, 0x75, 0xFF)
1206            Mid ("123", DerefOf (Arg1), 0x01, Local1)
1207            CH06 (Arg0, 0x76, 0xFF)
1208            Mid ("123", 0x01, DerefOf (Arg1), Local1)
1209            CH06 (Arg0, 0x77, 0xFF)
1210            /* Match */
1211
1212            Local1 = Match (DerefOf (Arg1), MTR, 0x00, MTR, 0x00, 0x00)
1213            CH06 (Arg0, 0x78, 0xFF)
1214            Local1 = Match (Package (0x01)
1215                    {
1216                        0x01
1217                    }, MTR, DerefOf (Arg1), MTR, 0x00, 0x00)
1218            CH06 (Arg0, 0x79, 0xFF)
1219            Local1 = Match (Package (0x01)
1220                    {
1221                        0x01
1222                    }, MTR, 0x00, MTR, DerefOf (Arg1), 0x00)
1223            CH06 (Arg0, 0x7A, 0xFF)
1224            Local1 = Match (Package (0x01)
1225                    {
1226                        0x01
1227                    }, MTR, 0x00, MTR, 0x00, DerefOf (Arg1))
1228            CH06 (Arg0, 0x7B, 0xFF)
1229            Return (0x00)
1230        }
1231
1232        /* Uninitialized Local in Return */
1233
1234        Method (M004, 1, NotSerialized)
1235        {
1236            If (Arg0)
1237            {
1238                Local0 = 0x00
1239            }
1240
1241            Return (Local0)
1242        }
1243
1244        /* Uninitialized element of Package in Return */
1245
1246        Method (M005, 0, Serialized)
1247        {
1248            Name (P000, Package (0x01){})
1249            Return (DerefOf (P000 [0x00]))
1250        }
1251
1252        /*
1253         // Causes Remark on compilation
1254         // Uninitialized Arg in Return
1255         Method(m006, 1)
1256         {
1257         if (arg0) {
1258         Store(0, arg1)
1259         }
1260         Return (arg1)
1261         }
1262         */
1263        /* Uninitialized Local in If */
1264        Method (M007, 1, NotSerialized)
1265        {
1266            If (Arg0)
1267            {
1268                Local0 = 0x00
1269            }
1270
1271            Local1 = 0x00
1272            If (Local0)
1273            {
1274                Local1 = 0x01
1275            }
1276
1277            Return (Local1)
1278        }
1279
1280        /* Uninitialized element of Package in If */
1281
1282        Method (M008, 0, Serialized)
1283        {
1284            Name (P000, Package (0x01){})
1285            Local1 = 0x00
1286            If (DerefOf (P000 [0x00]))
1287            {
1288                Local1 = 0x01
1289            }
1290
1291            Return (Local1)
1292        }
1293
1294        /*
1295         // Causes Remark on compilation
1296         // Uninitialized Arg in If
1297         Method(m009, 1)
1298         {
1299         if (arg0) {
1300         Store(0, arg1)
1301         }
1302         Store(0, Local1)
1303         if (arg1) {
1304         Store(1, Local1)
1305         }
1306         Return (Local1)
1307         }
1308         */
1309        /* Uninitialized Local in Elseif */
1310        Method (M00A, 1, NotSerialized)
1311        {
1312            If (Arg0)
1313            {
1314                Local0 = 0x00
1315            }
1316
1317            Local1 = 0x00
1318            If (Arg0)
1319            {
1320                Local1 = 0x01
1321            }
1322            ElseIf (Local0)
1323            {
1324                Local1 = 0x02
1325            }
1326
1327            Return (Local1)
1328        }
1329
1330        /* Uninitialized element of Package in Elseif */
1331
1332        Method (M00B, 1, Serialized)
1333        {
1334            Name (P000, Package (0x01){})
1335            Local1 = 0x00
1336            If (Arg0)
1337            {
1338                Local1 = 0x01
1339            }
1340            ElseIf (DerefOf (P000 [0x00]))
1341            {
1342                Local1 = 0x02
1343            }
1344
1345            Return (Local1)
1346        }
1347
1348        /*
1349         // Causes Remark on compilation
1350         // Uninitialized Arg in If
1351         Method(m00c, 1)
1352         {
1353         if (arg0) {
1354         Store(0, arg1)
1355         }
1356         Store(0, Local1)
1357         if (arg0) {
1358         Store(1, Local1)
1359         } elseif (arg1) {
1360         Store(2, Local1)
1361         }
1362         Return (Local1)
1363         }
1364         */
1365        Name (I001, 0x00)
1366        Method (M00D, 1, NotSerialized)
1367        {
1368            I001 = 0x01
1369        }
1370
1371        /* Uninitialized element of Package as parameter of a method */
1372
1373        Method (M00E, 1, Serialized)
1374        {
1375            Name (P000, Package (0x01){})
1376            I001 = 0x00
1377            M00D (DerefOf (P000 [0x00]))
1378            CH06 (Arg0, 0x00, 0x33)
1379            If ((I001 != 0x00))
1380            {
1381                ERR (Arg0, Z092, __LINE__, 0x00, 0x00, I001, 0x00)
1382            }
1383
1384            I001 = 0x00
1385            Store (P000 [0x00], Local1)
1386            M00D (DerefOf (Local1))
1387            CH06 (Arg0, 0x02, 0x33)
1388            If ((I001 != 0x00))
1389            {
1390                ERR (Arg0, Z092, __LINE__, 0x00, 0x00, I001, 0x00)
1391            }
1392
1393            I001 = 0x00
1394            M00D (DerefOf (Local2 = P000 [0x00]))
1395            CH06 (Arg0, 0x04, 0x33)
1396            If ((I001 != 0x00))
1397            {
1398                ERR (Arg0, Z092, __LINE__, 0x00, 0x00, I001, 0x00)
1399            }
1400
1401            I001 = 0x00
1402            Local3 = P000 [0x00]
1403            M00D (DerefOf (Local3))
1404            CH06 (Arg0, 0x06, 0x33)
1405            If ((I001 != 0x00))
1406            {
1407                ERR (Arg0, Z092, __LINE__, 0x00, 0x00, I001, 0x00)
1408            }
1409
1410            I001 = 0x00
1411            Local5 = Local4 = P000 [0x00]
1412            M00D (DerefOf (Local5))
1413            CH06 (Arg0, 0x08, 0x33)
1414            If ((I001 != 0x00))
1415            {
1416                ERR (Arg0, Z092, __LINE__, 0x00, 0x00, I001, 0x00)
1417            }
1418        }
1419
1420        CH03 (__METHOD__, Z092, __LINE__, 0x00, 0x00)
1421        /* Uninitialized Local */
1422
1423        M000 (Concatenate (__METHOD__, "-m000"), 0x00)
1424        /* Uninitialized element of Package */
1425
1426        M001 (Concatenate (__METHOD__, "-m001"))
1427        /*
1428         // Causes Remark on compilation
1429         // Uninitialized Arg
1430         m002(Concatenate(ts, "-m002"), 0)
1431         */
1432        /* Reference to Uninitialized Local */
1433        If (Arg0)
1434        {
1435            Local0 = 0x00
1436        }
1437
1438        M003 (Concatenate (__METHOD__, "-m003-RefLocal"), RefOf (Local0))
1439        /* Reference (Index) to Uninitialized element of Package */
1440
1441        If (Y502)
1442        {
1443            Name (P000, Package (0x01){})
1444            If (Y113)
1445            {
1446                M003 (Concatenate (__METHOD__, "-m003-Index"), P000 [0x00])
1447            }
1448
1449            Store (P000 [0x00], Local1)
1450            M003 (Concatenate (__METHOD__, "-m003-Index2"), Local1)
1451            If (Y113)
1452            {
1453                M003 (Concatenate (__METHOD__, "-m003-Index3"), Local2 = P000 [0x00])
1454            }
1455
1456            Local3 = P000 [0x00]
1457            M003 (Concatenate (__METHOD__, "-m003-Index4"), Local3)
1458            Local5 = Local4 = P000 [0x00]
1459            M003 (Concatenate (__METHOD__, "-m003-Index5"), Local5)
1460        }
1461
1462        /* Uninitialized Local in Return */
1463
1464        M004 (0x00)
1465        CH06 (__METHOD__, 0x00, 0x31)
1466        /* Uninitialized element of Package in Return */
1467
1468        If (Y502)
1469        {
1470            M005 ()
1471            CH06 (__METHOD__, 0x01, 0x33)
1472        }
1473
1474        /*
1475         // Causes Remark on compilation
1476         // Uninitialized Arg in Return
1477         m006(0)
1478         CH06(ts, 2, 50)
1479         */
1480        /* Uninitialized Local in If */
1481        M007 (0x00)
1482        CH06 (__METHOD__, 0x03, 0x31)
1483        /* Uninitialized element of Package in If */
1484
1485        If (Y502)
1486        {
1487            M008 ()
1488            CH06 (__METHOD__, 0x04, 0x33)
1489        }
1490
1491        /*
1492         // Causes Remark on compilation
1493         // Uninitialized Arg in If
1494         m009(0)
1495         CH06(ts, 5, 50)
1496         */
1497        /* Uninitialized Local in Elseif */
1498        M00A (0x00)
1499        CH06 (__METHOD__, 0x06, 0x31)
1500        /* Uninitialized element of Package in Elseif */
1501
1502        If (Y502)
1503        {
1504            M00B (0x00)
1505            CH06 (__METHOD__, 0x07, 0x33)
1506        }
1507
1508        /*
1509         // Causes Remark on compilation
1510         // Uninitialized Arg in Elseif
1511         m00c(0)
1512         CH06(ts, 8, 50)
1513         */
1514        /* Uninitialized Local as parameter of a method */
1515        I001 = 0x00
1516        M00D (Local0)
1517        CH06 (__METHOD__, 0x09, 0x31)
1518        If ((I001 != 0x00))
1519        {
1520            ERR (__METHOD__, Z092, __LINE__, 0x00, 0x00, I001, 0x00)
1521        }
1522
1523        /* Uninitialized element of Package as parameter of a method */
1524
1525        If (Y502)
1526        {
1527            M00E (Concatenate (__METHOD__, "-m00e"))
1528        }
1529        /*
1530     // Causes Remark on compilation
1531     // Uninitialized Arg as parameter of a method
1532     Store(0, i001)
1533     m00d(Arg1)
1534     CH06(ts, 11, 50)
1535     if (LNotEqual(i001, 0)) {
1536     err(ts, z092, __LINE__, i001, 0)
1537     }
1538     */
1539    }
1540