]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blob - sim/testsuite/sim/bfin/c_cactrl_iflush_pr_pp.s
sim: bfin: import testsuite
[thirdparty/binutils-gdb.git] / sim / testsuite / sim / bfin / c_cactrl_iflush_pr_pp.s
1 //Original:/proj/frio/dv/testcases/core/c_cactrl_iflush_pr_pp/c_cactrl_iflush_pr_pp.dsp
2 // Spec Reference: c_cactrl iflush_pr [p++]
3 # mach: bfin
4
5 .include "testutils.inc"
6 start
7
8 loadsym p2, SUBR1;
9 // set all regs
10
11 imm32 r0, 0x13545abd;
12 imm32 r1, 0xadbcfec7;
13 imm32 r2, 0xa1245679;
14 imm32 r3, 0x00060007;
15 imm32 r4, 0xefbc4569;
16 imm32 r5, 0x1235000b;
17 imm32 r6, 0x000c000d;
18 imm32 r7, 0x678e000f;
19 // The result accumulated in A0 and A1, and stored to a reg half
20 R2.H = ( A1 = R1.L * R0.H ), A0 = R1.H * R0.L;
21 R3.H = A1 , A0 = R7.H * R6.L (T);
22 // begin of iflush
23 IFLUSH [ P2 ++ ]; // p2 = 0x448
24 R7 = 0;
25 ASTAT = R7;
26 IF !CC JUMP SUBR1;
27 JBACK:
28 R6 = 0;
29
30 //r4 = (a1 = l*h) M, a0 = h*l (r3,r2);
31 //r5 a1 = l*h, = (a0 = h*l) (r1,r0) IS;
32 CHECKREG r2, 0xFFD15679;
33 CHECKREG r3, 0xFFD00007;
34 CHECKREG r4, 0x00074569;
35 CHECKREG r5, 0x12358000;
36 //CHECKREG p2, 0x00000468;
37
38 pass
39
40 //.code 0x448
41 //.code CODE_ADDR_1
42 SUBR1:
43 R4.H = ( A1 = R3.L * R2.H ) (M), A0 = R3.H * R2.L;
44 A1 = R1.L * R0.H, R5.L = ( A0 = R1.H * R0.L ) (ISS2);
45 IF !CC JUMP JBACK;
46 NOP; NOP; NOP; NOP; NOP;
47
48 // Pre-load memory witb known data
49 // More data is defined than will actually be used
50
51 .data
52 DATA_ADDR_1:
53 .dd 0x00010203
54 .dd 0x04050607
55 .dd 0x08090A0B
56 .dd 0x0C0D0E0F
57 .dd 0x10111213
58 .dd 0x14151617
59 .dd 0x18191A1B
60 .dd 0x1C1D1E1F
61
62 DATA_ADDR_2:
63 .dd 0x20212223
64 .dd 0x24252627
65 .dd 0x28292A2B
66 .dd 0x2C2D2E2F
67 .dd 0x30313233
68 .dd 0x34353637
69 .dd 0x38393A3B
70 .dd 0x3C3D3E3F
71
72 DATA_ADDR_3:
73 .dd 0x40414243
74 .dd 0x44454647
75 .dd 0x48494A4B
76 .dd 0x4C4D4E4F
77 .dd 0x50515253
78 .dd 0x54555657
79 .dd 0x58595A5B
80 .dd 0x5C5D5E5F
81
82 DATA_ADDR_4:
83 .dd 0x60616263
84 .dd 0x64656667
85 .dd 0x68696A6B
86 .dd 0x6C6D6E6F
87 .dd 0x70717273
88 .dd 0x74757677
89 .dd 0x78797A7B
90 .dd 0x7C7D7E7F
91
92 DATA_ADDR_5:
93 .dd 0x80818283
94 .dd 0x84858687
95 .dd 0x88898A8B
96 .dd 0x8C8D8E8F
97 .dd 0x90919293
98 .dd 0x94959697
99 .dd 0x98999A9B
100 .dd 0x9C9D9E9F