binutils/
[external/binutils.git] / sim / testsuite / sim / bfin / fsm.s
1 # mach: bfin
2
3 .include "testutils.inc"
4         start
5
6
7         R1 = 0;
8         R0 = R1;
9         R7 = 7;
10 L$10:
11         CC = R0 == 1;
12         IF CC JUMP L$14;
13         CC = R0 <= 1;
14         IF !CC JUMP L$30;
15         CC = R0 == 0;
16         IF CC JUMP L$12;
17         JUMP.S L$25;
18 L$30:
19         CC = R0 == R7;
20         IF CC JUMP L$16;
21         R5 = 17;
22         CC = R0 == R5;
23         IF CC JUMP L$23;
24         JUMP.S L$25;
25 L$12:
26         R1 += 5;
27         R0 = 1;
28         JUMP.S L$8;
29 L$14:
30         R1 <<= 4;
31         R0 = 4;
32         JUMP.S L$8;
33 L$16:
34         CC = BITTST ( R1 , 3 );
35         IF CC JUMP L$17;
36         BITSET( R1 , 3 );
37         R0 = 4;
38         JUMP.S L$20;
39 L$17:
40         BITSET( R1 , 5 );
41         R0 = 14;
42 L$20:
43         JUMP.S L$8;
44 L$23:
45         R5 = 13;
46         R1 = R1 ^ R5;
47         R0 = 20;
48         JUMP.S L$8;
49 L$25:
50         R1 += 1;
51         R0 += 1;
52 L$8:
53         R5 = 19;
54         CC = R0 <= R5;
55         IF CC JUMP L$10 (BP);
56         DBGA ( R0.L , 20 );     DBGA ( R1.L , 140 );
57         pass