insn_CMP.awl 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716
  1. // Test ==I
  2. __STWRST
  3. L 123
  4. L 123
  5. ==I
  6. __ASSERT== __STW VKE, 1
  7. __ASSERT== __STW A0, 0
  8. __ASSERT== __STW A1, 0
  9. __STWRST
  10. L -123
  11. L 123
  12. ==I
  13. __ASSERT== __STW VKE, 0
  14. __ASSERT== __STW A0, 1
  15. __ASSERT== __STW A1, 0
  16. __STWRST
  17. L 123
  18. L -123
  19. ==I
  20. __ASSERT== __STW VKE, 0
  21. __ASSERT== __STW A0, 0
  22. __ASSERT== __STW A1, 1
  23. __STWRST
  24. L DW#16#FFFFF123
  25. L DW#16#0000F123
  26. ==I
  27. __ASSERT== __STW VKE, 1
  28. __ASSERT== __STW A0, 0
  29. __ASSERT== __STW A1, 0
  30. // Test <>I
  31. __STWRST
  32. L 123
  33. L 123
  34. <>I
  35. __ASSERT== __STW VKE, 0
  36. __ASSERT== __STW A0, 0
  37. __ASSERT== __STW A1, 0
  38. __STWRST
  39. L -123
  40. L 123
  41. <>I
  42. __ASSERT== __STW VKE, 1
  43. __ASSERT== __STW A0, 1
  44. __ASSERT== __STW A1, 0
  45. __STWRST
  46. L 123
  47. L -123
  48. <>I
  49. __ASSERT== __STW VKE, 1
  50. __ASSERT== __STW A0, 0
  51. __ASSERT== __STW A1, 1
  52. __STWRST
  53. L DW#16#FFFFF123
  54. L DW#16#0000F123
  55. <>I
  56. __ASSERT== __STW VKE, 0
  57. __ASSERT== __STW A0, 0
  58. __ASSERT== __STW A1, 0
  59. // Test >I
  60. __STWRST
  61. L 123
  62. L 123
  63. >I
  64. __ASSERT== __STW VKE, 0
  65. __ASSERT== __STW A0, 0
  66. __ASSERT== __STW A1, 0
  67. __STWRST
  68. L -123
  69. L 123
  70. >I
  71. __ASSERT== __STW VKE, 0
  72. __ASSERT== __STW A0, 1
  73. __ASSERT== __STW A1, 0
  74. __STWRST
  75. L 123
  76. L -123
  77. >I
  78. __ASSERT== __STW VKE, 1
  79. __ASSERT== __STW A0, 0
  80. __ASSERT== __STW A1, 1
  81. __STWRST
  82. L DW#16#FFFFF123
  83. L DW#16#0000F123
  84. >I
  85. __ASSERT== __STW VKE, 0
  86. __ASSERT== __STW A0, 0
  87. __ASSERT== __STW A1, 0
  88. // Test <I
  89. __STWRST
  90. L 123
  91. L 123
  92. <I
  93. __ASSERT== __STW VKE, 0
  94. __ASSERT== __STW A0, 0
  95. __ASSERT== __STW A1, 0
  96. __STWRST
  97. L -123
  98. L 123
  99. <I
  100. __ASSERT== __STW VKE, 1
  101. __ASSERT== __STW A0, 1
  102. __ASSERT== __STW A1, 0
  103. __STWRST
  104. L 123
  105. L -123
  106. <I
  107. __ASSERT== __STW VKE, 0
  108. __ASSERT== __STW A0, 0
  109. __ASSERT== __STW A1, 1
  110. __STWRST
  111. L DW#16#0000F123
  112. L DW#16#FFFFF123
  113. <I
  114. __ASSERT== __STW VKE, 0
  115. __ASSERT== __STW A0, 0
  116. __ASSERT== __STW A1, 0
  117. // Test >=I
  118. __STWRST
  119. L 123
  120. L 123
  121. >=I
  122. __ASSERT== __STW VKE, 1
  123. __ASSERT== __STW A0, 0
  124. __ASSERT== __STW A1, 0
  125. __STWRST
  126. L -123
  127. L 123
  128. >=I
  129. __ASSERT== __STW VKE, 0
  130. __ASSERT== __STW A0, 1
  131. __ASSERT== __STW A1, 0
  132. __STWRST
  133. L 123
  134. L -123
  135. >=I
  136. __ASSERT== __STW VKE, 1
  137. __ASSERT== __STW A0, 0
  138. __ASSERT== __STW A1, 1
  139. __STWRST
  140. L DW#16#FFFFF123
  141. L DW#16#0000F123
  142. >=I
  143. __ASSERT== __STW VKE, 1
  144. __ASSERT== __STW A0, 0
  145. __ASSERT== __STW A1, 0
  146. // Test <=I
  147. __STWRST
  148. L 123
  149. L 123
  150. <=I
  151. __ASSERT== __STW VKE, 1
  152. __ASSERT== __STW A0, 0
  153. __ASSERT== __STW A1, 0
  154. __STWRST
  155. L -123
  156. L 123
  157. <=I
  158. __ASSERT== __STW VKE, 1
  159. __ASSERT== __STW A0, 1
  160. __ASSERT== __STW A1, 0
  161. __STWRST
  162. L 123
  163. L -123
  164. <=I
  165. __ASSERT== __STW VKE, 0
  166. __ASSERT== __STW A0, 0
  167. __ASSERT== __STW A1, 1
  168. __STWRST
  169. L DW#16#FFFFF123
  170. L DW#16#0000F123
  171. <=I
  172. __ASSERT== __STW VKE, 1
  173. __ASSERT== __STW A0, 0
  174. __ASSERT== __STW A1, 0
  175. // Test ==D
  176. __STWRST
  177. L 123
  178. L 123
  179. ==D
  180. __ASSERT== __STW VKE, 1
  181. __ASSERT== __STW A0, 0
  182. __ASSERT== __STW A1, 0
  183. __STWRST
  184. L L#-123
  185. L 123
  186. ==D
  187. __ASSERT== __STW VKE, 0
  188. __ASSERT== __STW A0, 1
  189. __ASSERT== __STW A1, 0
  190. __STWRST
  191. L 123
  192. L L#-123
  193. ==D
  194. __ASSERT== __STW VKE, 0
  195. __ASSERT== __STW A0, 0
  196. __ASSERT== __STW A1, 1
  197. __STWRST
  198. L DW#16#FFFFF123
  199. L DW#16#0000F123
  200. ==D
  201. __ASSERT== __STW VKE, 0
  202. __ASSERT== __STW A0, 1
  203. __ASSERT== __STW A1, 0
  204. // Test <>D
  205. __STWRST
  206. L 123
  207. L 123
  208. <>D
  209. __ASSERT== __STW VKE, 0
  210. __ASSERT== __STW A0, 0
  211. __ASSERT== __STW A1, 0
  212. __STWRST
  213. L L#-123
  214. L 123
  215. <>D
  216. __ASSERT== __STW VKE, 1
  217. __ASSERT== __STW A0, 1
  218. __ASSERT== __STW A1, 0
  219. __STWRST
  220. L 123
  221. L L#-123
  222. <>D
  223. __ASSERT== __STW VKE, 1
  224. __ASSERT== __STW A0, 0
  225. __ASSERT== __STW A1, 1
  226. __STWRST
  227. L DW#16#FFFFF123
  228. L DW#16#0000F123
  229. <>D
  230. __ASSERT== __STW VKE, 1
  231. __ASSERT== __STW A0, 1
  232. __ASSERT== __STW A1, 0
  233. // Test >D
  234. __STWRST
  235. L 123
  236. L 123
  237. >D
  238. __ASSERT== __STW VKE, 0
  239. __ASSERT== __STW A0, 0
  240. __ASSERT== __STW A1, 0
  241. __STWRST
  242. L L#-123
  243. L 123
  244. >D
  245. __ASSERT== __STW VKE, 0
  246. __ASSERT== __STW A0, 1
  247. __ASSERT== __STW A1, 0
  248. __STWRST
  249. L 123
  250. L L#-123
  251. >D
  252. __ASSERT== __STW VKE, 1
  253. __ASSERT== __STW A0, 0
  254. __ASSERT== __STW A1, 1
  255. __STWRST
  256. L DW#16#FFFFF123
  257. L DW#16#0000F123
  258. >D
  259. __ASSERT== __STW VKE, 0
  260. __ASSERT== __STW A0, 1
  261. __ASSERT== __STW A1, 0
  262. // Test <D
  263. __STWRST
  264. L 123
  265. L 123
  266. <D
  267. __ASSERT== __STW VKE, 0
  268. __ASSERT== __STW A0, 0
  269. __ASSERT== __STW A1, 0
  270. __STWRST
  271. L L#-123
  272. L 123
  273. <D
  274. __ASSERT== __STW VKE, 1
  275. __ASSERT== __STW A0, 1
  276. __ASSERT== __STW A1, 0
  277. __STWRST
  278. L 123
  279. L L#-123
  280. <D
  281. __ASSERT== __STW VKE, 0
  282. __ASSERT== __STW A0, 0
  283. __ASSERT== __STW A1, 1
  284. __STWRST
  285. L DW#16#0000F123
  286. L DW#16#FFFFF123
  287. <D
  288. __ASSERT== __STW VKE, 0
  289. __ASSERT== __STW A0, 0
  290. __ASSERT== __STW A1, 1
  291. // Test >=D
  292. __STWRST
  293. L 123
  294. L 123
  295. >=D
  296. __ASSERT== __STW VKE, 1
  297. __ASSERT== __STW A0, 0
  298. __ASSERT== __STW A1, 0
  299. __STWRST
  300. L L#-123
  301. L 123
  302. >=D
  303. __ASSERT== __STW VKE, 0
  304. __ASSERT== __STW A0, 1
  305. __ASSERT== __STW A1, 0
  306. __STWRST
  307. L 123
  308. L L#-123
  309. >=D
  310. __ASSERT== __STW VKE, 1
  311. __ASSERT== __STW A0, 0
  312. __ASSERT== __STW A1, 1
  313. __STWRST
  314. L DW#16#FFFFF123
  315. L DW#16#0000F123
  316. >=D
  317. __ASSERT== __STW VKE, 0
  318. __ASSERT== __STW A0, 1
  319. __ASSERT== __STW A1, 0
  320. // Test <=D
  321. __STWRST
  322. L 123
  323. L 123
  324. <=D
  325. __ASSERT== __STW VKE, 1
  326. __ASSERT== __STW A0, 0
  327. __ASSERT== __STW A1, 0
  328. __STWRST
  329. L L#-123
  330. L 123
  331. <=D
  332. __ASSERT== __STW VKE, 1
  333. __ASSERT== __STW A0, 1
  334. __ASSERT== __STW A1, 0
  335. __STWRST
  336. L 123
  337. L L#-123
  338. <=D
  339. __ASSERT== __STW VKE, 0
  340. __ASSERT== __STW A0, 0
  341. __ASSERT== __STW A1, 1
  342. __STWRST
  343. L DW#16#FFFFF123
  344. L DW#16#0000F123
  345. <=D
  346. __ASSERT== __STW VKE, 1
  347. __ASSERT== __STW A0, 1
  348. __ASSERT== __STW A1, 0
  349. // Test ==R
  350. __STWRST
  351. L 1.5
  352. L 1.5
  353. ==R
  354. __ASSERT== __STW VKE, 1
  355. __ASSERT== __STW A0, 0
  356. __ASSERT== __STW A1, 0
  357. __ASSERT== __STW OV, 0
  358. __ASSERT== __STW OS, 0
  359. __STWRST
  360. L -1.5
  361. L 1.5
  362. ==R
  363. __ASSERT== __STW VKE, 0
  364. __ASSERT== __STW A0, 1
  365. __ASSERT== __STW A1, 0
  366. __ASSERT== __STW OV, 0
  367. __ASSERT== __STW OS, 0
  368. __STWRST
  369. L 1.5
  370. L -1.5
  371. ==R
  372. __ASSERT== __STW VKE, 0
  373. __ASSERT== __STW A0, 0
  374. __ASSERT== __STW A1, 1
  375. __ASSERT== __STW OV, 0
  376. __ASSERT== __STW OS, 0
  377. __STWRST
  378. L -1.5
  379. L -1.5
  380. ==R
  381. __ASSERT== __STW VKE, 1
  382. __ASSERT== __STW A0, 0
  383. __ASSERT== __STW A1, 0
  384. __ASSERT== __STW OV, 0
  385. __ASSERT== __STW OS, 0
  386. __STWRST
  387. L __CNST_NNAN
  388. L __CNST_NNAN
  389. ==R
  390. __ASSERT== __STW VKE, 0
  391. __ASSERT== __STW A0, 1
  392. __ASSERT== __STW A1, 1
  393. __ASSERT== __STW OV, 1
  394. __ASSERT== __STW OS, 1
  395. __STWRST
  396. L __CNST_PNAN
  397. L __CNST_PNAN
  398. ==R
  399. __ASSERT== __STW VKE, 0
  400. __ASSERT== __STW A0, 1
  401. __ASSERT== __STW A1, 1
  402. __ASSERT== __STW OV, 1
  403. __ASSERT== __STW OS, 1
  404. // Test <>R
  405. __STWRST
  406. L 1.5
  407. L 1.5
  408. <>R
  409. __ASSERT== __STW VKE, 0
  410. __ASSERT== __STW A0, 0
  411. __ASSERT== __STW A1, 0
  412. __ASSERT== __STW OV, 0
  413. __ASSERT== __STW OS, 0
  414. __STWRST
  415. L -1.5
  416. L 1.5
  417. <>R
  418. __ASSERT== __STW VKE, 1
  419. __ASSERT== __STW A0, 1
  420. __ASSERT== __STW A1, 0
  421. __ASSERT== __STW OV, 0
  422. __ASSERT== __STW OS, 0
  423. __STWRST
  424. L 1.5
  425. L -1.5
  426. <>R
  427. __ASSERT== __STW VKE, 1
  428. __ASSERT== __STW A0, 0
  429. __ASSERT== __STW A1, 1
  430. __ASSERT== __STW OV, 0
  431. __ASSERT== __STW OS, 0
  432. __STWRST
  433. L -1.5
  434. L -1.5
  435. <>R
  436. __ASSERT== __STW VKE, 0
  437. __ASSERT== __STW A0, 0
  438. __ASSERT== __STW A1, 0
  439. __ASSERT== __STW OV, 0
  440. __ASSERT== __STW OS, 0
  441. __STWRST
  442. L __CNST_NNAN
  443. L __CNST_NNAN
  444. <>R
  445. __ASSERT== __STW VKE, 0
  446. __ASSERT== __STW A0, 1
  447. __ASSERT== __STW A1, 1
  448. __ASSERT== __STW OV, 1
  449. __ASSERT== __STW OS, 1
  450. __STWRST
  451. L __CNST_PNAN
  452. L __CNST_PNAN
  453. <>R
  454. __ASSERT== __STW VKE, 0
  455. __ASSERT== __STW A0, 1
  456. __ASSERT== __STW A1, 1
  457. __ASSERT== __STW OV, 1
  458. __ASSERT== __STW OS, 1
  459. // Test >R
  460. __STWRST
  461. L 1.5
  462. L 1.5
  463. >R
  464. __ASSERT== __STW VKE, 0
  465. __ASSERT== __STW A0, 0
  466. __ASSERT== __STW A1, 0
  467. __ASSERT== __STW OV, 0
  468. __ASSERT== __STW OS, 0
  469. __STWRST
  470. L -1.5
  471. L 1.5
  472. >R
  473. __ASSERT== __STW VKE, 0
  474. __ASSERT== __STW A0, 1
  475. __ASSERT== __STW A1, 0
  476. __ASSERT== __STW OV, 0
  477. __ASSERT== __STW OS, 0
  478. __STWRST
  479. L 1.5
  480. L -1.5
  481. >R
  482. __ASSERT== __STW VKE, 1
  483. __ASSERT== __STW A0, 0
  484. __ASSERT== __STW A1, 1
  485. __ASSERT== __STW OV, 0
  486. __ASSERT== __STW OS, 0
  487. __STWRST
  488. L -1.5
  489. L -1.5
  490. >R
  491. __ASSERT== __STW VKE, 0
  492. __ASSERT== __STW A0, 0
  493. __ASSERT== __STW A1, 0
  494. __ASSERT== __STW OV, 0
  495. __ASSERT== __STW OS, 0
  496. __STWRST
  497. L __CNST_NNAN
  498. L __CNST_NNAN
  499. >R
  500. __ASSERT== __STW VKE, 0
  501. __ASSERT== __STW A0, 1
  502. __ASSERT== __STW A1, 1
  503. __ASSERT== __STW OV, 1
  504. __ASSERT== __STW OS, 1
  505. __STWRST
  506. L __CNST_PNAN
  507. L __CNST_PNAN
  508. >R
  509. __ASSERT== __STW VKE, 0
  510. __ASSERT== __STW A0, 1
  511. __ASSERT== __STW A1, 1
  512. __ASSERT== __STW OV, 1
  513. __ASSERT== __STW OS, 1
  514. // Test <R
  515. __STWRST
  516. L 1.5
  517. L 1.5
  518. <R
  519. __ASSERT== __STW VKE, 0
  520. __ASSERT== __STW A0, 0
  521. __ASSERT== __STW A1, 0
  522. __ASSERT== __STW OV, 0
  523. __ASSERT== __STW OS, 0
  524. __STWRST
  525. L -1.5
  526. L 1.5
  527. <R
  528. __ASSERT== __STW VKE, 1
  529. __ASSERT== __STW A0, 1
  530. __ASSERT== __STW A1, 0
  531. __ASSERT== __STW OV, 0
  532. __ASSERT== __STW OS, 0
  533. __STWRST
  534. L 1.5
  535. L -1.5
  536. <R
  537. __ASSERT== __STW VKE, 0
  538. __ASSERT== __STW A0, 0
  539. __ASSERT== __STW A1, 1
  540. __ASSERT== __STW OV, 0
  541. __ASSERT== __STW OS, 0
  542. __STWRST
  543. L -1.5
  544. L -1.5
  545. <R
  546. __ASSERT== __STW VKE, 0
  547. __ASSERT== __STW A0, 0
  548. __ASSERT== __STW A1, 0
  549. __ASSERT== __STW OV, 0
  550. __ASSERT== __STW OS, 0
  551. __STWRST
  552. L __CNST_NNAN
  553. L __CNST_NNAN
  554. <R
  555. __ASSERT== __STW VKE, 0
  556. __ASSERT== __STW A0, 1
  557. __ASSERT== __STW A1, 1
  558. __ASSERT== __STW OV, 1
  559. __ASSERT== __STW OS, 1
  560. __STWRST
  561. L __CNST_PNAN
  562. L __CNST_PNAN
  563. <R
  564. __ASSERT== __STW VKE, 0
  565. __ASSERT== __STW A0, 1
  566. __ASSERT== __STW A1, 1
  567. __ASSERT== __STW OV, 1
  568. __ASSERT== __STW OS, 1
  569. // Test >=R
  570. __STWRST
  571. L 1.5
  572. L 1.5
  573. >=R
  574. __ASSERT== __STW VKE, 1
  575. __ASSERT== __STW A0, 0
  576. __ASSERT== __STW A1, 0
  577. __ASSERT== __STW OV, 0
  578. __ASSERT== __STW OS, 0
  579. __STWRST
  580. L -1.5
  581. L 1.5
  582. >=R
  583. __ASSERT== __STW VKE, 0
  584. __ASSERT== __STW A0, 1
  585. __ASSERT== __STW A1, 0
  586. __ASSERT== __STW OV, 0
  587. __ASSERT== __STW OS, 0
  588. __STWRST
  589. L 1.5
  590. L -1.5
  591. >=R
  592. __ASSERT== __STW VKE, 1
  593. __ASSERT== __STW A0, 0
  594. __ASSERT== __STW A1, 1
  595. __ASSERT== __STW OV, 0
  596. __ASSERT== __STW OS, 0
  597. __STWRST
  598. L -1.5
  599. L -1.5
  600. >=R
  601. __ASSERT== __STW VKE, 1
  602. __ASSERT== __STW A0, 0
  603. __ASSERT== __STW A1, 0
  604. __ASSERT== __STW OV, 0
  605. __ASSERT== __STW OS, 0
  606. __STWRST
  607. L __CNST_NNAN
  608. L __CNST_NNAN
  609. >=R
  610. __ASSERT== __STW VKE, 0
  611. __ASSERT== __STW A0, 1
  612. __ASSERT== __STW A1, 1
  613. __ASSERT== __STW OV, 1
  614. __ASSERT== __STW OS, 1
  615. __STWRST
  616. L __CNST_PNAN
  617. L __CNST_PNAN
  618. >=R
  619. __ASSERT== __STW VKE, 0
  620. __ASSERT== __STW A0, 1
  621. __ASSERT== __STW A1, 1
  622. __ASSERT== __STW OV, 1
  623. __ASSERT== __STW OS, 1
  624. // Test <=R
  625. __STWRST
  626. L 1.5
  627. L 1.5
  628. <=R
  629. __ASSERT== __STW VKE, 1
  630. __ASSERT== __STW A0, 0
  631. __ASSERT== __STW A1, 0
  632. __ASSERT== __STW OV, 0
  633. __ASSERT== __STW OS, 0
  634. __STWRST
  635. L -1.5
  636. L 1.5
  637. <=R
  638. __ASSERT== __STW VKE, 1
  639. __ASSERT== __STW A0, 1
  640. __ASSERT== __STW A1, 0
  641. __ASSERT== __STW OV, 0
  642. __ASSERT== __STW OS, 0
  643. __STWRST
  644. L 1.5
  645. L -1.5
  646. <=R
  647. __ASSERT== __STW VKE, 0
  648. __ASSERT== __STW A0, 0
  649. __ASSERT== __STW A1, 1
  650. __ASSERT== __STW OV, 0
  651. __ASSERT== __STW OS, 0
  652. __STWRST
  653. L -1.5
  654. L -1.5
  655. <=R
  656. __ASSERT== __STW VKE, 1
  657. __ASSERT== __STW A0, 0
  658. __ASSERT== __STW A1, 0
  659. __ASSERT== __STW OV, 0
  660. __ASSERT== __STW OS, 0
  661. __STWRST
  662. L __CNST_NNAN
  663. L __CNST_NNAN
  664. <=R
  665. __ASSERT== __STW VKE, 0
  666. __ASSERT== __STW A0, 1
  667. __ASSERT== __STW A1, 1
  668. __ASSERT== __STW OV, 1
  669. __ASSERT== __STW OS, 1
  670. __STWRST
  671. L __CNST_PNAN
  672. L __CNST_PNAN
  673. <=R
  674. __ASSERT== __STW VKE, 0
  675. __ASSERT== __STW A0, 1
  676. __ASSERT== __STW A1, 1
  677. __ASSERT== __STW OV, 1
  678. __ASSERT== __STW OS, 1
  679. CALL SFC 46 // STOP CPU