1//Original:/testcases/core/c_loopsetup_preg_lc1/c_loopsetup_preg_lc1.dsp
2// Spec Reference: loopsetup preg lc1
3# mach: bfin
4
5.include "testutils.inc"
6	start
7
8
9INIT_R_REGS 0;
10
11ASTAT = r0;
12
13P1 = 12;
14P2 = 14;
15P3 = 16;
16P4 = 18;
17P5 = 20;
18SP = 22;
19FP = 24;
20
21R0 = 0x05;
22R1 = 0x10;
23R2 = 0x20;
24R3 = 0x30;
25R4 = 0x40 (X);
26R5 = 0x50 (X);
27R6 = 0x60 (X);
28R7 = 0x70 (X);
29LSETUP ( start11 , end11 ) LC1 = P1;
30start11: R0 += 1;
31 R1 += -1;
32end11: R2 += 1;
33 R3 += 1;
34LSETUP ( start12 , end12 ) LC1 = P2;
35start12: R4 += 1;
36end12: R5 += -1;
37 R3 += 1;
38LSETUP ( start13 , end13 ) LC1 = P3;
39start13: R6 += 1;
40end13: R7 += -1;
41 R3 += 1;
42CHECKREG r0, 0x00000011;
43CHECKREG r1, 0x00000004;
44CHECKREG r2, 0x0000002C;
45CHECKREG r3, 0x00000033;
46CHECKREG r4, 0x0000004E;
47CHECKREG r5, 0x00000042;
48CHECKREG r6, 0x00000070;
49CHECKREG r7, 0x00000060;
50
51R0 = 0x05;
52R1 = 0x10;
53R2 = 0x20;
54R3 = 0x30;
55R4 = 0x40 (X);
56R5 = 0x50 (X);
57R6 = 0x60 (X);
58R7 = 0x70 (X);
59LSETUP ( start14 , end14 ) LC1 = P4;
60start14: R0 += 1;
61 R1 += -1;
62end14: R2 += 1;
63 R3 += 1;
64LSETUP ( start15 , end15 ) LC1 = P5;
65start15: R4 += 1;
66end15: R5 += -1;
67 R3 += 1;
68LSETUP ( start16 , end16 ) LC1 = SP;
69start16: R6 += 1;
70end16: R7 += -1;
71 R3 += 1;
72CHECKREG r0, 0x00000017;
73CHECKREG r1, 0xFFFFFFFE;
74CHECKREG r2, 0x00000032;
75CHECKREG r3, 0x00000033;
76CHECKREG r4, 0x00000054;
77CHECKREG r5, 0x0000003c;
78CHECKREG r6, 0x00000076;
79CHECKREG r7, 0x0000005A;
80LSETUP ( start17 , end17 ) LC1 = FP;
81start17: R4 += 1;
82end17: R5 += -1;
83 R3 += 1;
84CHECKREG r0, 0x00000017;
85CHECKREG r1, 0xFFFFFFFE;
86CHECKREG r2, 0x00000032;
87CHECKREG r3, 0x00000034;
88CHECKREG r4, 0x0000006c;
89CHECKREG r5, 0x00000024;
90CHECKREG r6, 0x00000076;
91CHECKREG r7, 0x0000005A;
92
93pass
94