blob: ac39613a49c0e1851732d9557072416e848b6e18 (
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
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
|
# Blackfin testcase for playing with LSETUP
# mach: bfin
.include "testutils.inc"
start
R0 = 0x123;
P0 = R0;
LSETUP (.L1, .L1) LC0 = P0;
.L1:
R0 += -1;
R1 = 0;
CC = R1 == R0;
IF CC JUMP 1f;
fail
1:
p0=10;
loadsym i0, _buf
imm32 r0, 0x12345678
LSETUP(.L2, .L3) lc0 = p0;
.L2:
[i0++] = r0;
.L3:
[i0++] = r0;
loadsym R1, _buf
R0 = 0x50;
R1 = R0 + R1;
R0 = I0;
CC = R0 == R1;
if CC JUMP 2f;
fail
2:
r5=10;
p1=r5;
r7=20;
lsetup (.L4, .L5) lc0=p1;
.L4:
nop;
nop;
nop;
nop;
jump .L5;
nop;
nop;
nop;
.L5:
r7 += -1;
R0 = 10 (Z);
CC = R7 == R0;
if CC jump 3f;
fail
3:
r1 = 1;
r2 = 2;
r0 = 0;
p1 = 10;
loadsym p0, _buf;
lsetup (.L6, .L7) lc0 = p1;
.L6:
[p0++] = r1;
.L7:
[p0++] = r2;
r3 = P0;
loadsym r1, _buf
r0 = 80;
r1 = r1 + r0;
CC = R1 == R3
if CC jump 4f;
fail
4:
R0 = 1;
R1 = 2;
R2 = 3;
R4 = 4;
P1 = R1;
LSETUP (.L8, .L8) LC0 = P1;
R5 = 5;
R6 = 6;
R7 = 7;
.L8:
R1 += 1;
R7 = 4;
CC = R7 == R1;
if CC jump 5f;
fail
5:
P1 = R1;
LSETUP (.L9, .L9 ) LC1 = P1;
.L9:
R1 += 1;
R7 = 8;
if CC jump 6f;
fail
6:
pass
.data
_buf:
.rept 0x80
.long 0
.endr
|