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
29if (STTT("Method execution control", TCLF, 3, W003)) {
30
31// m0ed()
32// m0fd()
33if (1) {
34	SRMT("CTL0")
35	CTL0()
36	SRMT("CTL1")
37	CTL1()
38	SRMT("CTL2")
39	CTL2()
40	SRMT("TIM0")
41	if (F64) {
42		TIM0()
43	} else {
44		/*
45		 * Skip the test in 32-bit mode.
46		 *
47		 * In the 32-bit mode the Timer with the 100
48		 * nanosecond period can provide the gradually
49		 * increased values during only 7 minutes before
50		 * it overflows and starts from the beginning.
51		 * We can't use the Timer operator at all because
52		 * it can overflow inside any the measured period.
53		 */
54		SKIP()
55	}
56	SRMT("SW01")
57	SW01()
58	SRMT("SW02")
59	SW02()
60	SRMT("SW03")
61	SW03()
62	SRMT("SW04")
63	SW04()
64	SRMT("SW05")
65	SW05()
66	SRMT("SW06")
67	SW06()
68	SRMT("SW07")
69	SW07()
70	SRMT("SW08")
71	SW08()
72	SRMT("SW09")
73	SW09()
74	SRMT("SW10")
75	SW10()
76	SRMT("WHL0")
77	WHL0()
78
79	m0ed()
80	m0fd()
81}
82
83}
84FTTT()
85
86Include("../../../../runtime/collections/functional/control/Return/RUN.asl")
87Include("../../../../runtime/collections/functional/control/ImplicitReturn/RUN.asl")
88
89