summaryrefslogtreecommitdiff
path: root/util/romcc/tests/simple_test33.c
blob: 4caaa3a9e5dbecf0cfd2aa80f509113d3663e1a6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
static void main(void)
{
	unsigned long loops0, loops1, loops2;
	unsigned long accum;

	accum = 0;

	loops0 = 10;
	do {
		unsigned short val;
		val = __builtin_inw(0x10e0);
		if (((val & 0x08) == 0)  || (val == 1)) {
			break;
		}
	} while(--loops0);
	if (loops0 < 0) return;
	accum += loops0;


	loops1 = 20;
	do {
		unsigned short val;
		val = __builtin_inw(0x10e0);
		if (((val & 0x08) == 0)  || (val == 1)) {
			break;
		}
	} while(--loops1);

	loops2 = 30;
	do {
		unsigned short val;
		val = __builtin_inw(0x10e0);
		if (((val & 0x08) == 0)  || (val == 1)) {
			break;
		}
	} while(--loops2);

	accum += loops1 + loops0;
}