1# mach: bfin
2
3.include "testutils.inc"
4	start
5
6// Test pc relative indirect branches.
7	P4 = 0;
8	loadsym P1 jtab;
9
10LL1:
11	P2 = P1 + ( P4 << 1 );
12	R0 = W [ P2 ] (Z);
13	P0 = R0;
14	R2 = P4;
15
16jp:
17	JUMP ( PC + P0 );
18
19	DBGA ( R2.L , 0 );
20	JUMP.L done;
21
22	DBGA ( R2.L , 1 );
23	JUMP.L done;
24
25	DBGA ( R2.L , 2 );
26	JUMP.L done;
27
28	DBGA ( R2.L , 3 );
29	JUMP.L done;
30
31	DBGA ( R2.L , 4 );
32	JUMP.L done;
33
34done:
35	P4 += 1;
36	CC = P4 < 4 (IU);
37	IF CC JUMP LL1;
38	pass
39
40	.data
41
42jtab:
43	.dw 2;	//.dw (2+0*8)
44	.dw 10;	//.dw (2+1*8)
45	.dw 18;	//.dw (2+2*8)
46	.dw 26;	//.dw (2+3*8)
47	.dw 34;	//.dw (2+4*8)
48