• Home
  • History
  • Annotate
  • Line#
  • Navigate
  • Raw
  • Download
  • only in /barrelfish-2018-10-04/lib/acpica/tests/aslts/src/runtime/collections/Identity2MS/abbu/method/
1/*
2 * Some or all of this work - Copyright (c) 2006 - 2016, 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/*
30 * Tests to check path names with method type syllables
31 */
32
33Name(z169, 169)
34
35
36Processor(pr7d, 0, 0x000, 0x008)
37{
38	Name(iy07, 0xabcd0120)
39}
40
41/*
42 * Test shows maximal supported depth of enclosed method calls on MS
43 */
44Method(mt00,, Serialized)
45{
46    Name(ts, "mt00")
47
48    Name(i000, 0)
49
50    Method(mm00)
51    {
52      Method(mm01)
53      {
54        Method(mm02)
55        {
56          Method(mm03)
57          {
58            Method(mm04)
59            {
60              Method(mm05)
61              {
62                Method(mm06)
63                {
64                  Method(mm07)
65                  {
66                    Method(mm08)
67                    {
68                      Method(mm09)
69                      {
70                        Method(mm0a)
71                        {
72                          Method(mm0b)
73                          {
74                              // OUTC("Number of calls to methods depends on the length of this message!")
75                              OUTC("Max")
76                              Store(0xabcd0000, i000)
77                          }
78                          mm0b()
79                        }
80                        mm0a()
81                      }
82                      mm09()
83                    }
84                    mm08()
85                  }
86                  mm07()
87                }
88                mm06()
89              }
90              mm05()
91            }
92            mm04()
93          }
94          mm03()
95        }
96        mm02()
97      }
98      mm01()
99    }
100
101    CH03(ts, z169, 0x100, 0, 0)
102
103    mm00()
104
105    if (LNotEqual(i000, 0xabcd0000)) {
106        err(ts, z169, 0x000, 0, 0, i000, 0xabcd0000)
107    }
108
109    CH03(ts, z169, 0x101, 0, 0)
110}
111
112/*
113 * The same as mt00, but contains more depth of enclosed method calls.
114 * To be run on ACPICA only.
115 */
116Method(mt01,, Serialized)
117{
118    Name(ts, "mt01")
119
120    Name(i000, 0)
121
122    Method(mm00)
123    {
124      Method(mm01)
125      {
126        Method(mm02)
127        {
128          Method(mm03)
129          {
130            Method(mm04)
131            {
132              Method(mm05)
133              {
134                Method(mm06)
135                {
136                  Method(mm07)
137                  {
138                    Method(mm08)
139                    {
140                      Method(mm09)
141                      {
142                        Method(mm0a)
143                        {
144                          Method(mm0b)
145                          {
146                            Method(mm0c)
147                            {
148                              Method(mm0d)
149                              {
150                                Method(mm0e)
151                                {
152                                  Method(mm0f)
153                                  {
154                                    Method(mm10)
155                                    {
156                                      Method(mm11)
157                                      {
158                                        Method(mm12)
159                                        {
160                                          Method(mm13)
161                                          {
162                                            Method(mm14)
163                                            {
164                                              Method(mm15)
165                                              {
166                                                Method(mm16)
167                                                {
168                                                  Method(mm17)
169                                                  {
170                                                    Method(mm18)
171                                                    {
172                                                      Method(mm19)
173                                                      {
174                                                        Method(mm1a)
175                                                        {
176                                                          Method(mm1b)
177                                                          {
178                                                            Method(mm1c)
179                                                            {
180                                                              Method(mm1d)
181                                                              {
182                                                                Method(mm1e)
183                                                                {
184                                                                  Method(mm1f)
185                                                                  {
186                                                                    OUTC("Max")
187                                                                    Store(0xabcd0000, i000)
188                                                                  }
189                                                                  mm1f()
190                                                                }
191                                                                mm1e()
192                                                              }
193                                                              mm1d()
194                                                            }
195                                                            mm1c()
196                                                          }
197                                                          mm1b()
198                                                        }
199                                                        mm1a()
200                                                      }
201                                                      mm19()
202                                                    }
203                                                    mm18()
204                                                  }
205                                                  mm17()
206                                                }
207                                                mm16()
208                                              }
209                                              mm15()
210                                            }
211                                            mm14()
212                                          }
213                                          mm13()
214                                        }
215                                        mm12()
216                                      }
217                                      mm11()
218                                    }
219                                    mm10()
220                                  }
221                                  mm0f()
222                                }
223                                mm0e()
224                              }
225                              mm0d()
226                            }
227                            mm0c()
228                          }
229                          mm0b()
230                        }
231                        mm0a()
232                      }
233                      mm09()
234                    }
235                    mm08()
236                  }
237                  mm07()
238                }
239                mm06()
240              }
241              mm05()
242            }
243            mm04()
244          }
245          mm03()
246        }
247        mm02()
248      }
249      mm01()
250    }
251
252    CH03(ts, z169, 0x102, 0, 0)
253
254    mm00()
255
256    if (LNotEqual(i000, 0xabcd0000)) {
257        err(ts, z169, 0x001, 0, 0, i000, 0xabcd0000)
258    }
259
260    CH03(ts, z169, 0x103, 0, 0)
261}
262
263/*
264 * Test shows maximal supported depth of enclosed method calls on MS
265 */
266Method(mt02,, Serialized)
267{
268    Name(ts, "mt02")
269
270    Name(i000, 0)
271
272    Method(mm00)
273    {
274      mm01()
275    }
276    Method(mm01)
277    {
278      mm02()
279    }
280    Method(mm02)
281    {
282      mm03()
283    }
284    Method(mm03)
285    {
286      mm04()
287    }
288    Method(mm04)
289    {
290      mm05()
291    }
292    Method(mm05)
293    {
294      mm06()
295    }
296    Method(mm06)
297    {
298      mm07()
299    }
300    Method(mm07)
301    {
302      mm08()
303    }
304    Method(mm08)
305    {
306      mm09()
307    }
308    Method(mm09)
309    {
310      mm0a()
311    }
312    Method(mm0a)
313    {
314      mm0b()
315    }
316    Method(mm0b)
317    {
318      mm0c()
319    }
320    Method(mm0c)
321    {
322      mm0d()
323    }
324    Method(mm0d)
325    {
326      mm0e()
327    }
328    Method(mm0e)
329    {
330      mm0f()
331    }
332    Method(mm0f)
333    {
334      OUTC("Max")
335      Store(0xabcd0000, i000)
336    }
337
338    CH03(ts, z169, 0x104, 0, 0)
339
340    mm00()
341
342    if (LNotEqual(i000, 0xabcd0000)) {
343        err(ts, z169, 0x002, 0, 0, i000, 0xabcd0000)
344    }
345
346    CH03(ts, z169, 0x105, 0, 0)
347}
348
349/*
350 * The same as mt02, but contains more depth of enclosed method calls.
351 * To be run on ACPICA only.
352 */
353Method(mt03,, Serialized)
354{
355    Name(ts, "mt03")
356
357    Name(i000, 0)
358
359    Method(mm00)
360    {
361      mm01()
362    }
363    Method(mm01)
364    {
365      mm02()
366    }
367    Method(mm02)
368    {
369      mm03()
370    }
371    Method(mm03)
372    {
373      mm04()
374    }
375    Method(mm04)
376    {
377      mm05()
378    }
379    Method(mm05)
380    {
381      mm06()
382    }
383    Method(mm06)
384    {
385      mm07()
386    }
387    Method(mm07)
388    {
389      mm08()
390    }
391    Method(mm08)
392    {
393      mm09()
394    }
395    Method(mm09)
396    {
397      mm0a()
398    }
399    Method(mm0a)
400    {
401      mm0b()
402    }
403    Method(mm0b)
404    {
405      mm0c()
406    }
407    Method(mm0c)
408    {
409      mm0d()
410    }
411    Method(mm0d)
412    {
413      mm0e()
414    }
415    Method(mm0e)
416    {
417      mm0f()
418    }
419    Method(mm0f)
420    {
421      mm10()
422    }
423    Method(mm10)
424    {
425      mm11()
426    }
427    Method(mm11)
428    {
429      mm12()
430    }
431    Method(mm12)
432    {
433      mm13()
434    }
435    Method(mm13)
436    {
437      mm14()
438    }
439    Method(mm14)
440    {
441      mm15()
442    }
443    Method(mm15)
444    {
445      mm16()
446    }
447    Method(mm16)
448    {
449      mm17()
450    }
451    Method(mm17)
452    {
453      mm18()
454    }
455    Method(mm18)
456    {
457      mm19()
458    }
459    Method(mm19)
460    {
461      mm1a()
462    }
463    Method(mm1a)
464    {
465      mm1b()
466    }
467    Method(mm1b)
468    {
469      mm1c()
470    }
471    Method(mm1c)
472    {
473      mm1d()
474    }
475    Method(mm1d)
476    {
477      mm1e()
478    }
479    Method(mm1e)
480    {
481      mm1f()
482    }
483    Method(mm1f)
484    {
485      OUTC("Max")
486      Store(0xabcd0000, i000)
487    }
488
489    CH03(ts, z169, 0x106, 0, 0)
490
491    mm00()
492
493    if (LNotEqual(i000, 0xabcd0000)) {
494        err(ts, z169, 0x003, 0, 0, i000, 0xabcd0000)
495    }
496
497    CH03(ts, z169, 0x107, 0, 0)
498}
499
500/*
501 * Increment object with the name of method in the name path
502 */
503Method(mt04,, Serialized)
504{
505    Name(ts, "mt04")
506
507    Device(dz05)
508    {
509        Name(iy07, 0xabcd0900)
510    }
511
512    Method(mm00)
513    {
514      Method(mm01)
515      {
516        Method(mm02)
517        {
518          Method(mm03)
519          {
520            Method(mm04)
521            {
522              Method(mm05)
523              {
524                Method(mm06)
525                {
526                  Method(mm07)
527                  {
528                    Increment(\_SB_.ABBU.mt04.dz05.iy07)
529                    Store (\_SB_.ABBU.mt04.dz05.iy07, Local0)
530                    OUTC("mt04,   \\_SB_.ABBU.mt04.dz05.iy07:")
531                    OUTC(Local0)
532                    if (LNotEqual(Local0, 0xabcd0909)) {
533                      err(ts, z169, 0x004, 0, 0, Local0, 0xabcd0909)
534                    }
535                    if (LNotEqual(\_SB_.ABBU.mt04.dz05.iy07, 0xabcd0909)) {
536                      err(ts, z169, 0x005, 0, 0, \_SB_.ABBU.mt04.dz05.iy07, 0xabcd0909)
537                    }
538                  }
539                  Increment(\_SB_.ABBU.mt04.dz05.iy07)
540                  mm07()
541                }
542                Increment(\_SB_.ABBU.mt04.dz05.iy07)
543                mm06()
544              }
545              Increment(\_SB_.ABBU.mt04.dz05.iy07)
546              mm05()
547            }
548            Increment(\_SB_.ABBU.mt04.dz05.iy07)
549            mm04()
550          }
551          Increment(\_SB_.ABBU.mt04.dz05.iy07)
552          mm03()
553        }
554        Increment(\_SB_.ABBU.mt04.dz05.iy07)
555        mm02()
556      }
557      Increment(\_SB_.ABBU.mt04.dz05.iy07)
558      mm01()
559    }
560
561    CH03(ts, z169, 0x006, 0, 0)
562
563    Increment(\_SB_.ABBU.mt04.dz05.iy07)
564    mm00()
565
566    if (LNotEqual(\_SB_.ABBU.mt04.dz05.iy07, 0xabcd0909)) {
567      err(ts, z169, 0x007, 0, 0, \_SB_.ABBU.mt04.dz05.iy07, 0xabcd0909)
568    }
569
570    CH03(ts, z169, 0x008, 0, 0)
571}
572
573/*
574 * The same as mt04, but contains more depth of enclosed method calls.
575 * To be run on ACPICA only.
576 */
577Method(mt05,, Serialized)
578{
579    Name(ts, "mt05")
580
581    Device(dz05)
582    {
583        Name(iy07, 0xabcd0900)
584    }
585    Method(mm00)
586    {
587      Method(mm01)
588      {
589        Method(mm02)
590        {
591          Method(mm03)
592          {
593            Method(mm04)
594            {
595              Method(mm05)
596              {
597                Method(mm06)
598                {
599                  Method(mm07)
600                  {
601                    Method(mm08)
602                    {
603                      Method(mm09)
604                      {
605                        Method(mm0a)
606                        {
607                          Method(mm0b)
608                          {
609                            Method(mm0c)
610                            {
611                              Method(mm0d)
612                              {
613                                Method(mm0e)
614                                {
615                                  Method(mm0f)
616                                  {
617                                    Method(mm10)
618                                    {
619                                      Method(mm11)
620                                      {
621                                        Method(mm12)
622                                        {
623                                          Method(mm13)
624                                          {
625                                            Method(mm14)
626                                            {
627                                              Method(mm15)
628                                              {
629                                                Method(mm16)
630                                                {
631                                                  Method(mm17)
632                                                  {
633                                                    Method(mm18)
634                                                    {
635                                                      Method(mm19)
636                                                      {
637                                                        Method(mm1a)
638                                                        {
639                                                          Method(mm1b)
640                                                          {
641                                                            Method(mm1c)
642                                                            {
643                                                              Method(mm1d)
644                                                              {
645                                                                Method(mm1e)
646                                                                {
647                                                                  Method(mm1f)
648                                                                  {
649                                                                    Increment(\_SB_.ABBU.mt05.dz05.iy07)
650                                                                    Store (\_SB_.ABBU.mt05.dz05.iy07, Local0)
651                                                                    OUTC("mt05,   \\_SB_.ABBU.mt05.dz05.iy07:")
652                                                                    OUTC(Local0)
653                                                                    if (LNotEqual(Local0, 0xabcd0921)) {
654                                                                        err(ts, z169, 0x009, 0, 0, Local0, 0xabcd0921)
655                                                                    }
656                                                                    if (LNotEqual(\_SB_.ABBU.mt05.dz05.iy07, 0xabcd0921)) {
657                                                                        err(ts, z169, 0x00a, 0, 0, \_SB_.ABBU.mt05.dz05.iy07, 0xabcd0921)
658                                                                    }
659                                                                  }
660                                                                  Increment(\_SB_.ABBU.mt05.dz05.iy07)
661                                                                  mm1f()
662                                                                }
663                                                                Increment(\_SB_.ABBU.mt05.dz05.iy07)
664                                                                mm1e()
665                                                              }
666                                                              Increment(\_SB_.ABBU.mt05.dz05.iy07)
667                                                              mm1d()
668                                                            }
669                                                            Increment(\_SB_.ABBU.mt05.dz05.iy07)
670                                                            mm1c()
671                                                          }
672                                                          Increment(\_SB_.ABBU.mt05.dz05.iy07)
673                                                          mm1b()
674                                                        }
675                                                        Increment(\_SB_.ABBU.mt05.dz05.iy07)
676                                                        mm1a()
677                                                      }
678                                                      Increment(\_SB_.ABBU.mt05.dz05.iy07)
679                                                      mm19()
680                                                    }
681                                                    Increment(\_SB_.ABBU.mt05.dz05.iy07)
682                                                    mm18()
683                                                  }
684                                                  Increment(\_SB_.ABBU.mt05.dz05.iy07)
685                                                  mm17()
686                                                }
687                                                Increment(\_SB_.ABBU.mt05.dz05.iy07)
688                                                mm16()
689                                              }
690                                              Increment(\_SB_.ABBU.mt05.dz05.iy07)
691                                              mm15()
692                                            }
693                                            Increment(\_SB_.ABBU.mt05.dz05.iy07)
694                                            mm14()
695                                          }
696                                          Increment(\_SB_.ABBU.mt05.dz05.iy07)
697                                          mm13()
698                                        }
699                                        Increment(\_SB_.ABBU.mt05.dz05.iy07)
700                                        mm12()
701                                      }
702                                      Increment(\_SB_.ABBU.mt05.dz05.iy07)
703                                      mm11()
704                                    }
705                                    Increment(\_SB_.ABBU.mt05.dz05.iy07)
706                                    mm10()
707                                  }
708                                  Increment(\_SB_.ABBU.mt05.dz05.iy07)
709                                  mm0f()
710                                }
711                                Increment(\_SB_.ABBU.mt05.dz05.iy07)
712                                mm0e()
713                              }
714                              Increment(\_SB_.ABBU.mt05.dz05.iy07)
715                              mm0d()
716                            }
717                            Increment(\_SB_.ABBU.mt05.dz05.iy07)
718                            mm0c()
719                          }
720                          Increment(\_SB_.ABBU.mt05.dz05.iy07)
721                          mm0b()
722                        }
723                        Increment(\_SB_.ABBU.mt05.dz05.iy07)
724                        mm0a()
725                      }
726                      Increment(\_SB_.ABBU.mt05.dz05.iy07)
727                      mm09()
728                    }
729                    Increment(\_SB_.ABBU.mt05.dz05.iy07)
730                    mm08()
731                  }
732                  Increment(\_SB_.ABBU.mt05.dz05.iy07)
733                  mm07()
734                }
735                Increment(\_SB_.ABBU.mt05.dz05.iy07)
736                mm06()
737              }
738              Increment(\_SB_.ABBU.mt05.dz05.iy07)
739              mm05()
740            }
741            Increment(\_SB_.ABBU.mt05.dz05.iy07)
742            mm04()
743          }
744          Increment(\_SB_.ABBU.mt05.dz05.iy07)
745          mm03()
746        }
747        Increment(\_SB_.ABBU.mt05.dz05.iy07)
748        mm02()
749      }
750      Increment(\_SB_.ABBU.mt05.dz05.iy07)
751      mm01()
752    }
753
754    CH03(ts, z169, 0x108, 0, 0)
755
756    Increment(\_SB_.ABBU.mt05.dz05.iy07)
757    mm00()
758
759    if (LNotEqual(\_SB_.ABBU.mt05.dz05.iy07, 0xabcd0909)) {
760        err(ts, z169, 0x00b, 0, 0, \_SB_.ABBU.mt05.dz05.iy07, 0xabcd0909)
761    }
762
763    CH03(ts, z169, 0x109, 0, 0)
764}
765
766/*
767 * Check access to the internal object of method being executed
768 * from the point inside the tree of that method being executed
769 * but by the method statically declared outside that method.
770 */
771Method(mt06,, Serialized)
772{
773    Name(ts, "mt06")
774
775    Device(dz05)
776    {
777        Name(iy07, 0xabcd0900)
778    }
779
780    Method(mm00)
781    {
782      Method(mm01)
783      {
784        Method(mm02)
785        {
786          Method(mm03)
787          {
788            Method(mm04)
789            {
790              Method(mm05)
791              {
792                Method(mm06)
793                {
794                  Method(mm07)
795                  {
796                    Method(mm08)
797                    {
798                      Method(mm09)
799                      {
800                        Method(mm0a)
801                        {
802                            Store (0x11112222, \_SB_.ABBU.mt06.dz05.iy07)
803                        }
804                        mm0a()
805                      }
806                      mm09()
807                    }
808                    mm08()
809                  }
810                  mm07()
811                }
812                mm06()
813              }
814              mm05()
815              Store (\_SB_.ABBU.mt06.dz05.iy07, Local0)
816              OUTC("mt06,   \\_SB_.ABBU.mt06.dz05.iy07:")
817              OUTC(Local0)
818              if (LNotEqual(Local0, 0x11112222)) {
819                  err(ts, z169, 0x00c, 0, 0, Local0, 0x11112222)
820              }
821              if (LNotEqual(\_SB_.ABBU.mt06.dz05.iy07, 0x11112222)) {
822                  err(ts, z169, 0x00d, 0, 0, \_SB_.ABBU.mt06.dz05.iy07, 0x11112222)
823              }
824            }
825            mm04()
826          }
827          mm03()
828        }
829        mm02()
830      }
831      mm01()
832    }
833
834    CH03(ts, z169, 0x10a, 0, 0)
835
836    mm00()
837
838    mt07() // succeeds here
839
840    if (LNotEqual(\_SB_.ABBU.mt06.dz05.iy07, 0x11112222)) {
841        err(ts, z169, 0x00e, 0, 0, \_SB_.ABBU.mt06.dz05.iy07, 0x11112222)
842    }
843
844    CH03(ts, z169, 0x10b, 0, 0)
845}
846
847/*
848 * Access to the internal object of method mt06
849 *
850 * Result differs depending on either mt06 is invoked or not.
851 * Unfortunately, we can run mt06 and mt07 simultaneously only
852 * on the same thread (invocation).
853 */
854Method(mt07,, Serialized)
855{
856    Name(ts, "mt07")
857
858    Method(mm00)
859    {
860      Method(mm01)
861      {
862        Method(mm02)
863        {
864          Method(mm03)
865          {
866            Method(mm04)
867            {
868              Method(mm05)
869              {
870                Method(mm06)
871                {
872                  Method(mm07)
873                  {
874                    Store (\_SB_.ABBU.mt06.dz05.iy07, Local0)
875                    OUTC("0 mt07,   \\_SB_.ABBU.mt06.dz05.iy07:")
876                    OUTC(Local0)
877                    if (LNotEqual(Local0, 0x11112222)) {
878                        err(ts, z169, 0x00f, 0, 0, Local0, 0x11112222)
879                    }
880                    if (LNotEqual(\_SB_.ABBU.mt06.dz05.iy07, 0x11112222)) {
881                        err(ts, z169, 0x010, 0, 0, \_SB_.ABBU.mt06.dz05.iy07, 0x11112222)
882                    }
883                  }
884                  mm07()
885                }
886                mm06()
887              }
888              mm05()
889            }
890            mm04()
891          }
892          mm03()
893        }
894        mm02()
895      }
896      mm01()
897    }
898
899    CH03(ts, z169, 0x10c, 0, 0)
900
901    mm00()
902
903    Store (\_SB_.ABBU.mt06.dz05.iy07, Local0)
904    OUTC("1 mt07,   \\_SB_.ABBU.mt06.dz05.iy07:")
905    OUTC(Local0)
906    if (LNotEqual(Local0, 0x11112222)) {
907        err(ts, z169, 0x011, 0, 0, Local0, 0x11112222)
908    }
909    if (LNotEqual(\_SB_.ABBU.mt06.dz05.iy07, 0x11112222)) {
910        err(ts, z169, 0x012, 0, 0, \_SB_.ABBU.mt06.dz05.iy07, 0x11112222)
911    }
912
913    CH03(ts, z169, 0x10d, 0, 0)
914}
915
916/*
917 * The same as mt06, but contains more depth of enclosed method calls.
918 * To be run on ACPICA only.
919 */
920Method(mt08,, Serialized)
921{
922    Name(ts, "mt08")
923
924    Device(dz05)
925    {
926        Name(iy07, 0xabcd0900)
927    }
928
929    Method(mm00)
930    {
931      Method(mm01)
932      {
933        Method(mm02)
934        {
935          Method(mm03)
936          {
937            Method(mm04)
938            {
939              Method(mm05)
940              {
941                Method(mm06)
942                {
943                  Method(mm07)
944                  {
945                    Method(mm08)
946                    {
947                      Method(mm09)
948                      {
949                        Method(mm0a)
950                        {
951                          Method(mm0b)
952                          {
953                            Method(mm0c)
954                            {
955                              Method(mm0d)
956                              {
957                                Method(mm0e)
958                                {
959                                  Method(mm0f)
960                                  {
961                                    Store (0x22223333, \_SB_.ABBU.mt08.dz05.iy07)
962                                  }
963                                  mm0f()
964                                }
965                                mm0e()
966                              }
967                              mm0d()
968                            }
969                            mm0c()
970                          }
971                          mm0b()
972                        }
973                        mm0a()
974                      }
975                      mm09()
976                    }
977                    mm08()
978                    Store (\_SB_.ABBU.mt08.dz05.iy07, Local0)
979                    OUTC("mt08,   \\_SB_.ABBU.mt08.dz05.iy07:")
980                    OUTC(Local0)
981                    if (LNotEqual(Local0, 0x22223333)) {
982                        err(ts, z169, 0x013, 0, 0, Local0, 0x22223333)
983                    }
984                    if (LNotEqual(\_SB_.ABBU.mt08.dz05.iy07, 0x22223333)) {
985                        err(ts, z169, 0x014, 0, 0, \_SB_.ABBU.mt08.dz05.iy07, 0x22223333)
986                    }
987                  }
988                  mm07()
989                }
990                mm06()
991              }
992              mm05()
993            }
994            mm04()
995          }
996          mm03()
997        }
998        mm02()
999      }
1000      mm01()
1001    }
1002
1003    CH03(ts, z169, 0x10e, 0, 0)
1004
1005    mm00()
1006
1007    mt09() // succeeds here
1008
1009    if (LNotEqual(\_SB_.ABBU.mt08.dz05.iy07, 0x22223333)) {
1010        err(ts, z169, 0x015, 0, 0, \_SB_.ABBU.mt08.dz05.iy07, 0x22223333)
1011    }
1012
1013    CH03(ts, z169, 0x10f, 0, 0)
1014}
1015
1016/*
1017 * Access to the internal object of method mt08
1018 *
1019 * see comment to mt07
1020 */
1021Method(mt09,, Serialized)
1022{
1023    Name(ts, "mt09")
1024
1025    Method(mm00)
1026    {
1027      Method(mm01)
1028      {
1029        Method(mm02)
1030        {
1031          Method(mm03)
1032          {
1033            Method(mm04)
1034            {
1035              Method(mm05)
1036              {
1037                Method(mm06)
1038                {
1039                  Method(mm07)
1040                  {
1041                    Method(mm08)
1042                    {
1043                      Method(mm09)
1044                      {
1045                        Method(mm0a)
1046                        {
1047                          Method(mm0b)
1048                          {
1049                            Method(mm0c)
1050                            {
1051                              Method(mm0d)
1052                              {
1053                                Method(mm0e)
1054                                {
1055                                  Method(mm0f)
1056                                  {
1057                                    Store (\_SB_.ABBU.mt08.dz05.iy07, Local0)
1058                                    OUTC("0 mt09,   \\_SB_.ABBU.mt08.dz05.iy07:")
1059                                    OUTC(Local0)
1060                                    if (LNotEqual(Local0, 0x22223333)) {
1061                                        err(ts, z169, 0x016, 0, 0, Local0, 0x22223333)
1062                                    }
1063                                    if (LNotEqual(\_SB_.ABBU.mt08.dz05.iy07, 0x22223333)) {
1064                                        err(ts, z169, 0x017, 0, 0, \_SB_.ABBU.mt08.dz05.iy07, 0x22223333)
1065                                    }
1066                                  }
1067                                  mm0f()
1068                                }
1069                                mm0e()
1070                              }
1071                              mm0d()
1072                            }
1073                            mm0c()
1074                          }
1075                          mm0b()
1076                        }
1077                        mm0a()
1078                      }
1079                      mm09()
1080                    }
1081                    mm08()
1082                  }
1083                  mm07()
1084                }
1085                mm06()
1086              }
1087              mm05()
1088            }
1089            mm04()
1090          }
1091          mm03()
1092        }
1093        mm02()
1094      }
1095      mm01()
1096    }
1097
1098    CH03(ts, z169, 0x110, 0, 0)
1099
1100    mm00()
1101
1102    Store (\_SB_.ABBU.mt08.dz05.iy07, Local0)
1103    OUTC("1 mt09,   \\_SB_.ABBU.mt08.dz05.iy07:")
1104    OUTC(Local0)
1105    if (LNotEqual(Local0, 0x22223333)) {
1106        err(ts, z169, 0x018, 0, 0, Local0, 0x22223333)
1107    }
1108    if (LNotEqual(\_SB_.ABBU.mt08.dz05.iy07, 0x22223333)) {
1109        err(ts, z169, 0x019, 0, 0, \_SB_.ABBU.mt08.dz05.iy07, 0x22223333)
1110    }
1111
1112    CH03(ts, z169, 0x111, 0, 0)
1113}
1114
1115/*
1116 * Check simple access to the object by the name path
1117 * without method name syllables
1118 */
1119Method(mt0a,, Serialized)
1120{
1121    Name(ts, "mt0a")
1122
1123    CH03(ts, z169, 0x112, 0, 0)
1124
1125    Store (\_SB_.ABBU.pr7d.iy07, Local0)
1126    OUTC("mt0a,   \\_SB_.ABBU.pr7d.iy07:")
1127    OUTC(Local0)
1128    if (LNotEqual(\_SB_.ABBU.pr7d.iy07, 0xabcd0120)) {
1129        err(ts, z169, 0x01a, 0, 0, \_SB_.ABBU.pr7d.iy07, 0xabcd0120)
1130    }
1131
1132    CH03(ts, z169, 0x113, 0, 0)
1133}
1134
1135/*
1136 * Simple increment (see comment to mt0a)
1137 */
1138Method(mt0b,, Serialized)
1139{
1140    Name(ts, "mt0b")
1141
1142    CH03(ts, z169, 0x114, 0, 0)
1143
1144    Increment(\_SB_.ABBU.pr7d.iy07)
1145    Store (\_SB_.ABBU.pr7d.iy07, Local0)
1146    OUTC("mt0b,   \\_SB_.ABBU.pr7d.iy07:")
1147    OUTC(Local0)
1148
1149    if (LNotEqual(\_SB_.ABBU.pr7d.iy07, 0xabcd0121)) {
1150        err(ts, z169, 0x01b, 0, 0, \_SB_.ABBU.pr7d.iy07, 0xabcd0121)
1151    }
1152
1153    CH03(ts, z169, 0x115, 0, 0)
1154}
1155
1156/*
1157 * Check simple access to the object by the name path
1158 * which contains the method name syllables
1159 */
1160Method(mt0c,, Serialized)
1161{
1162    Name(ts, "mt0c")
1163
1164    Processor(pr7d, 0, 0x000, 0x008)
1165    {
1166        Name(iy07, 0xabcd0660)
1167    }
1168
1169    CH03(ts, z169, 0x01c, 0, 0)
1170
1171    Increment(\_SB_.ABBU.mt0c.pr7d.iy07)
1172    Store (\_SB_.ABBU.mt0c.pr7d.iy07, Local0)
1173    OUTC("mt0c,   \\_SB_.ABBU.mt0c.pr7d.iy07:")
1174    OUTC(Local0)
1175
1176    if (LNotEqual(\_SB_.ABBU.mt0c.pr7d.iy07, 0xabcd0661)) {
1177        err(ts, z169, 0x01d, 0, 0, \_SB_.ABBU.mt0c.pr7d.iy07, 0xabcd0661)
1178    }
1179
1180    CH03(ts, z169, 0x01e, 0, 0)
1181}
1182
1183/*
1184 * Simply long cycle in While
1185 */
1186Method(mt0d,, Serialized)
1187{
1188	Name(ts, "mt0d")
1189
1190	Name(i000, 0xabcd1234)
1191
1192	CH03(ts, z169, 0x116, 0, 0)
1193
1194	Store(0, Local0)
1195	While (1) {
1196		Increment(Local0)
1197//		if (LEqual(Local0, 0x40000)) {
1198		if (LEqual(Local0, 100)) {
1199			// Break -- doesn't work on MS
1200			OUTC("mt0d,   Local0:")
1201			OUTC(Local0)
1202
1203			mt0e()
1204
1205			CH03(ts, z169, 0x117, 0, 0)
1206
1207			Return
1208		}
1209	}
1210
1211	CH03(ts, z169, 0x118, 0, 0)
1212}
1213
1214/*
1215 * Access to the internal object of method mt0d
1216 */
1217Method(mt0e,, Serialized)
1218{
1219    Name(ts, "mt0e")
1220
1221    CH03(ts, z169, 0x119, 0, 0)
1222
1223    Store (\_SB_.ABBU.mt0d.i000, Local0)
1224    OUTC("mt0e,   \\_SB_.ABBU.mt0d.i000:")
1225    OUTC(Local0)
1226
1227    if (LNotEqual(\_SB_.ABBU.mt0d.i000, 0xabcd1234)) {
1228        err(ts, z169, 0x01f, 0, 0, \_SB_.ABBU.mt0d.i000, 0xabcd1234)
1229    }
1230
1231    CH03(ts, z169, 0x11a, 0, 0)
1232}
1233
1234/*
1235 * Use Add for incrementing object with the
1236 * name of method in the name path.
1237 */
1238Method(mt0f,, Serialized)
1239{
1240    Name(ts, "mt0f")
1241
1242    Device(dz05)
1243    {
1244        Name(iy07, 0xabcd0900)
1245    }
1246
1247    Method(mm00)
1248    {
1249      Method(mm01)
1250      {
1251        Method(mm02)
1252        {
1253          Method(mm03)
1254          {
1255            Method(mm04)
1256            {
1257              Method(mm05)
1258              {
1259                Method(mm06)
1260                {
1261                  Method(mm07)
1262                  {
1263                    Add(\_SB_.ABBU.mt0f.dz05.iy07, 1, \_SB_.ABBU.mt0f.dz05.iy07)
1264                    Store (\_SB_.ABBU.mt0f.dz05.iy07, Local0)
1265                    OUTC("mt0f,   \\_SB_.ABBU.mt0f.dz05.iy07:")
1266                    OUTC(Local0)
1267                    if (LNotEqual(Local0, 0xabcd0909)) {
1268                      err(ts, z169, 0x020, 0, 0, Local0, 0xabcd0909)
1269                    }
1270                    if (LNotEqual(\_SB_.ABBU.mt0f.dz05.iy07, 0xabcd0909)) {
1271                      err(ts, z169, 0x021, 0, 0, \_SB_.ABBU.mt0f.dz05.iy07, 0xabcd0909)
1272                    }
1273                  }
1274                  Add(\_SB_.ABBU.mt0f.dz05.iy07, 1, \_SB_.ABBU.mt0f.dz05.iy07)
1275                  mm07()
1276                }
1277                Add(\_SB_.ABBU.mt0f.dz05.iy07, 1, \_SB_.ABBU.mt0f.dz05.iy07)
1278                mm06()
1279              }
1280              Add(\_SB_.ABBU.mt0f.dz05.iy07, 1, \_SB_.ABBU.mt0f.dz05.iy07)
1281              mm05()
1282            }
1283            Add(\_SB_.ABBU.mt0f.dz05.iy07, 1, \_SB_.ABBU.mt0f.dz05.iy07)
1284            mm04()
1285          }
1286          Add(\_SB_.ABBU.mt0f.dz05.iy07, 1, \_SB_.ABBU.mt0f.dz05.iy07)
1287          mm03()
1288        }
1289        Add(\_SB_.ABBU.mt0f.dz05.iy07, 1, \_SB_.ABBU.mt0f.dz05.iy07)
1290        mm02()
1291      }
1292      Add(\_SB_.ABBU.mt0f.dz05.iy07, 1, \_SB_.ABBU.mt0f.dz05.iy07)
1293      mm01()
1294    }
1295
1296    CH03(ts, z169, 0x022, 0, 0)
1297
1298    Add(\_SB_.ABBU.mt0f.dz05.iy07, 1, \_SB_.ABBU.mt0f.dz05.iy07)
1299    mm00()
1300
1301    if (LNotEqual(\_SB_.ABBU.mt0f.dz05.iy07, 0xabcd0909)) {
1302      err(ts, z169, 0x023, 0, 0, \_SB_.ABBU.mt0f.dz05.iy07, 0xabcd0909)
1303    }
1304
1305    CH03(ts, z169, 0x024, 0, 0)
1306}
1307
1308/*
1309 * The same as mt0f, but contains more depth of enclosed method calls.
1310 * To be run on ACPICA only.
1311 */
1312Method(mt10,, Serialized)
1313{
1314    Name(ts, "mt10")
1315
1316    Device(dz05)
1317    {
1318        Name(iy07, 0xabcd0900)
1319    }
1320    Method(mm00)
1321    {
1322      Method(mm01)
1323      {
1324        Method(mm02)
1325        {
1326          Method(mm03)
1327          {
1328            Method(mm04)
1329            {
1330              Method(mm05)
1331              {
1332                Method(mm06)
1333                {
1334                  Method(mm07)
1335                  {
1336                    Method(mm08)
1337                    {
1338                      Method(mm09)
1339                      {
1340                        Method(mm0a)
1341                        {
1342                          Method(mm0b)
1343                          {
1344                            Method(mm0c)
1345                            {
1346                              Method(mm0d)
1347                              {
1348                                Method(mm0e)
1349                                {
1350                                  Method(mm0f)
1351                                  {
1352                                    Add(\_SB_.ABBU.mt10.dz05.iy07, 1, \_SB_.ABBU.mt10.dz05.iy07)
1353                                    Store (\_SB_.ABBU.mt10.dz05.iy07, Local0)
1354                                    OUTC("mt10,   \\_SB_.ABBU.mt10.dz05.iy07:")
1355                                    OUTC(Local0)
1356                                    if (LNotEqual(Local0, 0xabcd0909)) {
1357                                        err(ts, z169, 0x025, 0, 0, Local0, 0xabcd0909)
1358                                    }
1359                                    if (LNotEqual(\_SB_.ABBU.mt10.dz05.iy07, 0xabcd0909)) {
1360                                        err(ts, z169, 0x026, 0, 0, \_SB_.ABBU.mt10.dz05.iy07, 0xabcd0909)
1361                                    }
1362                                  }
1363                                  Add(\_SB_.ABBU.mt10.dz05.iy07, 1, \_SB_.ABBU.mt10.dz05.iy07)
1364                                  mm0f()
1365                                }
1366                                Add(\_SB_.ABBU.mt10.dz05.iy07, 1, \_SB_.ABBU.mt10.dz05.iy07)
1367                                mm0e()
1368                              }
1369                              Add(\_SB_.ABBU.mt10.dz05.iy07, 1, \_SB_.ABBU.mt10.dz05.iy07)
1370                              mm0d()
1371                            }
1372                            Add(\_SB_.ABBU.mt10.dz05.iy07, 1, \_SB_.ABBU.mt10.dz05.iy07)
1373                            mm0c()
1374                          }
1375                          Add(\_SB_.ABBU.mt10.dz05.iy07, 1, \_SB_.ABBU.mt10.dz05.iy07)
1376                          mm0b()
1377                        }
1378                        Add(\_SB_.ABBU.mt10.dz05.iy07, 1, \_SB_.ABBU.mt10.dz05.iy07)
1379                        mm0a()
1380                      }
1381                      Add(\_SB_.ABBU.mt10.dz05.iy07, 1, \_SB_.ABBU.mt10.dz05.iy07)
1382                      mm09()
1383                    }
1384                    Add(\_SB_.ABBU.mt10.dz05.iy07, 1, \_SB_.ABBU.mt10.dz05.iy07)
1385                    mm08()
1386                  }
1387                  Add(\_SB_.ABBU.mt10.dz05.iy07, 1, \_SB_.ABBU.mt10.dz05.iy07)
1388                  mm07()
1389                }
1390                Add(\_SB_.ABBU.mt10.dz05.iy07, 1, \_SB_.ABBU.mt10.dz05.iy07)
1391                mm06()
1392              }
1393              Add(\_SB_.ABBU.mt10.dz05.iy07, 1, \_SB_.ABBU.mt10.dz05.iy07)
1394              mm05()
1395            }
1396            Add(\_SB_.ABBU.mt10.dz05.iy07, 1, \_SB_.ABBU.mt10.dz05.iy07)
1397            mm04()
1398          }
1399          Add(\_SB_.ABBU.mt10.dz05.iy07, 1, \_SB_.ABBU.mt10.dz05.iy07)
1400          mm03()
1401        }
1402        Add(\_SB_.ABBU.mt10.dz05.iy07, 1, \_SB_.ABBU.mt10.dz05.iy07)
1403        mm02()
1404      }
1405      Add(\_SB_.ABBU.mt10.dz05.iy07, 1, \_SB_.ABBU.mt10.dz05.iy07)
1406      mm01()
1407    }
1408
1409    CH03(ts, z169, 0x027, 0, 0)
1410
1411    Add(\_SB_.ABBU.mt10.dz05.iy07, 1, \_SB_.ABBU.mt10.dz05.iy07)
1412    mm00()
1413
1414    if (LNotEqual(\_SB_.ABBU.mt10.dz05.iy07, 0xabcd0909)) {
1415        err(ts, z169, 0x028, 0, 0, \_SB_.ABBU.mt10.dz05.iy07, 0xabcd0909)
1416    }
1417
1418    CH03(ts, z169, 0x029, 0, 0)
1419}
1420
1421/*
1422 * Increment with the parent name paths
1423 */
1424Method(mt11,, Serialized)
1425{
1426    Name(ts, "mt11")
1427
1428    Device(dz05)
1429    {
1430        Name(iy07, 0xabcd0900)
1431    }
1432
1433    Method(mm00)
1434    {
1435      Method(mm01)
1436      {
1437        Method(mm02)
1438        {
1439          Method(mm03)
1440          {
1441            Method(mm04)
1442            {
1443              Method(mm05)
1444              {
1445                Method(mm06)
1446                {
1447                  Method(mm07)
1448                  {
1449                    Increment(^^^^^^^^dz05.iy07)
1450                    Store (^^^^^^^^dz05.iy07, Local0)
1451                    OUTC("mt11,   ^^^^^^^^dz05.iy07:")
1452                    OUTC(Local0)
1453                    if (LNotEqual(Local0, 0xabcd0909)) {
1454                      err(ts, z169, 0x02a, 0, 0, Local0, 0xabcd0909)
1455                    }
1456                    if (LNotEqual(^^^^^^^^dz05.iy07, 0xabcd0909)) {
1457                      err(ts, z169, 0x02b, 0, 0, ^^^^^^^^dz05.iy07, 0xabcd0909)
1458                    }
1459                  }
1460                  Increment(^^^^^^^dz05.iy07)
1461                  mm07()
1462                }
1463                Increment(^^^^^^dz05.iy07)
1464                mm06()
1465              }
1466              Increment(^^^^^dz05.iy07)
1467              mm05()
1468            }
1469            Increment(^^^^dz05.iy07)
1470            mm04()
1471          }
1472          Increment(^^^dz05.iy07)
1473          mm03()
1474        }
1475        Increment(^^dz05.iy07)
1476        mm02()
1477      }
1478      Increment(^dz05.iy07)
1479      mm01()
1480    }
1481
1482    CH03(ts, z169, 0x02c, 0, 0)
1483
1484    Increment(dz05.iy07)
1485    mm00()
1486
1487    if (LNotEqual(dz05.iy07, 0xabcd0909)) {
1488      err(ts, z169, 0x02d, 0, 0, dz05.iy07, 0xabcd0909)
1489    }
1490
1491    CH03(ts, z169, 0x02e, 0, 0)
1492}
1493
1494/*
1495 * The same as mt11, but contains more depth of enclosed method calls.
1496 * To be run on ACPICA only.
1497 */
1498Method(mt12,, Serialized)
1499{
1500    Name(ts, "mt12")
1501
1502    Device(dz05)
1503    {
1504        Name(iy07, 0xabcd0900)
1505    }
1506    Method(mm00)
1507    {
1508      Method(mm01)
1509      {
1510        Method(mm02)
1511        {
1512          Method(mm03)
1513          {
1514            Method(mm04)
1515            {
1516              Method(mm05)
1517              {
1518                Method(mm06)
1519                {
1520                  Method(mm07)
1521                  {
1522                    Method(mm08)
1523                    {
1524                      Method(mm09)
1525                      {
1526                        Method(mm0a)
1527                        {
1528                          Method(mm0b)
1529                          {
1530                            Method(mm0c)
1531                            {
1532                              Method(mm0d)
1533                              {
1534                                Method(mm0e)
1535                                {
1536                                  Method(mm0f)
1537                                  {
1538                                    Method(mm10)
1539                                    {
1540                                      Method(mm11)
1541                                      {
1542                                        Method(mm12)
1543                                        {
1544                                          Method(mm13)
1545                                          {
1546                                            Method(mm14)
1547                                            {
1548                                              Method(mm15)
1549                                              {
1550                                                Method(mm16)
1551                                                {
1552                                                  Method(mm17)
1553                                                  {
1554                                                    Method(mm18)
1555                                                    {
1556                                                      Method(mm19)
1557                                                      {
1558                                                        Method(mm1a)
1559                                                        {
1560                                                          Method(mm1b)
1561                                                          {
1562                                                            Method(mm1c)
1563                                                            {
1564                                                              Method(mm1d)
1565                                                              {
1566                                                                Method(mm1e)
1567                                                                {
1568                                                                  Method(mm1f)
1569                                                                  {
1570                                                                    Increment(^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^dz05.iy07)
1571                                                                    Store (^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^dz05.iy07, Local0)
1572                                                                    OUTC("mt12,   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^dz05.iy07:")
1573                                                                    OUTC(Local0)
1574                                                                    if (LNotEqual(Local0, 0xabcd0921)) {
1575                                                                        err(ts, z169, 0x02f, 0, 0, Local0, 0xabcd0921)
1576                                                                    }
1577                                                                    if (LNotEqual(^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^dz05.iy07, 0xabcd0921)) {
1578                                                                        err(ts, z169, 0x030, 0, 0, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^dz05.iy07, 0xabcd0921)
1579                                                                    }
1580                                                                  }
1581                                                                  Increment(^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^dz05.iy07)
1582                                                                  mm1f()
1583                                                                }
1584                                                                Increment(^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^dz05.iy07)
1585                                                                mm1e()
1586                                                              }
1587                                                              Increment(^^^^^^^^^^^^^^^^^^^^^^^^^^^^^dz05.iy07)
1588                                                              mm1d()
1589                                                            }
1590                                                            Increment(^^^^^^^^^^^^^^^^^^^^^^^^^^^^dz05.iy07)
1591                                                            mm1c()
1592                                                          }
1593                                                          Increment(^^^^^^^^^^^^^^^^^^^^^^^^^^^dz05.iy07)
1594                                                          mm1b()
1595                                                        }
1596                                                        Increment(^^^^^^^^^^^^^^^^^^^^^^^^^^dz05.iy07)
1597                                                        mm1a()
1598                                                      }
1599                                                      Increment(^^^^^^^^^^^^^^^^^^^^^^^^^dz05.iy07)
1600                                                      mm19()
1601                                                    }
1602                                                    Increment(^^^^^^^^^^^^^^^^^^^^^^^^dz05.iy07)
1603                                                    mm18()
1604                                                  }
1605                                                  Increment(^^^^^^^^^^^^^^^^^^^^^^^dz05.iy07)
1606                                                  mm17()
1607                                                }
1608                                                Increment(^^^^^^^^^^^^^^^^^^^^^^dz05.iy07)
1609                                                mm16()
1610                                              }
1611                                              Increment(^^^^^^^^^^^^^^^^^^^^^dz05.iy07)
1612                                              mm15()
1613                                            }
1614                                            Increment(^^^^^^^^^^^^^^^^^^^^dz05.iy07)
1615                                            mm14()
1616                                          }
1617                                          Increment(^^^^^^^^^^^^^^^^^^^dz05.iy07)
1618                                          mm13()
1619                                        }
1620                                        Increment(^^^^^^^^^^^^^^^^^^dz05.iy07)
1621                                        mm12()
1622                                      }
1623                                      Increment(^^^^^^^^^^^^^^^^^dz05.iy07)
1624                                      mm11()
1625                                    }
1626                                    Increment(^^^^^^^^^^^^^^^^dz05.iy07)
1627                                    mm10()
1628                                  }
1629                                  Increment(^^^^^^^^^^^^^^^dz05.iy07)
1630                                  mm0f()
1631                                }
1632                                Increment(^^^^^^^^^^^^^^dz05.iy07)
1633                                mm0e()
1634                              }
1635                              Increment(^^^^^^^^^^^^^dz05.iy07)
1636                              mm0d()
1637                            }
1638                            Increment(^^^^^^^^^^^^dz05.iy07)
1639                            mm0c()
1640                          }
1641                          Increment(^^^^^^^^^^^dz05.iy07)
1642                          mm0b()
1643                        }
1644                        Increment(^^^^^^^^^^dz05.iy07)
1645                        mm0a()
1646                      }
1647                      Increment(^^^^^^^^^dz05.iy07)
1648                      mm09()
1649                    }
1650                    Increment(^^^^^^^^dz05.iy07)
1651                    mm08()
1652                  }
1653                  Increment(^^^^^^^dz05.iy07)
1654                  mm07()
1655                }
1656                Increment(^^^^^^dz05.iy07)
1657                mm06()
1658              }
1659              Increment(^^^^^dz05.iy07)
1660              mm05()
1661            }
1662            Increment(^^^^dz05.iy07)
1663            mm04()
1664          }
1665          Increment(^^^dz05.iy07)
1666          mm03()
1667        }
1668        Increment(^^dz05.iy07)
1669        mm02()
1670      }
1671      Increment(^dz05.iy07)
1672      mm01()
1673    }
1674
1675    CH03(ts, z169, 0x11b, 0, 0)
1676
1677    Increment(dz05.iy07)
1678    mm00()
1679
1680    if (LNotEqual(dz05.iy07, 0xabcd0909)) {
1681        err(ts, z169, 0x031, 0, 0, dz05.iy07, 0xabcd0909)
1682    }
1683
1684    CH03(ts, z169, 0x11c, 0, 0)
1685}
1686
1687/*
1688 * Simple Store of object with the name of method in the name path
1689 */
1690Method(mt13,, Serialized)
1691{
1692    Name(ts, "mt13")
1693
1694    Device(dz05)
1695    {
1696        Name(iy07, 0xabcd0500)
1697    }
1698
1699    Method(mm00)
1700    {
1701      Method(mm01)
1702      {
1703        Method(mm02)
1704        {
1705          Method(mm03)
1706          {
1707            Method(mm04)
1708            {
1709              Method(mm05)
1710              {
1711                Method(mm06)
1712                {
1713                  Store (\_SB_.ABBU.mt13.dz05.iy07, Local0)
1714                  OUTC("mt13,   \\_SB_.ABBU.mt13.dz05.iy07:")
1715                  OUTC(Local0)
1716                  if (LNotEqual(Local0, 0xabcd0500)) {
1717                      err(ts, z169, 0x032, 0, 0, Local0, 0xabcd0500)
1718                  }
1719                  if (LNotEqual(\_SB_.ABBU.mt13.dz05.iy07, 0xabcd0500)) {
1720                      err(ts, z169, 0x033, 0, 0, \_SB_.ABBU.mt13.dz05.iy07, 0xabcd0500)
1721                  }
1722                }
1723                Store (\_SB_.ABBU.mt13.dz05.iy07, Local0)
1724                mm06()
1725                if (LNotEqual(\_SB_.ABBU.mt13.dz05.iy07, 0xabcd0500)) {
1726                    err(ts, z169, 0x034, 0, 0, \_SB_.ABBU.mt13.dz05.iy07, 0xabcd0500)
1727                }
1728              }
1729              Store (\_SB_.ABBU.mt13.dz05.iy07, Local0)
1730              mm05()
1731              if (LNotEqual(\_SB_.ABBU.mt13.dz05.iy07, 0xabcd0500)) {
1732                  err(ts, z169, 0x035, 0, 0, \_SB_.ABBU.mt13.dz05.iy07, 0xabcd0500)
1733              }
1734            }
1735            Store (\_SB_.ABBU.mt13.dz05.iy07, Local0)
1736            mm04()
1737            if (LNotEqual(\_SB_.ABBU.mt13.dz05.iy07, 0xabcd0500)) {
1738                err(ts, z169, 0x036, 0, 0, \_SB_.ABBU.mt13.dz05.iy07, 0xabcd0500)
1739            }
1740          }
1741          Store (\_SB_.ABBU.mt13.dz05.iy07, Local0)
1742          mm03()
1743          if (LNotEqual(\_SB_.ABBU.mt13.dz05.iy07, 0xabcd0500)) {
1744              err(ts, z169, 0x037, 0, 0, \_SB_.ABBU.mt13.dz05.iy07, 0xabcd0500)
1745          }
1746        }
1747        Store (\_SB_.ABBU.mt13.dz05.iy07, Local0)
1748        mm02()
1749        if (LNotEqual(\_SB_.ABBU.mt13.dz05.iy07, 0xabcd0500)) {
1750            err(ts, z169, 0x038, 0, 0, \_SB_.ABBU.mt13.dz05.iy07, 0xabcd0500)
1751        }
1752      }
1753      Store (\_SB_.ABBU.mt13.dz05.iy07, Local0)
1754      mm01()
1755      if (LNotEqual(\_SB_.ABBU.mt13.dz05.iy07, 0xabcd0500)) {
1756          err(ts, z169, 0x039, 0, 0, \_SB_.ABBU.mt13.dz05.iy07, 0xabcd0500)
1757      }
1758    }
1759
1760    CH03(ts, z169, 0x03a, 0, 0)
1761
1762    Store (\_SB_.ABBU.mt13.dz05.iy07, Local0)
1763    mm00()
1764
1765    if (LNotEqual(\_SB_.ABBU.mt13.dz05.iy07, 0xabcd0500)) {
1766      err(ts, z169, 0x03b, 0, 0, \_SB_.ABBU.mt13.dz05.iy07, 0xabcd0500)
1767    }
1768
1769    CH03(ts, z169, 0x03c, 0, 0)
1770}
1771
1772/*
1773 * The same as mt13, but contains more depth of enclosed method calls.
1774 * To be run on ACPICA only.
1775 */
1776Method(mt14,, Serialized)
1777{
1778    Name(ts, "mt14")
1779
1780    Device(dz05)
1781    {
1782        Name(iy07, 0xabcd2900)
1783    }
1784    Method(mm00)
1785    {
1786      Method(mm01)
1787      {
1788        Method(mm02)
1789        {
1790          Method(mm03)
1791          {
1792            Method(mm04)
1793            {
1794              Method(mm05)
1795              {
1796                Method(mm06)
1797                {
1798                  Method(mm07)
1799                  {
1800                    Method(mm08)
1801                    {
1802                      Method(mm09)
1803                      {
1804                        Method(mm0a)
1805                        {
1806                          Method(mm0b)
1807                          {
1808                            Method(mm0c)
1809                            {
1810                              Method(mm0d)
1811                              {
1812                                Method(mm0e)
1813                                {
1814                                  Method(mm0f)
1815                                  {
1816                                    Method(mm10)
1817                                    {
1818                                      Method(mm11)
1819                                      {
1820                                        Method(mm12)
1821                                        {
1822                                          Method(mm13)
1823                                          {
1824                                            Method(mm14)
1825                                            {
1826                                              Method(mm15)
1827                                              {
1828                                                Method(mm16)
1829                                                {
1830                                                  Method(mm17)
1831                                                  {
1832                                                    Method(mm18)
1833                                                    {
1834                                                      Method(mm19)
1835                                                      {
1836                                                        Method(mm1a)
1837                                                        {
1838                                                          Method(mm1b)
1839                                                          {
1840                                                            Method(mm1c)
1841                                                            {
1842                                                              Method(mm1d)
1843                                                              {
1844                                                                Method(mm1e)
1845                                                                {
1846                                                                  Method(mm1f)
1847                                                                  {
1848                                                                    Store (\_SB_.ABBU.mt14.dz05.iy07, Local0)
1849                                                                    OUTC("mt14,   \\_SB_.ABBU.mt14.dz05.iy07:")
1850                                                                    OUTC(Local0)
1851                                                                    if (LNotEqual(Local0, 0xabcd2900)) {
1852                                                                        err(ts, z169, 0x03d, 0, 0, Local0, 0xabcd2900)
1853                                                                    }
1854                                                                    if (LNotEqual(\_SB_.ABBU.mt14.dz05.iy07, 0xabcd2900)) {
1855                                                                        err(ts, z169, 0x03e, 0, 0, \_SB_.ABBU.mt14.dz05.iy07, 0xabcd2900)
1856                                                                    }
1857                                                                  }
1858                                                                  Store (\_SB_.ABBU.mt14.dz05.iy07, Local0)
1859                                                                  mm1f()
1860                                                                  if (LNotEqual(Local0, 0xabcd2900)) {
1861                                                                      err(ts, z169, 0x03f, 0, 0, Local0, 0xabcd2900)
1862                                                                  }
1863                                                                  if (LNotEqual(\_SB_.ABBU.mt14.dz05.iy07, 0xabcd2900)) {
1864                                                                      err(ts, z169, 0x040, 0, 0, \_SB_.ABBU.mt14.dz05.iy07, 0xabcd2900)
1865                                                                  }
1866                                                                }
1867                                                                Store (\_SB_.ABBU.mt14.dz05.iy07, Local0)
1868                                                                mm1e()
1869                                                                if (LNotEqual(Local0, 0xabcd2900)) {
1870                                                                    err(ts, z169, 0x041, 0, 0, Local0, 0xabcd2900)
1871                                                                }
1872                                                                if (LNotEqual(\_SB_.ABBU.mt14.dz05.iy07, 0xabcd2900)) {
1873                                                                    err(ts, z169, 0x042, 0, 0, \_SB_.ABBU.mt14.dz05.iy07, 0xabcd2900)
1874                                                                }
1875                                                              }
1876                                                              Store (\_SB_.ABBU.mt14.dz05.iy07, Local0)
1877                                                              mm1d()
1878                                                              if (LNotEqual(Local0, 0xabcd2900)) {
1879                                                                  err(ts, z169, 0x043, 0, 0, Local0, 0xabcd2900)
1880                                                              }
1881                                                              if (LNotEqual(\_SB_.ABBU.mt14.dz05.iy07, 0xabcd2900)) {
1882                                                                  err(ts, z169, 0x044, 0, 0, \_SB_.ABBU.mt14.dz05.iy07, 0xabcd2900)
1883                                                              }
1884                                                            }
1885                                                            Store (\_SB_.ABBU.mt14.dz05.iy07, Local0)
1886                                                            mm1c()
1887                                                            if (LNotEqual(Local0, 0xabcd2900)) {
1888                                                                err(ts, z169, 0x045, 0, 0, Local0, 0xabcd2900)
1889                                                            }
1890                                                            if (LNotEqual(\_SB_.ABBU.mt14.dz05.iy07, 0xabcd2900)) {
1891                                                                err(ts, z169, 0x046, 0, 0, \_SB_.ABBU.mt14.dz05.iy07, 0xabcd2900)
1892                                                            }
1893                                                          }
1894                                                          Store (\_SB_.ABBU.mt14.dz05.iy07, Local0)
1895                                                          mm1b()
1896                                                          if (LNotEqual(Local0, 0xabcd2900)) {
1897                                                              err(ts, z169, 0x047, 0, 0, Local0, 0xabcd2900)
1898                                                          }
1899                                                          if (LNotEqual(\_SB_.ABBU.mt14.dz05.iy07, 0xabcd2900)) {
1900                                                              err(ts, z169, 0x048, 0, 0, \_SB_.ABBU.mt14.dz05.iy07, 0xabcd2900)
1901                                                          }
1902                                                        }
1903                                                        Store (\_SB_.ABBU.mt14.dz05.iy07, Local0)
1904                                                        mm1a()
1905                                                        if (LNotEqual(Local0, 0xabcd2900)) {
1906                                                            err(ts, z169, 0x049, 0, 0, Local0, 0xabcd2900)
1907                                                        }
1908                                                        if (LNotEqual(\_SB_.ABBU.mt14.dz05.iy07, 0xabcd2900)) {
1909                                                            err(ts, z169, 0x04a, 0, 0, \_SB_.ABBU.mt14.dz05.iy07, 0xabcd2900)
1910                                                        }
1911                                                      }
1912                                                      Store (\_SB_.ABBU.mt14.dz05.iy07, Local0)
1913                                                      mm19()
1914                                                      if (LNotEqual(Local0, 0xabcd2900)) {
1915                                                          err(ts, z169, 0x04b, 0, 0, Local0, 0xabcd2900)
1916                                                      }
1917                                                      if (LNotEqual(\_SB_.ABBU.mt14.dz05.iy07, 0xabcd2900)) {
1918                                                          err(ts, z169, 0x04c, 0, 0, \_SB_.ABBU.mt14.dz05.iy07, 0xabcd2900)
1919                                                      }
1920                                                    }
1921                                                    Store (\_SB_.ABBU.mt14.dz05.iy07, Local0)
1922                                                    mm18()
1923                                                    if (LNotEqual(Local0, 0xabcd2900)) {
1924                                                        err(ts, z169, 0x04d, 0, 0, Local0, 0xabcd2900)
1925                                                    }
1926                                                    if (LNotEqual(\_SB_.ABBU.mt14.dz05.iy07, 0xabcd2900)) {
1927                                                        err(ts, z169, 0x04e, 0, 0, \_SB_.ABBU.mt14.dz05.iy07, 0xabcd2900)
1928                                                    }
1929                                                  }
1930                                                  Store (\_SB_.ABBU.mt14.dz05.iy07, Local0)
1931                                                  mm17()
1932                                                  if (LNotEqual(Local0, 0xabcd2900)) {
1933                                                      err(ts, z169, 0x04f, 0, 0, Local0, 0xabcd2900)
1934                                                  }
1935                                                  if (LNotEqual(\_SB_.ABBU.mt14.dz05.iy07, 0xabcd2900)) {
1936                                                      err(ts, z169, 0x050, 0, 0, \_SB_.ABBU.mt14.dz05.iy07, 0xabcd2900)
1937                                                  }
1938                                                }
1939                                                Store (\_SB_.ABBU.mt14.dz05.iy07, Local0)
1940                                                mm16()
1941                                                if (LNotEqual(Local0, 0xabcd2900)) {
1942                                                    err(ts, z169, 0x051, 0, 0, Local0, 0xabcd2900)
1943                                                }
1944                                                if (LNotEqual(\_SB_.ABBU.mt14.dz05.iy07, 0xabcd2900)) {
1945                                                    err(ts, z169, 0x052, 0, 0, \_SB_.ABBU.mt14.dz05.iy07, 0xabcd2900)
1946                                                }
1947                                              }
1948                                              Store (\_SB_.ABBU.mt14.dz05.iy07, Local0)
1949                                              mm15()
1950                                              if (LNotEqual(Local0, 0xabcd2900)) {
1951                                                  err(ts, z169, 0x053, 0, 0, Local0, 0xabcd2900)
1952                                              }
1953                                              if (LNotEqual(\_SB_.ABBU.mt14.dz05.iy07, 0xabcd2900)) {
1954                                                  err(ts, z169, 0x054, 0, 0, \_SB_.ABBU.mt14.dz05.iy07, 0xabcd2900)
1955                                              }
1956                                            }
1957                                            Store (\_SB_.ABBU.mt14.dz05.iy07, Local0)
1958                                            mm14()
1959                                            if (LNotEqual(Local0, 0xabcd2900)) {
1960                                                err(ts, z169, 0x055, 0, 0, Local0, 0xabcd2900)
1961                                            }
1962                                            if (LNotEqual(\_SB_.ABBU.mt14.dz05.iy07, 0xabcd2900)) {
1963                                                err(ts, z169, 0x056, 0, 0, \_SB_.ABBU.mt14.dz05.iy07, 0xabcd2900)
1964                                            }
1965                                          }
1966                                          Store (\_SB_.ABBU.mt14.dz05.iy07, Local0)
1967                                          mm13()
1968                                          if (LNotEqual(Local0, 0xabcd2900)) {
1969                                              err(ts, z169, 0x057, 0, 0, Local0, 0xabcd2900)
1970                                          }
1971                                          if (LNotEqual(\_SB_.ABBU.mt14.dz05.iy07, 0xabcd2900)) {
1972                                              err(ts, z169, 0x058, 0, 0, \_SB_.ABBU.mt14.dz05.iy07, 0xabcd2900)
1973                                          }
1974                                        }
1975                                        Store (\_SB_.ABBU.mt14.dz05.iy07, Local0)
1976                                        mm12()
1977                                        if (LNotEqual(Local0, 0xabcd2900)) {
1978                                            err(ts, z169, 0x059, 0, 0, Local0, 0xabcd2900)
1979                                        }
1980                                        if (LNotEqual(\_SB_.ABBU.mt14.dz05.iy07, 0xabcd2900)) {
1981                                            err(ts, z169, 0x05a, 0, 0, \_SB_.ABBU.mt14.dz05.iy07, 0xabcd2900)
1982                                        }
1983                                      }
1984                                      Store (\_SB_.ABBU.mt14.dz05.iy07, Local0)
1985                                      mm11()
1986                                      if (LNotEqual(Local0, 0xabcd2900)) {
1987                                          err(ts, z169, 0x05b, 0, 0, Local0, 0xabcd2900)
1988                                      }
1989                                      if (LNotEqual(\_SB_.ABBU.mt14.dz05.iy07, 0xabcd2900)) {
1990                                          err(ts, z169, 0x05c, 0, 0, \_SB_.ABBU.mt14.dz05.iy07, 0xabcd2900)
1991                                      }
1992                                    }
1993                                    Store (\_SB_.ABBU.mt14.dz05.iy07, Local0)
1994                                    mm10()
1995                                    if (LNotEqual(Local0, 0xabcd2900)) {
1996                                        err(ts, z169, 0x05d, 0, 0, Local0, 0xabcd2900)
1997                                    }
1998                                    if (LNotEqual(\_SB_.ABBU.mt14.dz05.iy07, 0xabcd2900)) {
1999                                        err(ts, z169, 0x05e, 0, 0, \_SB_.ABBU.mt14.dz05.iy07, 0xabcd2900)
2000                                    }
2001                                  }
2002                                  Store (\_SB_.ABBU.mt14.dz05.iy07, Local0)
2003                                  mm0f()
2004                                  if (LNotEqual(Local0, 0xabcd2900)) {
2005                                      err(ts, z169, 0x05f, 0, 0, Local0, 0xabcd2900)
2006                                  }
2007                                  if (LNotEqual(\_SB_.ABBU.mt14.dz05.iy07, 0xabcd2900)) {
2008                                      err(ts, z169, 0x060, 0, 0, \_SB_.ABBU.mt14.dz05.iy07, 0xabcd2900)
2009                                  }
2010                                }
2011                                Store (\_SB_.ABBU.mt14.dz05.iy07, Local0)
2012                                mm0e()
2013                                if (LNotEqual(Local0, 0xabcd2900)) {
2014                                    err(ts, z169, 0x061, 0, 0, Local0, 0xabcd2900)
2015                                }
2016                                if (LNotEqual(\_SB_.ABBU.mt14.dz05.iy07, 0xabcd2900)) {
2017                                    err(ts, z169, 0x062, 0, 0, \_SB_.ABBU.mt14.dz05.iy07, 0xabcd2900)
2018                                }
2019                              }
2020                              Store (\_SB_.ABBU.mt14.dz05.iy07, Local0)
2021                              mm0d()
2022                              if (LNotEqual(Local0, 0xabcd2900)) {
2023                                  err(ts, z169, 0x063, 0, 0, Local0, 0xabcd2900)
2024                              }
2025                              if (LNotEqual(\_SB_.ABBU.mt14.dz05.iy07, 0xabcd2900)) {
2026                                  err(ts, z169, 0x064, 0, 0, \_SB_.ABBU.mt14.dz05.iy07, 0xabcd2900)
2027                              }
2028                            }
2029                            Store (\_SB_.ABBU.mt14.dz05.iy07, Local0)
2030                            mm0c()
2031                            if (LNotEqual(Local0, 0xabcd2900)) {
2032                                err(ts, z169, 0x065, 0, 0, Local0, 0xabcd2900)
2033                            }
2034                            if (LNotEqual(\_SB_.ABBU.mt14.dz05.iy07, 0xabcd2900)) {
2035                                err(ts, z169, 0x066, 0, 0, \_SB_.ABBU.mt14.dz05.iy07, 0xabcd2900)
2036                            }
2037                          }
2038                          Store (\_SB_.ABBU.mt14.dz05.iy07, Local0)
2039                          mm0b()
2040                          if (LNotEqual(Local0, 0xabcd2900)) {
2041                              err(ts, z169, 0x067, 0, 0, Local0, 0xabcd2900)
2042                          }
2043                          if (LNotEqual(\_SB_.ABBU.mt14.dz05.iy07, 0xabcd2900)) {
2044                              err(ts, z169, 0x068, 0, 0, \_SB_.ABBU.mt14.dz05.iy07, 0xabcd2900)
2045                          }
2046                        }
2047                        Store (\_SB_.ABBU.mt14.dz05.iy07, Local0)
2048                        mm0a()
2049                        if (LNotEqual(Local0, 0xabcd2900)) {
2050                            err(ts, z169, 0x069, 0, 0, Local0, 0xabcd2900)
2051                        }
2052                        if (LNotEqual(\_SB_.ABBU.mt14.dz05.iy07, 0xabcd2900)) {
2053                            err(ts, z169, 0x06a, 0, 0, \_SB_.ABBU.mt14.dz05.iy07, 0xabcd2900)
2054                        }
2055                      }
2056                      Store (\_SB_.ABBU.mt14.dz05.iy07, Local0)
2057                      mm09()
2058                      if (LNotEqual(Local0, 0xabcd2900)) {
2059                          err(ts, z169, 0x06b, 0, 0, Local0, 0xabcd2900)
2060                      }
2061                      if (LNotEqual(\_SB_.ABBU.mt14.dz05.iy07, 0xabcd2900)) {
2062                          err(ts, z169, 0x06c, 0, 0, \_SB_.ABBU.mt14.dz05.iy07, 0xabcd2900)
2063                      }
2064                    }
2065                    Store (\_SB_.ABBU.mt14.dz05.iy07, Local0)
2066                    mm08()
2067                    if (LNotEqual(Local0, 0xabcd2900)) {
2068                        err(ts, z169, 0x06d, 0, 0, Local0, 0xabcd2900)
2069                    }
2070                    if (LNotEqual(\_SB_.ABBU.mt14.dz05.iy07, 0xabcd2900)) {
2071                        err(ts, z169, 0x06e, 0, 0, \_SB_.ABBU.mt14.dz05.iy07, 0xabcd2900)
2072                    }
2073                  }
2074                  Store (\_SB_.ABBU.mt14.dz05.iy07, Local0)
2075                  mm07()
2076                  if (LNotEqual(Local0, 0xabcd2900)) {
2077                      err(ts, z169, 0x06f, 0, 0, Local0, 0xabcd2900)
2078                  }
2079                  if (LNotEqual(\_SB_.ABBU.mt14.dz05.iy07, 0xabcd2900)) {
2080                      err(ts, z169, 0x070, 0, 0, \_SB_.ABBU.mt14.dz05.iy07, 0xabcd2900)
2081                  }
2082                }
2083                Store (\_SB_.ABBU.mt14.dz05.iy07, Local0)
2084                mm06()
2085                if (LNotEqual(Local0, 0xabcd2900)) {
2086                    err(ts, z169, 0x071, 0, 0, Local0, 0xabcd2900)
2087                }
2088                if (LNotEqual(\_SB_.ABBU.mt14.dz05.iy07, 0xabcd2900)) {
2089                    err(ts, z169, 0x072, 0, 0, \_SB_.ABBU.mt14.dz05.iy07, 0xabcd2900)
2090                }
2091              }
2092              Store (\_SB_.ABBU.mt14.dz05.iy07, Local0)
2093              mm05()
2094              if (LNotEqual(Local0, 0xabcd2900)) {
2095                  err(ts, z169, 0x073, 0, 0, Local0, 0xabcd2900)
2096              }
2097              if (LNotEqual(\_SB_.ABBU.mt14.dz05.iy07, 0xabcd2900)) {
2098                  err(ts, z169, 0x074, 0, 0, \_SB_.ABBU.mt14.dz05.iy07, 0xabcd2900)
2099              }
2100            }
2101            Store (\_SB_.ABBU.mt14.dz05.iy07, Local0)
2102            mm04()
2103            if (LNotEqual(Local0, 0xabcd2900)) {
2104                err(ts, z169, 0x075, 0, 0, Local0, 0xabcd2900)
2105            }
2106            if (LNotEqual(\_SB_.ABBU.mt14.dz05.iy07, 0xabcd2900)) {
2107                err(ts, z169, 0x076, 0, 0, \_SB_.ABBU.mt14.dz05.iy07, 0xabcd2900)
2108            }
2109          }
2110          Store (\_SB_.ABBU.mt14.dz05.iy07, Local0)
2111          mm03()
2112          if (LNotEqual(Local0, 0xabcd2900)) {
2113              err(ts, z169, 0x077, 0, 0, Local0, 0xabcd2900)
2114          }
2115          if (LNotEqual(\_SB_.ABBU.mt14.dz05.iy07, 0xabcd2900)) {
2116              err(ts, z169, 0x078, 0, 0, \_SB_.ABBU.mt14.dz05.iy07, 0xabcd2900)
2117          }
2118        }
2119        Store (\_SB_.ABBU.mt14.dz05.iy07, Local0)
2120        mm02()
2121        if (LNotEqual(Local0, 0xabcd2900)) {
2122            err(ts, z169, 0x079, 0, 0, Local0, 0xabcd2900)
2123        }
2124        if (LNotEqual(\_SB_.ABBU.mt14.dz05.iy07, 0xabcd2900)) {
2125            err(ts, z169, 0x07a, 0, 0, \_SB_.ABBU.mt14.dz05.iy07, 0xabcd2900)
2126        }
2127      }
2128      Store (\_SB_.ABBU.mt14.dz05.iy07, Local0)
2129      mm01()
2130      if (LNotEqual(Local0, 0xabcd2900)) {
2131          err(ts, z169, 0x07b, 0, 0, Local0, 0xabcd2900)
2132      }
2133      if (LNotEqual(\_SB_.ABBU.mt14.dz05.iy07, 0xabcd2900)) {
2134          err(ts, z169, 0x07c, 0, 0, \_SB_.ABBU.mt14.dz05.iy07, 0xabcd2900)
2135      }
2136    }
2137
2138    CH03(ts, z169, 0x11d, 0, 0)
2139
2140    Store (\_SB_.ABBU.mt14.dz05.iy07, Local0)
2141    mm00()
2142    if (LNotEqual(Local0, 0xabcd2900)) {
2143        err(ts, z169, 0x07d, 0, 0, Local0, 0xabcd2900)
2144    }
2145    if (LNotEqual(\_SB_.ABBU.mt14.dz05.iy07, 0xabcd2900)) {
2146        err(ts, z169, 0x07e, 0, 0, \_SB_.ABBU.mt14.dz05.iy07, 0xabcd2900)
2147    }
2148
2149    CH03(ts, z169, 0x11e, 0, 0)
2150}
2151
2152/*
2153 * The same as mt14, but contains parent name paths.
2154 * To be run on ACPICA only.
2155 */
2156Method(mt15,, Serialized)
2157{
2158    Name(ts, "mt15")
2159
2160    Device(dz05)
2161    {
2162        Name(iy07, 0xabcd3900)
2163    }
2164    Method(mm00)
2165    {
2166      Method(mm01)
2167      {
2168        Method(mm02)
2169        {
2170          Method(mm03)
2171          {
2172            Method(mm04)
2173            {
2174              Method(mm05)
2175              {
2176                Method(mm06)
2177                {
2178                  Method(mm07)
2179                  {
2180                    Method(mm08)
2181                    {
2182                      Method(mm09)
2183                      {
2184                        Method(mm0a)
2185                        {
2186                          Method(mm0b)
2187                          {
2188                            Method(mm0c)
2189                            {
2190                              Method(mm0d)
2191                              {
2192                                Method(mm0e)
2193                                {
2194                                  Method(mm0f)
2195                                  {
2196                                    Method(mm10)
2197                                    {
2198                                      Method(mm11)
2199                                      {
2200                                        Method(mm12)
2201                                        {
2202                                          Method(mm13)
2203                                          {
2204                                            Method(mm14)
2205                                            {
2206                                              Method(mm15)
2207                                              {
2208                                                Method(mm16)
2209                                                {
2210                                                  Method(mm17)
2211                                                  {
2212                                                    Method(mm18)
2213                                                    {
2214                                                      Method(mm19)
2215                                                      {
2216                                                        Method(mm1a)
2217                                                        {
2218                                                          Method(mm1b)
2219                                                          {
2220                                                            Method(mm1c)
2221                                                            {
2222                                                              Method(mm1d)
2223                                                              {
2224                                                                Method(mm1e)
2225                                                                {
2226                                                                  Method(mm1f)
2227                                                                  {
2228                                                                    Store (^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^dz05.iy07, Local0)
2229                                                                    OUTC("mt15,   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^dz05.iy07:")
2230                                                                    OUTC(Local0)
2231                                                                    if (LNotEqual(Local0, 0xabcd3900)) {
2232                                                                        err(ts, z169, 0x07f, 0, 0, Local0, 0xabcd3900)
2233                                                                    }
2234                                                                    if (LNotEqual(^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^dz05.iy07, 0xabcd3900)) {
2235                                                                        err(ts, z169, 0x080, 0, 0, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^dz05.iy07, 0xabcd3900)
2236                                                                    }
2237                                                                  }
2238                                                                  Store (^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^dz05.iy07, Local0)
2239                                                                  mm1f()
2240                                                                  if (LNotEqual(Local0, 0xabcd3900)) {
2241                                                                      err(ts, z169, 0x081, 0, 0, Local0, 0xabcd3900)
2242                                                                  }
2243                                                                  if (LNotEqual(^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^dz05.iy07, 0xabcd3900)) {
2244                                                                      err(ts, z169, 0x082, 0, 0, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^dz05.iy07, 0xabcd3900)
2245                                                                  }
2246                                                                }
2247                                                                Store (^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^dz05.iy07, Local0)
2248                                                                mm1e()
2249                                                                if (LNotEqual(Local0, 0xabcd3900)) {
2250                                                                    err(ts, z169, 0x083, 0, 0, Local0, 0xabcd3900)
2251                                                                }
2252                                                                if (LNotEqual(^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^dz05.iy07, 0xabcd3900)) {
2253                                                                    err(ts, z169, 0x084, 0, 0, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^dz05.iy07, 0xabcd3900)
2254                                                                }
2255                                                              }
2256                                                              Store (^^^^^^^^^^^^^^^^^^^^^^^^^^^^^dz05.iy07, Local0)
2257                                                              mm1d()
2258                                                              if (LNotEqual(Local0, 0xabcd3900)) {
2259                                                                  err(ts, z169, 0x085, 0, 0, Local0, 0xabcd3900)
2260                                                              }
2261                                                              if (LNotEqual(^^^^^^^^^^^^^^^^^^^^^^^^^^^^^dz05.iy07, 0xabcd3900)) {
2262                                                                  err(ts, z169, 0x086, 0, 0, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^dz05.iy07, 0xabcd3900)
2263                                                              }
2264                                                            }
2265                                                            Store (^^^^^^^^^^^^^^^^^^^^^^^^^^^^dz05.iy07, Local0)
2266                                                            mm1c()
2267                                                            if (LNotEqual(Local0, 0xabcd3900)) {
2268                                                                err(ts, z169, 0x087, 0, 0, Local0, 0xabcd3900)
2269                                                            }
2270                                                            if (LNotEqual(^^^^^^^^^^^^^^^^^^^^^^^^^^^^dz05.iy07, 0xabcd3900)) {
2271                                                                err(ts, z169, 0x088, 0, 0, ^^^^^^^^^^^^^^^^^^^^^^^^^^^^dz05.iy07, 0xabcd3900)
2272                                                            }
2273                                                          }
2274                                                          Store (^^^^^^^^^^^^^^^^^^^^^^^^^^^dz05.iy07, Local0)
2275                                                          mm1b()
2276                                                          if (LNotEqual(Local0, 0xabcd3900)) {
2277                                                              err(ts, z169, 0x089, 0, 0, Local0, 0xabcd3900)
2278                                                          }
2279                                                          if (LNotEqual(^^^^^^^^^^^^^^^^^^^^^^^^^^^dz05.iy07, 0xabcd3900)) {
2280                                                              err(ts, z169, 0x08a, 0, 0, ^^^^^^^^^^^^^^^^^^^^^^^^^^^dz05.iy07, 0xabcd3900)
2281                                                          }
2282                                                        }
2283                                                        Store (^^^^^^^^^^^^^^^^^^^^^^^^^^dz05.iy07, Local0)
2284                                                        mm1a()
2285                                                        if (LNotEqual(Local0, 0xabcd3900)) {
2286                                                            err(ts, z169, 0x08b, 0, 0, Local0, 0xabcd3900)
2287                                                        }
2288                                                        if (LNotEqual(^^^^^^^^^^^^^^^^^^^^^^^^^^dz05.iy07, 0xabcd3900)) {
2289                                                            err(ts, z169, 0x08c, 0, 0, ^^^^^^^^^^^^^^^^^^^^^^^^^^dz05.iy07, 0xabcd3900)
2290                                                        }
2291                                                      }
2292                                                      Store (^^^^^^^^^^^^^^^^^^^^^^^^^dz05.iy07, Local0)
2293                                                      mm19()
2294                                                      if (LNotEqual(Local0, 0xabcd3900)) {
2295                                                          err(ts, z169, 0x08d, 0, 0, Local0, 0xabcd3900)
2296                                                      }
2297                                                      if (LNotEqual(^^^^^^^^^^^^^^^^^^^^^^^^^dz05.iy07, 0xabcd3900)) {
2298                                                          err(ts, z169, 0x08e, 0, 0, ^^^^^^^^^^^^^^^^^^^^^^^^^dz05.iy07, 0xabcd3900)
2299                                                      }
2300                                                    }
2301                                                    Store (^^^^^^^^^^^^^^^^^^^^^^^^dz05.iy07, Local0)
2302                                                    mm18()
2303                                                    if (LNotEqual(Local0, 0xabcd3900)) {
2304                                                        err(ts, z169, 0x08f, 0, 0, Local0, 0xabcd3900)
2305                                                    }
2306                                                    if (LNotEqual(^^^^^^^^^^^^^^^^^^^^^^^^dz05.iy07, 0xabcd3900)) {
2307                                                        err(ts, z169, 0x090, 0, 0, ^^^^^^^^^^^^^^^^^^^^^^^^dz05.iy07, 0xabcd3900)
2308                                                    }
2309                                                  }
2310                                                  Store (^^^^^^^^^^^^^^^^^^^^^^^dz05.iy07, Local0)
2311                                                  mm17()
2312                                                  if (LNotEqual(Local0, 0xabcd3900)) {
2313                                                      err(ts, z169, 0x091, 0, 0, Local0, 0xabcd3900)
2314                                                  }
2315                                                  if (LNotEqual(^^^^^^^^^^^^^^^^^^^^^^^dz05.iy07, 0xabcd3900)) {
2316                                                      err(ts, z169, 0x092, 0, 0, ^^^^^^^^^^^^^^^^^^^^^^^dz05.iy07, 0xabcd3900)
2317                                                  }
2318                                                }
2319                                                Store (^^^^^^^^^^^^^^^^^^^^^^dz05.iy07, Local0)
2320                                                mm16()
2321                                                if (LNotEqual(Local0, 0xabcd3900)) {
2322                                                    err(ts, z169, 0x093, 0, 0, Local0, 0xabcd3900)
2323                                                }
2324                                                if (LNotEqual(^^^^^^^^^^^^^^^^^^^^^^dz05.iy07, 0xabcd3900)) {
2325                                                    err(ts, z169, 0x094, 0, 0, ^^^^^^^^^^^^^^^^^^^^^^dz05.iy07, 0xabcd3900)
2326                                                }
2327                                              }
2328                                              Store (^^^^^^^^^^^^^^^^^^^^^dz05.iy07, Local0)
2329                                              mm15()
2330                                              if (LNotEqual(Local0, 0xabcd3900)) {
2331                                                  err(ts, z169, 0x095, 0, 0, Local0, 0xabcd3900)
2332                                              }
2333                                              if (LNotEqual(^^^^^^^^^^^^^^^^^^^^^dz05.iy07, 0xabcd3900)) {
2334                                                  err(ts, z169, 0x096, 0, 0, ^^^^^^^^^^^^^^^^^^^^^dz05.iy07, 0xabcd3900)
2335                                              }
2336                                            }
2337                                            Store (^^^^^^^^^^^^^^^^^^^^dz05.iy07, Local0)
2338                                            mm14()
2339                                            if (LNotEqual(Local0, 0xabcd3900)) {
2340                                                err(ts, z169, 0x097, 0, 0, Local0, 0xabcd3900)
2341                                            }
2342                                            if (LNotEqual(^^^^^^^^^^^^^^^^^^^^dz05.iy07, 0xabcd3900)) {
2343                                                err(ts, z169, 0x098, 0, 0, ^^^^^^^^^^^^^^^^^^^^dz05.iy07, 0xabcd3900)
2344                                            }
2345                                          }
2346                                          Store (^^^^^^^^^^^^^^^^^^^dz05.iy07, Local0)
2347                                          mm13()
2348                                          if (LNotEqual(Local0, 0xabcd3900)) {
2349                                              err(ts, z169, 0x099, 0, 0, Local0, 0xabcd3900)
2350                                          }
2351                                          if (LNotEqual(^^^^^^^^^^^^^^^^^^^dz05.iy07, 0xabcd3900)) {
2352                                              err(ts, z169, 0x09a, 0, 0, ^^^^^^^^^^^^^^^^^^^dz05.iy07, 0xabcd3900)
2353                                          }
2354                                        }
2355                                        Store (^^^^^^^^^^^^^^^^^^dz05.iy07, Local0)
2356                                        mm12()
2357                                        if (LNotEqual(Local0, 0xabcd3900)) {
2358                                            err(ts, z169, 0x09b, 0, 0, Local0, 0xabcd3900)
2359                                        }
2360                                        if (LNotEqual(^^^^^^^^^^^^^^^^^^dz05.iy07, 0xabcd3900)) {
2361                                            err(ts, z169, 0x09c, 0, 0, ^^^^^^^^^^^^^^^^^^dz05.iy07, 0xabcd3900)
2362                                        }
2363                                      }
2364                                      Store (^^^^^^^^^^^^^^^^^dz05.iy07, Local0)
2365                                      mm11()
2366                                      if (LNotEqual(Local0, 0xabcd3900)) {
2367                                          err(ts, z169, 0x09d, 0, 0, Local0, 0xabcd3900)
2368                                      }
2369                                      if (LNotEqual(^^^^^^^^^^^^^^^^^dz05.iy07, 0xabcd3900)) {
2370                                          err(ts, z169, 0x09e, 0, 0, ^^^^^^^^^^^^^^^^^dz05.iy07, 0xabcd3900)
2371                                      }
2372                                    }
2373                                    Store (^^^^^^^^^^^^^^^^dz05.iy07, Local0)
2374                                    mm10()
2375                                    if (LNotEqual(Local0, 0xabcd3900)) {
2376                                        err(ts, z169, 0x09f, 0, 0, Local0, 0xabcd3900)
2377                                    }
2378                                    if (LNotEqual(^^^^^^^^^^^^^^^^dz05.iy07, 0xabcd3900)) {
2379                                        err(ts, z169, 0x0a0, 0, 0, ^^^^^^^^^^^^^^^^dz05.iy07, 0xabcd3900)
2380                                    }
2381                                  }
2382                                  Store (^^^^^^^^^^^^^^^dz05.iy07, Local0)
2383                                  mm0f()
2384                                  if (LNotEqual(Local0, 0xabcd3900)) {
2385                                      err(ts, z169, 0x0a1, 0, 0, Local0, 0xabcd3900)
2386                                  }
2387                                  if (LNotEqual(^^^^^^^^^^^^^^^dz05.iy07, 0xabcd3900)) {
2388                                      err(ts, z169, 0x0a2, 0, 0, ^^^^^^^^^^^^^^^dz05.iy07, 0xabcd3900)
2389                                  }
2390                                }
2391                                Store (^^^^^^^^^^^^^^dz05.iy07, Local0)
2392                                mm0e()
2393                                if (LNotEqual(Local0, 0xabcd3900)) {
2394                                    err(ts, z169, 0x0a3, 0, 0, Local0, 0xabcd3900)
2395                                }
2396                                if (LNotEqual(^^^^^^^^^^^^^^dz05.iy07, 0xabcd3900)) {
2397                                    err(ts, z169, 0x0a4, 0, 0, ^^^^^^^^^^^^^^dz05.iy07, 0xabcd3900)
2398                                }
2399                              }
2400                              Store (^^^^^^^^^^^^^dz05.iy07, Local0)
2401                              mm0d()
2402                              if (LNotEqual(Local0, 0xabcd3900)) {
2403                                  err(ts, z169, 0x0a5, 0, 0, Local0, 0xabcd3900)
2404                              }
2405                              if (LNotEqual(^^^^^^^^^^^^^dz05.iy07, 0xabcd3900)) {
2406                                  err(ts, z169, 0x0a6, 0, 0, ^^^^^^^^^^^^^dz05.iy07, 0xabcd3900)
2407                              }
2408                            }
2409                            Store (^^^^^^^^^^^^dz05.iy07, Local0)
2410                            mm0c()
2411                            if (LNotEqual(Local0, 0xabcd3900)) {
2412                                err(ts, z169, 0x0a7, 0, 0, Local0, 0xabcd3900)
2413                            }
2414                            if (LNotEqual(^^^^^^^^^^^^dz05.iy07, 0xabcd3900)) {
2415                                err(ts, z169, 0x0a8, 0, 0, ^^^^^^^^^^^^dz05.iy07, 0xabcd3900)
2416                            }
2417                          }
2418                          Store (^^^^^^^^^^^dz05.iy07, Local0)
2419                          mm0b()
2420                          if (LNotEqual(Local0, 0xabcd3900)) {
2421                              err(ts, z169, 0x0a9, 0, 0, Local0, 0xabcd3900)
2422                          }
2423                          if (LNotEqual(^^^^^^^^^^^dz05.iy07, 0xabcd3900)) {
2424                              err(ts, z169, 0x0aa, 0, 0, ^^^^^^^^^^^dz05.iy07, 0xabcd3900)
2425                          }
2426                        }
2427                        Store (^^^^^^^^^^dz05.iy07, Local0)
2428                        mm0a()
2429                        if (LNotEqual(Local0, 0xabcd3900)) {
2430                            err(ts, z169, 0x0ab, 0, 0, Local0, 0xabcd3900)
2431                        }
2432                        if (LNotEqual(^^^^^^^^^^dz05.iy07, 0xabcd3900)) {
2433                            err(ts, z169, 0x0ac, 0, 0, ^^^^^^^^^^dz05.iy07, 0xabcd3900)
2434                        }
2435                      }
2436                      Store (^^^^^^^^^dz05.iy07, Local0)
2437                      mm09()
2438                      if (LNotEqual(Local0, 0xabcd3900)) {
2439                          err(ts, z169, 0x0ad, 0, 0, Local0, 0xabcd3900)
2440                      }
2441                      if (LNotEqual(^^^^^^^^^dz05.iy07, 0xabcd3900)) {
2442                          err(ts, z169, 0x0ae, 0, 0, ^^^^^^^^^dz05.iy07, 0xabcd3900)
2443                      }
2444                    }
2445                    Store (^^^^^^^^dz05.iy07, Local0)
2446                    mm08()
2447                    if (LNotEqual(Local0, 0xabcd3900)) {
2448                        err(ts, z169, 0x0af, 0, 0, Local0, 0xabcd3900)
2449                    }
2450                    if (LNotEqual(^^^^^^^^dz05.iy07, 0xabcd3900)) {
2451                        err(ts, z169, 0x0b0, 0, 0, ^^^^^^^^dz05.iy07, 0xabcd3900)
2452                    }
2453                  }
2454                  Store (^^^^^^^dz05.iy07, Local0)
2455                  mm07()
2456                  if (LNotEqual(Local0, 0xabcd3900)) {
2457                      err(ts, z169, 0x0b1, 0, 0, Local0, 0xabcd3900)
2458                  }
2459                  if (LNotEqual(^^^^^^^dz05.iy07, 0xabcd3900)) {
2460                      err(ts, z169, 0x0b2, 0, 0, ^^^^^^^dz05.iy07, 0xabcd3900)
2461                  }
2462                }
2463                Store (^^^^^^dz05.iy07, Local0)
2464                mm06()
2465                if (LNotEqual(Local0, 0xabcd3900)) {
2466                    err(ts, z169, 0x0b3, 0, 0, Local0, 0xabcd3900)
2467                }
2468                if (LNotEqual(^^^^^^dz05.iy07, 0xabcd3900)) {
2469                    err(ts, z169, 0x0b4, 0, 0, ^^^^^^dz05.iy07, 0xabcd3900)
2470                }
2471              }
2472              Store (^^^^^dz05.iy07, Local0)
2473              mm05()
2474              if (LNotEqual(Local0, 0xabcd3900)) {
2475                  err(ts, z169, 0x0b5, 0, 0, Local0, 0xabcd3900)
2476              }
2477              if (LNotEqual(^^^^^dz05.iy07, 0xabcd3900)) {
2478                  err(ts, z169, 0x0b6, 0, 0, ^^^^^dz05.iy07, 0xabcd3900)
2479              }
2480            }
2481            Store (^^^^dz05.iy07, Local0)
2482            mm04()
2483            if (LNotEqual(Local0, 0xabcd3900)) {
2484                err(ts, z169, 0x0b7, 0, 0, Local0, 0xabcd3900)
2485            }
2486            if (LNotEqual(^^^^dz05.iy07, 0xabcd3900)) {
2487                err(ts, z169, 0x0b8, 0, 0, ^^^^dz05.iy07, 0xabcd3900)
2488            }
2489          }
2490          Store (^^^dz05.iy07, Local0)
2491          mm03()
2492          if (LNotEqual(Local0, 0xabcd3900)) {
2493              err(ts, z169, 0x0b9, 0, 0, Local0, 0xabcd3900)
2494          }
2495          if (LNotEqual(^^^dz05.iy07, 0xabcd3900)) {
2496              err(ts, z169, 0x0ba, 0, 0, ^^^dz05.iy07, 0xabcd3900)
2497          }
2498        }
2499        Store (^^dz05.iy07, Local0)
2500        mm02()
2501        if (LNotEqual(Local0, 0xabcd3900)) {
2502            err(ts, z169, 0x0bb, 0, 0, Local0, 0xabcd3900)
2503        }
2504        if (LNotEqual(^^dz05.iy07, 0xabcd3900)) {
2505            err(ts, z169, 0x0bc, 0, 0, ^^dz05.iy07, 0xabcd3900)
2506        }
2507      }
2508      Store (^dz05.iy07, Local0)
2509      mm01()
2510      if (LNotEqual(Local0, 0xabcd3900)) {
2511          err(ts, z169, 0x0bd, 0, 0, Local0, 0xabcd3900)
2512      }
2513      if (LNotEqual(^dz05.iy07, 0xabcd3900)) {
2514          err(ts, z169, 0x0be, 0, 0, ^dz05.iy07, 0xabcd3900)
2515      }
2516    }
2517
2518    CH03(ts, z169, 0x11f, 0, 0)
2519
2520    Store (dz05.iy07, Local0)
2521    mm00()
2522    if (LNotEqual(Local0, 0xabcd3900)) {
2523        err(ts, z169, 0x0bf, 0, 0, Local0, 0xabcd3900)
2524    }
2525    if (LNotEqual(dz05.iy07, 0xabcd3900)) {
2526        err(ts, z169, 0x0c0, 0, 0, dz05.iy07, 0xabcd3900)
2527    }
2528
2529    CH03(ts, z169, 0x120, 0, 0)
2530}
2531
2532/*
2533 * Access to the internal object of invoked method
2534 */
2535Method(mt16, 1, Serialized)
2536{
2537    Name(ts, "mt16")
2538
2539    Name(i000, 0)
2540    Name(i001, 0)
2541
2542    Method(mm00)
2543    {
2544      Method(mm01)
2545      {
2546        Method(mm02)
2547        {
2548          Method(mm03)
2549          {
2550            Method(mm04,, Serialized)
2551            {
2552                Device(dz05)
2553                {
2554                  Name(iy07, 0xabcd4900)
2555                }
2556                if (LEqual(i001, 1)) {
2557                    Store(0xabcd4904, dz05.iy07)
2558                    m001(1)
2559                } elseif (LEqual(i001, 2)) {
2560                    Store(0xabcd4905, dz05.iy07)
2561                    m001(2)
2562                } elseif (LEqual(i001, 3)) {
2563                    m001(3)
2564                }
2565            }
2566            mm04()
2567          }
2568          mm03()
2569        }
2570        mm02()
2571      }
2572      mm01()
2573    }
2574
2575    Method(m000)
2576    {
2577      Store (^mm00.mm01.mm02.mm03.mm04.dz05.iy07, i000)
2578    }
2579
2580    Method(m001, 1)
2581    {
2582      Method(mmF1, 1)
2583      {
2584        Method(mmF2, 1, Serialized)
2585        {
2586            Device(dz05)
2587            {
2588              Name(iy07, 0xabcd6900)
2589            }
2590            if (LEqual(arg0, 1)) {
2591                Store (\_SB_.ABBU.mt16.mm00.mm01.mm02.mm03.mm04.dz05.iy07, i000)
2592            } elseif (LEqual(arg0, 2)) {
2593                Store (^^^mm00.mm01.mm02.mm03.mm04.dz05.iy07, i000)
2594            } elseif (LEqual(arg0, 3)) {
2595                Store (^^mmF1.mmF2.dz05.iy07, i000)
2596            }
2597        }
2598        mmF2(arg0)
2599      }
2600      mmF1(arg0)
2601    }
2602
2603    CH03(ts, z169, 0x0c1, 0, 0)
2604
2605    if (LEqual(arg0, 0)) {
2606        // Access to the internal data of method (mm00...) not being invoked
2607        m000()
2608        CH04(ts, 0, 5, z169, 0x0c2, 0, 0) // AE_NOT_FOUND
2609    } elseif (LEqual(arg0, 1)) {
2610
2611        // Access to the internal data of method (mm00...) being invoked
2612        // by \_SB_.ABBU.mt16.mm00....
2613
2614        Store(1, i001)
2615        mm00()
2616        if (LNotEqual(i000, 0xabcd4904)) {
2617            err(ts, z169, 0x0c3, 0, 0, i000, 0xabcd4904)
2618        }
2619    } elseif (LEqual(arg0, 2)) {
2620
2621        // Access to the internal data of method (mm00...) being invoked
2622        // by ^^^^^^^^^^^^mm00...
2623
2624        Store(2, i001)
2625        mm00()
2626        if (LNotEqual(i000, 0xabcd4905)) {
2627            err(ts, z169, 0x0c4, 0, 0, i000, 0xabcd4905)
2628        }
2629
2630    } elseif (LEqual(arg0, 3)) {
2631
2632        // Access to the internal data of method (m001.mmF1.mmF2.mmF3.dz05.iy07...)
2633        // being invoked by ^^^^^^^^^^^^mm01...
2634
2635        Store(3, i001)
2636        mm00()
2637        if (LNotEqual(i000, 0xabcd6900)) {
2638            err(ts, z169, 0x0c4, 0, 0, i000, 0xabcd6900)
2639        }
2640    }
2641
2642    CH03(ts, z169, 0x0c5, 0, 0)
2643}
2644
2645/*
2646 * The same as mt16, but contains more depth of enclosed method calls.
2647 * To be run on ACPICA only.
2648 */
2649Method(mt17, 1, Serialized)
2650{
2651    Name(ts, "mt17")
2652
2653    Name(i000, 0)
2654    Name(i001, 0)
2655
2656    Method(mm00)
2657    {
2658      Method(mm01)
2659      {
2660        Method(mm02)
2661        {
2662          Method(mm03)
2663          {
2664            Method(mm04)
2665            {
2666              Method(mm05)
2667              {
2668                Method(mm06)
2669                {
2670                  Method(mm07)
2671                  {
2672                    Method(mm08)
2673                    {
2674                      Method(mm09)
2675                      {
2676                        Method(mm0a)
2677                        {
2678                          Method(mm0b)
2679                          {
2680                            Method(mm0c)
2681                            {
2682                              Method(mm0d)
2683                              {
2684                                Method(mm0e)
2685                                {
2686                                  Method(mm0f)
2687                                  {
2688                                    Method(mm10)
2689                                    {
2690                                      Method(mm11)
2691                                      {
2692                                        Method(mm12)
2693                                        {
2694                                          Method(mm13)
2695                                          {
2696                                            Method(mm14)
2697                                            {
2698                                              Method(mm15)
2699                                              {
2700                                                Method(mm16)
2701                                                {
2702                                                  Method(mm17)
2703                                                  {
2704                                                    Method(mm18)
2705                                                    {
2706                                                      Method(mm19)
2707                                                      {
2708                                                        Method(mm1a)
2709                                                        {
2710                                                          Method(mm1b)
2711                                                          {
2712                                                            Method(mm1c)
2713                                                            {
2714                                                              Method(mm1d)
2715                                                              {
2716                                                                Method(mm1e)
2717                                                                {
2718                                                                  Method(mm1f)
2719                                                                  {
2720                                                                    Method(mm20)
2721                                                                    {
2722                                                                      Method(mm21,, Serialized)
2723                                                                      {
2724                                                                        Device(dz05)
2725                                                                        {
2726                                                                          Name(iy07, 0xabcd5900)
2727                                                                        }
2728                                                                        Method(mm22)
2729                                                                        {
2730                                                                          Method(mm23)
2731                                                                          {
2732                                                                            Method(mm24)
2733                                                                            {
2734                                                                              Method(mm25)
2735                                                                              {
2736                                                                                if (LEqual(i001, 1)) {
2737                                                                                    Store(0xabcd4906, ^^^^dz05.iy07)
2738                                                                                    m001(1)
2739                                                                                } elseif (LEqual(i001, 2)) {
2740                                                                                    Store(0xabcd4907, ^^^^dz05.iy07)
2741                                                                                    m001(2)
2742                                                                                } elseif (LEqual(i001, 3)) {
2743                                                                                    m001(3)
2744                                                                                }
2745                                                                              }
2746                                                                              mm25()
2747                                                                            }
2748                                                                            mm24()
2749                                                                          }
2750                                                                          mm23()
2751                                                                        }
2752                                                                        mm22()
2753                                                                      }
2754                                                                      mm21()
2755                                                                    }
2756                                                                    mm20()
2757                                                                  }
2758                                                                  mm1f()
2759                                                                }
2760                                                                mm1e()
2761                                                              }
2762                                                              mm1d()
2763                                                            }
2764                                                            mm1c()
2765                                                          }
2766                                                          mm1b()
2767                                                        }
2768                                                        mm1a()
2769                                                      }
2770                                                      mm19()
2771                                                    }
2772                                                    mm18()
2773                                                  }
2774                                                  mm17()
2775                                                }
2776                                                mm16()
2777                                              }
2778                                              mm15()
2779                                            }
2780                                            mm14()
2781                                          }
2782                                          mm13()
2783                                        }
2784                                        mm12()
2785                                      }
2786                                      mm11()
2787                                    }
2788                                    mm10()
2789                                  }
2790                                  mm0f()
2791                                }
2792                                mm0e()
2793                              }
2794                              mm0d()
2795                            }
2796                            mm0c()
2797                          }
2798                          mm0b()
2799                        }
2800                        mm0a()
2801                      }
2802                      mm09()
2803                    }
2804                    mm08()
2805                  }
2806                  mm07()
2807                }
2808                mm06()
2809              }
2810              mm05()
2811            }
2812            mm04()
2813          }
2814          mm03()
2815        }
2816        mm02()
2817      }
2818      mm01()
2819    }
2820
2821    Method(m000)
2822    {
2823      Store (^mm00.mm01.mm02.mm03.mm04.mm05.mm06.mm07.mm08.mm09.mm0a.mm0b.mm0c.mm0d.mm0e.mm0f.mm10.mm11.mm12.mm13.mm14.mm15.mm16.mm17.mm18.mm19.mm1a.mm1b.mm1c.mm1d.mm1e.mm1f.mm20.mm21.dz05.iy07, i000)
2824    }
2825
2826    Method(m001, 1)
2827    {
2828      Method(mmF1, 1)
2829      {
2830        Method(mmF2, 1)
2831        {
2832          Method(mmF3, 1)
2833          {
2834            Method(mmF4, 1)
2835            {
2836              Method(mmF5, 1)
2837              {
2838                Method(mmF6, 1)
2839                {
2840                  Method(mmF7, 1)
2841                  {
2842                    Method(mmF8, 1)
2843                    {
2844                      Method(mmF9, 1)
2845                      {
2846                        Method(mmFa, 1)
2847                        {
2848                          Method(mmFb, 1)
2849                          {
2850                            Method(mmFc, 1)
2851                            {
2852                              Method(mmFd, 1)
2853                              {
2854                                Method(mmFe, 1)
2855                                {
2856                                  Method(mmFf, 1)
2857                                  {
2858                                    Method(mm10, 1)
2859                                    {
2860                                      Method(mm11, 1, Serialized)
2861                                      {
2862                                        Device(dz05)
2863                                        {
2864                                          Name(iy07, 0xabcd4908)
2865                                        }
2866                                        Method(mm12, 1)
2867                                        {
2868                                          Method(mm13, 1)
2869                                          {
2870                                            Method(mm14, 1)
2871                                            {
2872                                              Method(mm15, 1)
2873                                              {
2874                                                Method(mm16, 1)
2875                                                {
2876                                                  Method(mm17, 1)
2877                                                  {
2878                                                    Method(mm18, 1)
2879                                                    {
2880                                                      Method(mm19, 1)
2881                                                      {
2882                                                        Method(mm1a, 1)
2883                                                        {
2884                                                          Method(mm1b, 1)
2885                                                          {
2886                                                            Method(mm1c, 1)
2887                                                            {
2888                                                              Method(mm1d, 1)
2889                                                              {
2890                                                                Method(mm1e, 1)
2891                                                                {
2892                                                                  Method(mm1f, 1)
2893                                                                  {
2894if (LEqual(arg0, 1)) {
2895    Store (\_SB_.ABBU.mt17.mm00.mm01.mm02.mm03.mm04.mm05.mm06.mm07.mm08.mm09.mm0a.mm0b.mm0c.mm0d.mm0e.mm0f.mm10.mm11.mm12.mm13.mm14.mm15.mm16.mm17.mm18.mm19.mm1a.mm1b.mm1c.mm1d.mm1e.mm1f.mm20.mm21.dz05.iy07, i000)
2896} elseif (LEqual(arg0, 2)) {
2897    Store (^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^mm00.mm01.mm02.mm03.mm04.mm05.mm06.mm07.mm08.mm09.mm0a.mm0b.mm0c.mm0d.mm0e.mm0f.mm10.mm11.mm12.mm13.mm14.mm15.mm16.mm17.mm18.mm19.mm1a.mm1b.mm1c.mm1d.mm1e.mm1f.mm20.mm21.dz05.iy07, i000)
2898} elseif (LEqual(arg0, 3)) {
2899    Store (^^^^^^^^^^^^^^^^^^^^^^^^^^mmF6.mmF7.mmF8.mmF9.mmFa.mmFb.mmFc.mmFd.mmFe.mmFf.mm10.mm11.dz05.iy07, i000)
2900}
2901                                                                  }
2902                                                                  mm1f(arg0)
2903                                                                }
2904                                                                mm1e(arg0)
2905                                                              }
2906                                                              mm1d(arg0)
2907                                                            }
2908                                                            mm1c(arg0)
2909                                                          }
2910                                                          mm1b(arg0)
2911                                                        }
2912                                                        mm1a(arg0)
2913                                                      }
2914                                                      mm19(arg0)
2915                                                    }
2916                                                    mm18(arg0)
2917                                                  }
2918                                                  mm17(arg0)
2919                                                }
2920                                                mm16(arg0)
2921                                              }
2922                                              mm15(arg0)
2923                                            }
2924                                            mm14(arg0)
2925                                          }
2926                                          mm13(arg0)
2927                                        }
2928                                        mm12(arg0)
2929                                      }
2930                                      mm11(arg0)
2931                                    }
2932                                    mm10(arg0)
2933                                  }
2934                                  mmFf(arg0)
2935                                }
2936                                mmFe(arg0)
2937                              }
2938                              mmFd(arg0)
2939                            }
2940                            mmFc(arg0)
2941                          }
2942                          mmFb(arg0)
2943                        }
2944                        mmFa(arg0)
2945                      }
2946                      mmF9(arg0)
2947                    }
2948                    mmF8(arg0)
2949                  }
2950                  mmF7(arg0)
2951                }
2952                mmF6(arg0)
2953              }
2954              mmF5(arg0)
2955            }
2956            mmF4(arg0)
2957          }
2958          mmF3(arg0)
2959        }
2960        mmF2(arg0)
2961      }
2962      mmF1(arg0)
2963    }
2964
2965    CH03(ts, z169, 0x0c6, 0, 0)
2966
2967    if (LEqual(arg0, 0)) {
2968        // Access to the internal data of method (mm00...) not being invoked
2969        m000()
2970        CH04(ts, 0, 5, z169, 0x0c7, 0, 0) // AE_NOT_FOUND
2971    } elseif (LEqual(arg0, 1)) {
2972
2973        // Access to the internal data of method (mm00...) being invoked
2974        // by \_SB_.ABBU.mt16.mm00....
2975
2976        Store(1, i001)
2977        mm00()
2978        if (LNotEqual(i000, 0xabcd4906)) {
2979            err(ts, z169, 0x0c8, 0, 0, i000, 0xabcd4906)
2980        }
2981    } elseif (LEqual(arg0, 2)) {
2982
2983        // Access to the internal data of method (mm00...) being invoked
2984        // by ^^^^^^^^^^^^mm00...
2985
2986        Store(2, i001)
2987        mm00()
2988        if (LNotEqual(i000, 0xabcd4907)) {
2989            err(ts, z169, 0x0c9, 0, 0, i000, 0xabcd4907)
2990        }
2991
2992    } elseif (LEqual(arg0, 3)) {
2993
2994        // Access to the internal data of method (m001.mmF1.mmF2.mmF3.dz05.iy07...)
2995        // being invoked by ^^^^^^^^^^^^mm01...
2996
2997        Store(3, i001)
2998        mm00()
2999        if (LNotEqual(i000, 0xabcd4908)) {
3000            err(ts, z169, 0x0ca, 0, 0, i000, 0xabcd4908)
3001        }
3002    }
3003
3004    CH03(ts, z169, 0x0cb, 0, 0)
3005}
3006
3007Method(mt18, 1, Serialized)
3008{
3009	Name(ts, "mt18")
3010
3011	Device(dz05)
3012	{
3013		Name(iy07, 0xabcd4900)
3014	}
3015
3016	CH03(ts, z169, 0x0cc, 0, 0)
3017
3018	if (arg0) {
3019		Store(0xabcd9000, \_SB_.ABBU.mt18.dz05.iy07)
3020            if (LNotEqual(\_SB_.ABBU.mt18.dz05.iy07, 0xabcd9000)) {
3021                err(ts, z169, 0x0ca, 0, 0, \_SB_.ABBU.mt18.dz05.iy07, 0xabcd9000)
3022            }
3023	} else {
3024		Store(0xabcd9001, dz05.iy07)
3025            if (LNotEqual(dz05.iy07, 0xabcd9001)) {
3026                err(ts, z169, 0x0ca, 0, 0, dz05.iy07, 0xabcd9001)
3027            }
3028	}
3029
3030	CH03(ts, z169, 0x0cd, 0, 0)
3031}
3032
3033Method(mt19, 1, Serialized)
3034{
3035	Name(ts, "mt19")
3036
3037	Processor(pr7d, 0, 0x000, 0x008)
3038	{
3039		Name(iy07, 0xabcd0660)
3040	}
3041
3042	CH03(ts, z169, 0x0ce, 0, 0)
3043
3044	if (arg0) {
3045		Store(0xabcd9002, \_SB_.ABBU.mt19.pr7d.iy07)
3046            if (LNotEqual(\_SB_.ABBU.mt19.pr7d.iy07, 0xabcd9002)) {
3047                err(ts, z169, 0x0ca, 0, 0, \_SB_.ABBU.mt19.pr7d.iy07, 0xabcd9002)
3048            }
3049	} else {
3050		Store(0xabcd9003, pr7d.iy07)
3051            if (LNotEqual(pr7d.iy07, 0xabcd9003)) {
3052                err(ts, z169, 0x0ca, 0, 0, pr7d.iy07, 0xabcd9003)
3053            }
3054	}
3055
3056	CH03(ts, z169, 0x0cf, 0, 0)
3057}
3058
3059Method(mt1a, 1, Serialized)
3060{
3061	Name(ts, "mt1a")
3062
3063	CH03(ts, z169, 0x0d0, 0, 0)
3064	if (arg0) {
3065		Store(0xabcd9004, \_SB_.ABBU.pr7d.iy07)
3066            if (LNotEqual(\_SB_.ABBU.pr7d.iy07, 0xabcd9004)) {
3067                err(ts, z169, 0x0ca, 0, 0, \_SB_.ABBU.pr7d.iy07, 0xabcd9004)
3068            }
3069	} else {
3070		Store(0xabcd9005, ^pr7d.iy07)
3071            if (LNotEqual(^pr7d.iy07, 0xabcd9005)) {
3072                err(ts, z169, 0x0ca, 0, 0, ^pr7d.iy07, 0xabcd9005)
3073            }
3074	}
3075	CH03(ts, z169, 0x0d1, 0, 0)
3076}
3077
3078
3079Method(mtff,, Serialized)
3080{
3081	Name(run0, 1)
3082
3083
3084	// Works on both
3085	SRMT("mt00")
3086	mt00()
3087
3088	if (chk0) {
3089		// Exceeded the depth supported on MS
3090		SRMT("mt01")
3091		mt01()
3092	}
3093
3094	// Works on both
3095	SRMT("mt02")
3096	mt02()
3097
3098	if (chk0) {
3099		// Exceeded the depth supported on MS
3100		SRMT("mt03")
3101		mt03()
3102	}
3103
3104	if (run0) {
3105		// Works on MS, AE_AML_OPERAND_TYPE on ACPICA
3106		SRMT("mt04")
3107		mt04()
3108	}
3109
3110	if (LAnd(chk0, run0)) {
3111		// Exceeded the depth supported on MS
3112		SRMT("mt05")
3113		mt05()
3114	}
3115
3116	// Works on both
3117	SRMT("mt06")
3118	mt06()
3119
3120	if (0) {
3121		// Fails for both here - for MS and ACPICA
3122		SRMT("mt07")
3123		mt07()
3124	}
3125
3126	if (chk0) {
3127		// Exceeded the depth supported on MS
3128		SRMT("mt08")
3129		mt08()
3130	}
3131
3132	// Works on both
3133	SRMT("mt0a")
3134	mt0a()
3135	SRMT("mt0b")
3136	mt0b()
3137
3138	if (run0) {
3139		// Works on MS, AE_AML_OPERAND_TYPE on ACPICA
3140		SRMT("mt0c")
3141		mt0c()
3142	}
3143
3144	// Simply long cycle in While
3145	SRMT("mt0d")
3146	mt0d()
3147
3148	if (0) {
3149		SRMT("mt0e")
3150		mt0e() // Result: ACPICA - AE_NOT_FOUND, MS - Failure
3151	}
3152
3153	if (run0) {
3154		// Works on MS, AE_AML_OPERAND_TYPE on ACPICA
3155		SRMT("mt0f")
3156		mt0f()
3157	}
3158
3159	if (LAnd(chk0, run0)) {
3160		// Exceeded the depth supported on MS
3161		SRMT("mt10")
3162		mt10()
3163	}
3164
3165	if (run0) {
3166		// Works on MS, AE_AML_OPERAND_TYPE on ACPICA
3167		SRMT("mt11")
3168		mt11()
3169	}
3170
3171	if (LAnd(chk0, run0)) {
3172		// Exceeded the depth supported on MS
3173		SRMT("mt12")
3174		mt12()
3175	}
3176
3177	// Works on both
3178	SRMT("mt13")
3179	mt13()
3180
3181	if (chk0) {
3182		// Exceeded the depth supported on MS
3183		SRMT("mt14")
3184		mt14()
3185		SRMT("mt15")
3186		mt15()
3187	}
3188
3189	if (chk0) {
3190		// ACPICA - AE_NOT_FOUND (it is correct), MS - Failure
3191		SRMT("mt16-0")
3192		mt16(0)
3193	}
3194
3195	if (run0) {
3196		// Works on MS, AE_AML_OPERAND_TYPE on ACPICA
3197		SRMT("mt16-1")
3198		mt16(1)
3199		SRMT("mt16-2")
3200		mt16(2)
3201		SRMT("mt16-3")
3202		mt16(3)
3203	}
3204
3205	if (chk0) {
3206		// ACPICA - AE_NOT_FOUND (it is correct), MS - Failure
3207		SRMT("mt17-0")
3208		mt17(0)
3209	}
3210
3211	if (LAnd(chk0, run0)) {
3212		// Exceeded the depth supported on MS
3213		SRMT("mt17-1")
3214		mt17(1)
3215		SRMT("mt17-2")
3216		mt17(2)
3217	}
3218
3219	SRMT("mt18-0")
3220	mt18(0)
3221	SRMT("mt18-1")
3222	mt18(1)
3223	SRMT("mt19-0")
3224	mt19(0)
3225	SRMT("mt19-1")
3226	mt19(1)
3227	SRMT("mt1a-0")
3228	mt1a(0)
3229	SRMT("mt1a-1")
3230	mt1a(1)
3231}
3232