c_regmv_dr_imlb.s 8.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539
  1. //Original:/testcases/core/c_regmv_dr_imlb/c_regmv_dr_imlb.dsp
  2. // Spec Reference: regmv dreg-to-imlb
  3. # mach: bfin
  4. .include "testutils.inc"
  5. start
  6. // check DR-reg to imlb-reg move
  7. imm32 r0, 0x00000001;
  8. imm32 r1, 0x00020003;
  9. imm32 r2, 0x00040005;
  10. imm32 r3, 0x00060007;
  11. imm32 r4, 0x00080009;
  12. imm32 r5, 0x000a000b;
  13. imm32 r6, 0x000c000d;
  14. imm32 r7, 0x000e000f;
  15. I0 = R0;
  16. I1 = R0;
  17. I2 = R0;
  18. I3 = R0;
  19. M0 = R0;
  20. M1 = R0;
  21. M2 = R0;
  22. M3 = R0;
  23. R0 = I0;
  24. R1 = I1;
  25. R2 = I2;
  26. R3 = I3;
  27. R4 = M0;
  28. R5 = M1;
  29. R6 = M2;
  30. R7 = M3;
  31. CHECKREG r0, 0x00000001;
  32. CHECKREG r1, 0x00000001;
  33. CHECKREG r2, 0x00000001;
  34. CHECKREG r3, 0x00000001;
  35. CHECKREG r4, 0x00000001;
  36. CHECKREG r5, 0x00000001;
  37. CHECKREG r6, 0x00000001;
  38. CHECKREG r7, 0x00000001;
  39. imm32 r0, 0x00000001;
  40. imm32 r1, 0x00020003;
  41. imm32 r2, 0x00040005;
  42. imm32 r3, 0x00060007;
  43. imm32 r4, 0x00080009;
  44. imm32 r5, 0x000a000b;
  45. imm32 r6, 0x000c000d;
  46. imm32 r7, 0x000e000f;
  47. I0 = R1;
  48. I1 = R1;
  49. I2 = R1;
  50. I3 = R1;
  51. M0 = R1;
  52. M1 = R1;
  53. M2 = R1;
  54. M3 = R1;
  55. R0 = I0;
  56. R1 = I1;
  57. R2 = I2;
  58. R3 = I3;
  59. R4 = M0;
  60. R5 = M1;
  61. R6 = M2;
  62. R7 = M3;
  63. CHECKREG r0, 0x00020003;
  64. CHECKREG r1, 0x00020003;
  65. CHECKREG r2, 0x00020003;
  66. CHECKREG r3, 0x00020003;
  67. CHECKREG r4, 0x00020003;
  68. CHECKREG r5, 0x00020003;
  69. CHECKREG r6, 0x00020003;
  70. CHECKREG r7, 0x00020003;
  71. imm32 r0, 0x00000001;
  72. imm32 r1, 0x00020003;
  73. imm32 r2, 0x00040005;
  74. imm32 r3, 0x00060007;
  75. imm32 r4, 0x00080009;
  76. imm32 r5, 0x000a000b;
  77. imm32 r6, 0x000c000d;
  78. imm32 r7, 0x000e000f;
  79. I0 = R2;
  80. I1 = R2;
  81. I2 = R2;
  82. I3 = R2;
  83. M0 = R2;
  84. M1 = R2;
  85. M2 = R2;
  86. M3 = R2;
  87. R0 = I0;
  88. R1 = I1;
  89. R2 = I2;
  90. R3 = I3;
  91. R4 = M0;
  92. R5 = M1;
  93. R6 = M2;
  94. R7 = M3;
  95. CHECKREG r0, 0x00040005;
  96. CHECKREG r1, 0x00040005;
  97. CHECKREG r2, 0x00040005;
  98. CHECKREG r3, 0x00040005;
  99. CHECKREG r4, 0x00040005;
  100. CHECKREG r5, 0x00040005;
  101. CHECKREG r6, 0x00040005;
  102. CHECKREG r7, 0x00040005;
  103. imm32 r0, 0x00000001;
  104. imm32 r1, 0x00020003;
  105. imm32 r2, 0x00040005;
  106. imm32 r3, 0x00060007;
  107. imm32 r4, 0x00080009;
  108. imm32 r5, 0x000a000b;
  109. imm32 r6, 0x000c000d;
  110. imm32 r7, 0x000e000f;
  111. I0 = R3;
  112. I1 = R3;
  113. I2 = R3;
  114. I3 = R3;
  115. M0 = R3;
  116. M1 = R3;
  117. M2 = R3;
  118. M3 = R3;
  119. R0 = I0;
  120. R1 = I1;
  121. R2 = I2;
  122. R3 = I3;
  123. R4 = M0;
  124. R5 = M1;
  125. R6 = M2;
  126. R7 = M3;
  127. CHECKREG r0, 0x00060007;
  128. CHECKREG r1, 0x00060007;
  129. CHECKREG r2, 0x00060007;
  130. CHECKREG r3, 0x00060007;
  131. CHECKREG r4, 0x00060007;
  132. CHECKREG r5, 0x00060007;
  133. CHECKREG r6, 0x00060007;
  134. CHECKREG r7, 0x00060007;
  135. imm32 r0, 0x00000001;
  136. imm32 r1, 0x00020003;
  137. imm32 r2, 0x00040005;
  138. imm32 r3, 0x00060007;
  139. imm32 r4, 0x00080009;
  140. imm32 r5, 0x000a000b;
  141. imm32 r6, 0x000c000d;
  142. imm32 r7, 0x000e000f;
  143. I0 = R4;
  144. I1 = R4;
  145. I2 = R4;
  146. I3 = R4;
  147. M0 = R4;
  148. M1 = R4;
  149. M2 = R4;
  150. M3 = R4;
  151. R0 = I0;
  152. R1 = I1;
  153. R2 = I2;
  154. R3 = I3;
  155. R4 = M0;
  156. R5 = M1;
  157. R6 = M2;
  158. R7 = M3;
  159. CHECKREG r0, 0x00080009;
  160. CHECKREG r1, 0x00080009;
  161. CHECKREG r2, 0x00080009;
  162. CHECKREG r3, 0x00080009;
  163. CHECKREG r4, 0x00080009;
  164. CHECKREG r5, 0x00080009;
  165. CHECKREG r6, 0x00080009;
  166. CHECKREG r7, 0x00080009;
  167. imm32 r0, 0x00000001;
  168. imm32 r1, 0x00020003;
  169. imm32 r2, 0x00040005;
  170. imm32 r3, 0x00060007;
  171. imm32 r4, 0x00080009;
  172. imm32 r5, 0x000a000b;
  173. imm32 r6, 0x000c000d;
  174. imm32 r7, 0x000e000f;
  175. I0 = R5;
  176. I1 = R5;
  177. I2 = R5;
  178. I3 = R5;
  179. M0 = R5;
  180. M1 = R5;
  181. M2 = R5;
  182. M3 = R5;
  183. R0 = I0;
  184. R1 = I1;
  185. R2 = I2;
  186. R3 = I3;
  187. R4 = M0;
  188. R5 = M1;
  189. R6 = M2;
  190. R7 = M3;
  191. CHECKREG r0, 0x000a000b;
  192. CHECKREG r1, 0x000a000b;
  193. CHECKREG r2, 0x000a000b;
  194. CHECKREG r3, 0x000a000b;
  195. CHECKREG r4, 0x000a000b;
  196. CHECKREG r5, 0x000a000b;
  197. CHECKREG r6, 0x000a000b;
  198. CHECKREG r7, 0x000a000b;
  199. imm32 r0, 0x00000001;
  200. imm32 r1, 0x00020003;
  201. imm32 r2, 0x00040005;
  202. imm32 r3, 0x00060007;
  203. imm32 r4, 0x00080009;
  204. imm32 r5, 0x000a000b;
  205. imm32 r6, 0x000c000d;
  206. imm32 r7, 0x000e000f;
  207. I0 = R6;
  208. I1 = R6;
  209. I2 = R6;
  210. I3 = R6;
  211. M0 = R6;
  212. M1 = R6;
  213. M2 = R6;
  214. M3 = R6;
  215. R0 = I0;
  216. R1 = I1;
  217. R2 = I2;
  218. R3 = I3;
  219. R4 = M0;
  220. R5 = M1;
  221. R6 = M2;
  222. R7 = M3;
  223. CHECKREG r0, 0x000c000d;
  224. CHECKREG r1, 0x000c000d;
  225. CHECKREG r2, 0x000c000d;
  226. CHECKREG r3, 0x000c000d;
  227. CHECKREG r4, 0x000c000d;
  228. CHECKREG r5, 0x000c000d;
  229. CHECKREG r6, 0x000c000d;
  230. CHECKREG r7, 0x000c000d;
  231. imm32 r0, 0x00000001;
  232. imm32 r1, 0x00020003;
  233. imm32 r2, 0x00040005;
  234. imm32 r3, 0x00060007;
  235. imm32 r4, 0x00080009;
  236. imm32 r5, 0x000a000b;
  237. imm32 r6, 0x000c000d;
  238. imm32 r7, 0x000e000f;
  239. I0 = R7;
  240. I1 = R7;
  241. I2 = R7;
  242. I3 = R7;
  243. M0 = R7;
  244. M1 = R7;
  245. M2 = R7;
  246. M3 = R7;
  247. R0 = I0;
  248. R1 = I1;
  249. R2 = I2;
  250. R3 = I3;
  251. R4 = M0;
  252. R5 = M1;
  253. R6 = M2;
  254. R7 = M3;
  255. CHECKREG r0, 0x000e000f;
  256. CHECKREG r1, 0x000e000f;
  257. CHECKREG r2, 0x000e000f;
  258. CHECKREG r3, 0x000e000f;
  259. CHECKREG r4, 0x000e000f;
  260. CHECKREG r5, 0x000e000f;
  261. CHECKREG r6, 0x000e000f;
  262. CHECKREG r7, 0x000e000f;
  263. imm32 r0, 0x00000001;
  264. imm32 r1, 0x00020003;
  265. imm32 r2, 0x00040005;
  266. imm32 r3, 0x00060007;
  267. imm32 r4, 0x00080009;
  268. imm32 r5, 0x000a000b;
  269. imm32 r6, 0x000c000d;
  270. imm32 r7, 0x000e000f;
  271. L0 = R0;
  272. L1 = R0;
  273. L2 = R0;
  274. L3 = R0;
  275. B0 = R0;
  276. B1 = R0;
  277. B2 = R0;
  278. B3 = R0;
  279. R0 = L0;
  280. R1 = L1;
  281. R2 = L2;
  282. R3 = L3;
  283. R4 = B0;
  284. R5 = B1;
  285. R6 = B2;
  286. R7 = B3;
  287. CHECKREG r0, 0x00000001;
  288. CHECKREG r1, 0x00000001;
  289. CHECKREG r2, 0x00000001;
  290. CHECKREG r3, 0x00000001;
  291. CHECKREG r4, 0x00000001;
  292. CHECKREG r5, 0x00000001;
  293. CHECKREG r6, 0x00000001;
  294. CHECKREG r7, 0x00000001;
  295. imm32 r0, 0x00000001;
  296. imm32 r1, 0x00020003;
  297. imm32 r2, 0x00040005;
  298. imm32 r3, 0x00060007;
  299. imm32 r4, 0x00080009;
  300. imm32 r5, 0x000a000b;
  301. imm32 r6, 0x000c000d;
  302. imm32 r7, 0x000e000f;
  303. L0 = R1;
  304. L1 = R1;
  305. L2 = R1;
  306. L3 = R1;
  307. B0 = R1;
  308. B1 = R1;
  309. B2 = R1;
  310. B3 = R1;
  311. R0 = L0;
  312. R1 = L1;
  313. R2 = L2;
  314. R3 = L3;
  315. R4 = B0;
  316. R5 = B1;
  317. R6 = B2;
  318. R7 = B3;
  319. CHECKREG r0, 0x00020003;
  320. CHECKREG r1, 0x00020003;
  321. CHECKREG r2, 0x00020003;
  322. CHECKREG r3, 0x00020003;
  323. CHECKREG r4, 0x00020003;
  324. CHECKREG r5, 0x00020003;
  325. CHECKREG r6, 0x00020003;
  326. CHECKREG r7, 0x00020003;
  327. imm32 r0, 0x00000001;
  328. imm32 r1, 0x00020003;
  329. imm32 r2, 0x00040005;
  330. imm32 r3, 0x00060007;
  331. imm32 r4, 0x00080009;
  332. imm32 r5, 0x000a000b;
  333. imm32 r6, 0x000c000d;
  334. imm32 r7, 0x000e000f;
  335. L0 = R2;
  336. L1 = R2;
  337. L2 = R2;
  338. L3 = R2;
  339. B0 = R2;
  340. B1 = R2;
  341. B2 = R2;
  342. B3 = R2;
  343. R0 = L0;
  344. R1 = L1;
  345. R2 = L2;
  346. R3 = L3;
  347. R4 = B0;
  348. R5 = B1;
  349. R6 = B2;
  350. R7 = B3;
  351. CHECKREG r0, 0x00040005;
  352. CHECKREG r1, 0x00040005;
  353. CHECKREG r2, 0x00040005;
  354. CHECKREG r3, 0x00040005;
  355. CHECKREG r4, 0x00040005;
  356. CHECKREG r5, 0x00040005;
  357. CHECKREG r6, 0x00040005;
  358. CHECKREG r7, 0x00040005;
  359. imm32 r0, 0x00000001;
  360. imm32 r1, 0x00020003;
  361. imm32 r2, 0x00040005;
  362. imm32 r3, 0x00060007;
  363. imm32 r4, 0x00080009;
  364. imm32 r5, 0x000a000b;
  365. imm32 r6, 0x000c000d;
  366. imm32 r7, 0x000e000f;
  367. L0 = R3;
  368. L1 = R3;
  369. L2 = R3;
  370. L3 = R3;
  371. B0 = R3;
  372. B1 = R3;
  373. B2 = R3;
  374. B3 = R3;
  375. R0 = L0;
  376. R1 = L1;
  377. R2 = L2;
  378. R3 = L3;
  379. R4 = B0;
  380. R5 = B1;
  381. R6 = B2;
  382. R7 = B3;
  383. CHECKREG r0, 0x00060007;
  384. CHECKREG r1, 0x00060007;
  385. CHECKREG r2, 0x00060007;
  386. CHECKREG r3, 0x00060007;
  387. CHECKREG r4, 0x00060007;
  388. CHECKREG r5, 0x00060007;
  389. CHECKREG r6, 0x00060007;
  390. CHECKREG r7, 0x00060007;
  391. imm32 r0, 0x00000001;
  392. imm32 r1, 0x00020003;
  393. imm32 r2, 0x00040005;
  394. imm32 r3, 0x00060007;
  395. imm32 r4, 0x00080009;
  396. imm32 r5, 0x000a000b;
  397. imm32 r6, 0x000c000d;
  398. imm32 r7, 0x000e000f;
  399. L0 = R4;
  400. L1 = R4;
  401. L2 = R4;
  402. L3 = R4;
  403. B0 = R4;
  404. B1 = R4;
  405. B2 = R4;
  406. B3 = R4;
  407. R0 = L0;
  408. R1 = L1;
  409. R2 = L2;
  410. R3 = L3;
  411. R4 = B0;
  412. R5 = B1;
  413. R6 = B2;
  414. R7 = B3;
  415. CHECKREG r0, 0x00080009;
  416. CHECKREG r1, 0x00080009;
  417. CHECKREG r2, 0x00080009;
  418. CHECKREG r3, 0x00080009;
  419. CHECKREG r4, 0x00080009;
  420. CHECKREG r5, 0x00080009;
  421. CHECKREG r6, 0x00080009;
  422. CHECKREG r7, 0x00080009;
  423. imm32 r0, 0x00000001;
  424. imm32 r1, 0x00020003;
  425. imm32 r2, 0x00040005;
  426. imm32 r3, 0x00060007;
  427. imm32 r4, 0x00080009;
  428. imm32 r5, 0x000a000b;
  429. imm32 r6, 0x000c000d;
  430. imm32 r7, 0x000e000f;
  431. L0 = R5;
  432. L1 = R5;
  433. L2 = R5;
  434. L3 = R5;
  435. B0 = R5;
  436. B1 = R5;
  437. B2 = R5;
  438. B3 = R5;
  439. R0 = L0;
  440. R1 = L1;
  441. R2 = L2;
  442. R3 = L3;
  443. R4 = B0;
  444. R5 = B1;
  445. R6 = B2;
  446. R7 = B3;
  447. CHECKREG r0, 0x000a000b;
  448. CHECKREG r1, 0x000a000b;
  449. CHECKREG r2, 0x000a000b;
  450. CHECKREG r3, 0x000a000b;
  451. CHECKREG r4, 0x000a000b;
  452. CHECKREG r5, 0x000a000b;
  453. CHECKREG r6, 0x000a000b;
  454. CHECKREG r7, 0x000a000b;
  455. imm32 r0, 0x00000001;
  456. imm32 r1, 0x00020003;
  457. imm32 r2, 0x00040005;
  458. imm32 r3, 0x00060007;
  459. imm32 r4, 0x00080009;
  460. imm32 r5, 0x000a000b;
  461. imm32 r6, 0x000c000d;
  462. imm32 r7, 0x000e000f;
  463. L0 = R6;
  464. L1 = R6;
  465. L2 = R6;
  466. L3 = R6;
  467. B0 = R6;
  468. B1 = R6;
  469. B2 = R6;
  470. B3 = R6;
  471. R0 = L0;
  472. R1 = L1;
  473. R2 = L2;
  474. R3 = L3;
  475. R4 = B0;
  476. R5 = B1;
  477. R6 = B2;
  478. R7 = B3;
  479. CHECKREG r0, 0x000c000d;
  480. CHECKREG r1, 0x000c000d;
  481. CHECKREG r2, 0x000c000d;
  482. CHECKREG r3, 0x000c000d;
  483. CHECKREG r4, 0x000c000d;
  484. CHECKREG r5, 0x000c000d;
  485. CHECKREG r6, 0x000c000d;
  486. CHECKREG r7, 0x000c000d;
  487. imm32 r0, 0x00000001;
  488. imm32 r1, 0x00020003;
  489. imm32 r2, 0x00040005;
  490. imm32 r3, 0x00060007;
  491. imm32 r4, 0x00080009;
  492. imm32 r5, 0x000a000b;
  493. imm32 r6, 0x000c000d;
  494. imm32 r7, 0x000e000f;
  495. L0 = R7;
  496. L1 = R7;
  497. L2 = R7;
  498. L3 = R7;
  499. B0 = R7;
  500. B1 = R7;
  501. B2 = R7;
  502. B3 = R7;
  503. R0 = L0;
  504. R1 = L1;
  505. R2 = L2;
  506. R3 = L3;
  507. R4 = B0;
  508. R5 = B1;
  509. R6 = B2;
  510. R7 = B3;
  511. CHECKREG r0, 0x000e000f;
  512. CHECKREG r1, 0x000e000f;
  513. CHECKREG r2, 0x000e000f;
  514. CHECKREG r3, 0x000e000f;
  515. CHECKREG r4, 0x000e000f;
  516. CHECKREG r5, 0x000e000f;
  517. CHECKREG r6, 0x000e000f;
  518. CHECKREG r7, 0x000e000f;
  519. pass