aboutsummaryrefslogtreecommitdiff
path: root/sim/testsuite/bfin/10799.s
blob: 76e1eb32b512ac97a1952f39290873089fad1d55 (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
# mach: bfin

.include "testutils.inc"
	start

	fp = sp;

	[--SP]=RETS;

	loadsym R1, _b;
	loadsym R2, _a;
	R0 = R2;

	SP +=  -12;
	R2 =   4;

	CALL _dot;
	R1 = R0;

	R0 =   30;
	dbga( r1.l, 0x1e);


	pass

_dot:
	P0 = R1;
	CC = R2 <=  0;
	R3 = R0;
	R0 =   0;
	IF CC JUMP  ._P1L1 (bp);
	R0 =   1;
	I0 = R3;
	R0 = MAX (R0,R2) || R2 = [P0++] || NOP;
	P1 = R0;
	R0 = 0;
	R1 = [I0++];
	LSETUP (._P1L4 , ._P1L5) LC0=P1;

._P1L4:
	R1 *= R2;
._P1L5:
	R0= R0 + R1 (NS) || R2 = [P0++] || R1 = [I0++];

._P1L1:
	RTS;

.data;
_a:
	.db 0x01,0x00,0x00,0x00,0x02,0x00,0x00,0x00,0x03,0x00,0x00,0x00;
	.db 0x04,0x00,0x00,0x00;

_b:
	.db 0x01,0x00,0x00,0x00,0x02,0x00,0x00,0x00,0x03,0x00,0x00,0x00;
	.db 0x04,0x00,0x00,0x00;