1//Original:/proj/frio/dv/testcases/core/c_regmv_pr_dep_stall/c_regmv_pr_dep_stall.dsp 2// Spec Reference: regmv pr-dependency stall 3# mach: bfin 4 5.include "testutils.inc" 6 start 7 8 INIT_M_REGS 0; 9 10// R-reg to P-reg to R reg: stall 11 imm32 r0, 0x00001110; 12 imm32 r1, 0x00213330; 13 imm32 r2, 0x04015550; 14 imm32 r3, 0x06607770; 15 imm32 r4, 0x08810990; 16 imm32 r5, 0x01a1b0b0; 17 imm32 r6, 0x01c1dd00; 18 imm32 r7, 0x01e1fff0; 19 P1 = R1; 20 R0 = P1; 21 P2 = R2; 22 R1 = P2; 23 P3 = R3; 24 R2 = P3; 25 P4 = R4; 26 R3 = P4; 27 P5 = R5; 28 R4 = P5; 29 SP = R6; 30 R5 = P2; 31 FP = R7; 32 R6 = P3; 33 34 CHECKREG r0, 0x00213330; 35 CHECKREG r1, 0x04015550; 36 CHECKREG r2, 0x06607770; 37 CHECKREG r3, 0x08810990; 38 CHECKREG r4, 0x01A1B0B0; 39 CHECKREG r5, 0x04015550; 40 CHECKREG r6, 0x06607770; 41 CHECKREG r7, 0x01E1FFF0; 42 43// R-reg to P-reg to I,M reg: stall 44 imm32 r0, 0x10001111; 45 imm32 r1, 0x11213331; 46 imm32 r2, 0x14115551; 47 imm32 r3, 0x16617771; 48 imm32 r4, 0x18811991; 49 imm32 r5, 0x11a1b1b1; 50 imm32 r6, 0x11c1dd11; 51 imm32 r7, 0x11e1fff1; 52 P1 = R0; 53 I0 = P1; 54 P2 = R1; 55 I1 = P2; 56 P3 = R2; 57 I2 = P3; 58 P4 = R3; 59 I3 = P4; 60 P5 = R4; 61 M0 = P5; 62 SP = R5; 63 M1 = SP; 64 FP = R6; 65 M2 = FP; 66 67 R0 = I3; 68 R1 = I2; 69 R2 = I1; 70 R3 = I0; 71 R4 = M3; 72 R5 = M2; 73 R6 = M1; 74 R7 = M0; 75 CHECKREG r0, 0x16617771; 76 CHECKREG r1, 0x14115551; 77 CHECKREG r2, 0x11213331; 78 CHECKREG r3, 0x10001111; 79 CHECKREG r4, 0x00000000; 80 CHECKREG r5, 0x11C1DD11; 81 CHECKREG r6, 0x11A1B1B1; 82 CHECKREG r7, 0x18811991; 83 84 CHECKREG p1, 0x10001111; 85 CHECKREG p2, 0x11213331; 86 CHECKREG p3, 0x14115551; 87 CHECKREG p4, 0x16617771; 88 CHECKREG p5, 0x18811991; 89 CHECKREG sp, 0x11A1B1B1; 90 CHECKREG fp, 0x11C1DD11; 91 92 imm32 r0, 0x20001112; 93 imm32 r1, 0x21213332; 94 imm32 r2, 0x24115552; 95 imm32 r3, 0x26617772; 96 imm32 r4, 0x28811992; 97 imm32 r5, 0x21a1b1b2; 98 imm32 r6, 0x21c1dd12; 99 imm32 r7, 0x21e1fff2; 100 P1 = R3; 101 I3 = P1; 102 P2 = R4; 103 I0 = P2; 104 P3 = R5; 105 I1 = P3; 106 P4 = R6; 107 I2 = P4; 108 P5 = R7; 109 M1 = P5; 110 SP = R0; 111 M2 = SP; 112 FP = R1; 113 M3 = FP; 114 115 R0 = I3; 116 R1 = I2; 117 R2 = I1; 118 R3 = I0; 119 R4 = M3; 120 R5 = M2; 121 R6 = M1; 122 R7 = M0; 123 CHECKREG r0, 0x26617772; 124 CHECKREG r1, 0x21C1DD12; 125 CHECKREG r2, 0x21A1B1B2; 126 CHECKREG r3, 0x28811992; 127 CHECKREG r4, 0x21213332; 128 CHECKREG r5, 0x20001112; 129 CHECKREG r6, 0x21E1FFF2; 130 CHECKREG r7, 0x18811991; 131 132 CHECKREG p1, 0x26617772; 133 CHECKREG p2, 0x28811992; 134 CHECKREG p3, 0x21A1B1B2; 135 CHECKREG p4, 0x21C1DD12; 136 CHECKREG p5, 0x21E1FFF2; 137 CHECKREG sp, 0x20001112; 138 CHECKREG fp, 0x21213332; 139 140// R-reg to P-reg to L,B reg: stall 141 imm32 r0, 0x30001113; 142 imm32 r1, 0x31213333; 143 imm32 r2, 0x34115553; 144 imm32 r3, 0x36617773; 145 imm32 r4, 0x38811993; 146 imm32 r5, 0x31a1b1b3; 147 imm32 r6, 0x31c1dd13; 148 imm32 r7, 0x31e1fff3; 149 P1 = R4; 150 L0 = P1; 151 P2 = R5; 152 L1 = P2; 153 P3 = R6; 154 L2 = P3; 155 P4 = R7; 156 L3 = P4; 157 P5 = R0; 158 B0 = P5; 159 SP = R1; 160 B1 = SP; 161 FP = R2; 162 B2 = FP; 163 164 R0 = L3; 165 R1 = L2; 166 R2 = L1; 167 R3 = L0; 168 R4 = B3; 169 R5 = B2; 170 R6 = B1; 171 R7 = B0; 172 CHECKREG r0, 0x31E1FFF3; 173 CHECKREG r1, 0x31C1DD13; 174 CHECKREG r2, 0x31A1B1B3; 175 CHECKREG r3, 0x38811993; 176 CHECKREG r4, 0x00000000; 177 CHECKREG r5, 0x34115553; 178 CHECKREG r6, 0x31213333; 179 CHECKREG r7, 0x30001113; 180 181 CHECKREG p1, 0x38811993; 182 CHECKREG p2, 0x31A1B1B3; 183 CHECKREG p3, 0x31C1DD13; 184 CHECKREG p4, 0x31E1FFF3; 185 CHECKREG p5, 0x30001113; 186 CHECKREG sp, 0x31213333; 187 CHECKREG fp, 0x34115553; 188 189 imm32 r0, 0x40001114; 190 imm32 r1, 0x44213334; 191 imm32 r2, 0x44415554; 192 imm32 r3, 0x46647774; 193 imm32 r4, 0x48814994; 194 imm32 r5, 0x41a1b4b4; 195 imm32 r6, 0x41c1dd44; 196 imm32 r7, 0x41e1fff4; 197 P1 = R5; 198 L2 = P1; 199 P2 = R6; 200 L3 = P2; 201 P3 = R7; 202 L0 = P3; 203 P4 = R0; 204 L1 = P4; 205 P5 = R1; 206 B2 = P5; 207 SP = R2; 208 B3 = SP; 209 FP = R3; 210 B0 = FP; 211 212 R0 = L3; 213 R1 = L2; 214 R2 = L1; 215 R3 = L0; 216 R4 = B3; 217 R5 = B2; 218 R6 = B1; 219 R7 = B0; 220 CHECKREG r0, 0x41C1DD44; 221 CHECKREG r1, 0x41A1B4B4; 222 CHECKREG r2, 0x40001114; 223 CHECKREG r3, 0x41E1FFF4; 224 CHECKREG r4, 0x44415554; 225 CHECKREG r5, 0x44213334; 226 CHECKREG r6, 0x31213333; 227 CHECKREG r7, 0x46647774; 228 229 CHECKREG p1, 0x41A1B4B4; 230 CHECKREG p2, 0x41C1DD44; 231 CHECKREG p3, 0x41E1FFF4; 232 CHECKREG p4, 0x40001114; 233 CHECKREG p5, 0x44213334; 234 CHECKREG sp, 0x44415554; 235 CHECKREG fp, 0x46647774; 236 237 pass 238