aboutsummaryrefslogtreecommitdiff
path: root/sim/testsuite/bfin/d2.s
blob: 2634f4bbe19cc37dec473f3b802d3c5a7ed31b24 (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
# Blackfin testcase for circular buffers and BREV
# mach: bfin

	.include "testutils.inc"

	start

	I0 = 0 (X);
	M0 = 0x8 (X);
	P0 = 16;
	loadsym R1, vals;

aaa:
	I0 += M0 (BREV);
	P0 += -1;

	R2 = I0;
	R0 = R1 + R2
	P1 = R0;
	R0 = B[P1] (Z);

	R3 = P0;

	CC = R0 == R3;
	if !CC JUMP _fail;

	CC = P0 == 0;
	IF !CC JUMP aaa (BP);
	R0 = I0;

	DBGA(R0.L, 0x0000);
	DBGA(R0.H, 0x0000);

	pass

_fail:
	fail

	.data
vals:
.db 0x0		/* 0 */
.db 0x8
.db 0xc
.db 0x4		/* 4 */
.db 0xe
.db 0x6
.db 0xa
.db 0x2		/* 8 */
.db 0xf
.db 0x7
.db 0xB
.db 0x3		/* c */
.db 0xD
.db 0x5
.db 0x9		/* f */
.db 0x1