1*6ca2c52aSchristos//Original:/testcases/core/c_dagmodim_lnz_imltbl/c_dagmodim_lnz_imltbl.dsp
2*6ca2c52aSchristos// Spec Reference: dagmodim l not zero & i+m < b
3*6ca2c52aSchristos# mach: bfin
4*6ca2c52aSchristos
5*6ca2c52aSchristos.include "testutils.inc"
6*6ca2c52aSchristos	start
7*6ca2c52aSchristos
8*6ca2c52aSchristos
9*6ca2c52aSchristosINIT_R_REGS 0;
10*6ca2c52aSchristos
11*6ca2c52aSchristosimm32 i0, 0x00001000;
12*6ca2c52aSchristosimm32 i1, 0x00001100;
13*6ca2c52aSchristosimm32 i2, 0x00001010;
14*6ca2c52aSchristosimm32 i3, 0x00001001;
15*6ca2c52aSchristos
16*6ca2c52aSchristosimm32 b0, 0x0000110e;
17*6ca2c52aSchristosimm32 b1, 0x0000110c;
18*6ca2c52aSchristosimm32 b2, 0x0000110a;
19*6ca2c52aSchristosimm32 b3, 0x00001108;
20*6ca2c52aSchristos
21*6ca2c52aSchristosimm32 l0, 0x000000a1;
22*6ca2c52aSchristosimm32 l1, 0x000000b2;
23*6ca2c52aSchristosimm32 l2, 0x000000c3;
24*6ca2c52aSchristosimm32 l3, 0x000000d4;
25*6ca2c52aSchristos
26*6ca2c52aSchristosimm32 m0, 0x00000005;
27*6ca2c52aSchristosimm32 m1, 0x00000004;
28*6ca2c52aSchristosimm32 m2, 0x00000003;
29*6ca2c52aSchristosimm32 m3, 0x00000002;
30*6ca2c52aSchristos
31*6ca2c52aSchristos I0 += M0;
32*6ca2c52aSchristos I1 += M1;
33*6ca2c52aSchristos I2 += M2;
34*6ca2c52aSchristos I3 += M3;
35*6ca2c52aSchristosR0 = I0;
36*6ca2c52aSchristosR1 = I1;
37*6ca2c52aSchristosR2 = I2;
38*6ca2c52aSchristosR3 = I3;
39*6ca2c52aSchristos I0 += M1;
40*6ca2c52aSchristos I1 += M2;
41*6ca2c52aSchristos I2 += M3;
42*6ca2c52aSchristos I3 += M0;
43*6ca2c52aSchristosR4 = I0;
44*6ca2c52aSchristosR5 = I1;
45*6ca2c52aSchristosR6 = I2;
46*6ca2c52aSchristosR7 = I3;
47*6ca2c52aSchristosCHECKREG r0, 0x00001005;
48*6ca2c52aSchristosCHECKREG r1, 0x00001104;
49*6ca2c52aSchristosCHECKREG r2, 0x00001013;
50*6ca2c52aSchristosCHECKREG r3, 0x00001003;
51*6ca2c52aSchristosCHECKREG r4, 0x00001009;
52*6ca2c52aSchristosCHECKREG r5, 0x00001107;
53*6ca2c52aSchristosCHECKREG r6, 0x00001015;
54*6ca2c52aSchristosCHECKREG r7, 0x00001008;
55*6ca2c52aSchristos
56*6ca2c52aSchristos
57*6ca2c52aSchristos I0 -= M2;
58*6ca2c52aSchristos I1 -= M3;
59*6ca2c52aSchristos I2 -= M0;
60*6ca2c52aSchristos I3 -= M1;
61*6ca2c52aSchristosR0 = I0;
62*6ca2c52aSchristosR1 = I1;
63*6ca2c52aSchristosR2 = I2;
64*6ca2c52aSchristosR3 = I3;
65*6ca2c52aSchristos I0 -= M3;
66*6ca2c52aSchristos I1 -= M2;
67*6ca2c52aSchristos I2 -= M1;
68*6ca2c52aSchristos I3 -= M0;
69*6ca2c52aSchristosR4 = I0;
70*6ca2c52aSchristosR5 = I1;
71*6ca2c52aSchristosR6 = I2;
72*6ca2c52aSchristosR7 = I3;
73*6ca2c52aSchristosCHECKREG r0, 0x000010A7;
74*6ca2c52aSchristosCHECKREG r1, 0x000011B7;
75*6ca2c52aSchristosCHECKREG r2, 0x000010D3;
76*6ca2c52aSchristosCHECKREG r3, 0x000010D8;
77*6ca2c52aSchristosCHECKREG r4, 0x00001146;
78*6ca2c52aSchristosCHECKREG r5, 0x000011B4;
79*6ca2c52aSchristosCHECKREG r6, 0x00001192;
80*6ca2c52aSchristosCHECKREG r7, 0x000011A7;
81*6ca2c52aSchristos
82*6ca2c52aSchristos I0 += M3 (BREV);
83*6ca2c52aSchristos I1 += M0 (BREV);
84*6ca2c52aSchristos I2 += M1 (BREV);
85*6ca2c52aSchristos I3 += M2 (BREV);
86*6ca2c52aSchristosR0 = I0;
87*6ca2c52aSchristosR1 = I1;
88*6ca2c52aSchristosR2 = I2;
89*6ca2c52aSchristosR3 = I3;
90*6ca2c52aSchristos I0 += M2 (BREV);
91*6ca2c52aSchristos I1 += M3 (BREV);
92*6ca2c52aSchristos I2 += M0 (BREV);
93*6ca2c52aSchristos I3 += M1 (BREV);
94*6ca2c52aSchristosR4 = I0;
95*6ca2c52aSchristosR5 = I1;
96*6ca2c52aSchristosR6 = I2;
97*6ca2c52aSchristosR7 = I3;
98*6ca2c52aSchristosCHECKREG r0, 0x00001145;
99*6ca2c52aSchristosCHECKREG r1, 0x000011B3;
100*6ca2c52aSchristosCHECKREG r2, 0x00001196;
101*6ca2c52aSchristosCHECKREG r3, 0x000011A5;
102*6ca2c52aSchristosCHECKREG r4, 0x00001146;
103*6ca2c52aSchristosCHECKREG r5, 0x000011B0;
104*6ca2c52aSchristosCHECKREG r6, 0x00001190;
105*6ca2c52aSchristosCHECKREG r7, 0x000011A3;
106*6ca2c52aSchristos
107*6ca2c52aSchristos
108*6ca2c52aSchristos
109*6ca2c52aSchristospass
110