mips32-dsp.s 35 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787
  1. # MIPS32 DSP ASE test
  2. # mach: mips32r2 mips64r2
  3. #as: -mdsp
  4. #ld: -N -Ttext=0x80010000
  5. #output: *\\npass\\n
  6. # Copyright (C) 2005-2022 Free Software Foundation, Inc.
  7. # Contributed by MIPS Technologies, Inc. Written by Chao-ying Fu.
  8. #
  9. # This file is part of the GNU simulators.
  10. #
  11. # This program is free software; you can redistribute it and/or modify
  12. # it under the terms of the GNU General Public License as published by
  13. # the Free Software Foundation; either version 3 of the License, or
  14. # (at your option) any later version.
  15. #
  16. # This program is distributed in the hope that it will be useful,
  17. # but WITHOUT ANY WARRANTY; without even the implied warranty of
  18. # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  19. # GNU General Public License for more details.
  20. #
  21. # You should have received a copy of the GNU General Public License
  22. # along with this program. If not, see <http://www.gnu.org/licenses/>.
  23. .include "testutils.inc"
  24. .include "utils-dsp.inc"
  25. setup
  26. .set noreorder
  27. .ent DIAG
  28. DIAG:
  29. writemsg "[1] Test addq.ph"
  30. dspck_dstio addq.ph, 0x0, 0x0, 0x0, 0x0, 0x0
  31. dspck_dstio addq.ph, 0x20002, 0x10001, 0x10001, 0x0, 0x0
  32. dspck_dstio addq.ph, 0xfffefffe, 0xffffffff, 0xffffffff, 0x0, 0x0
  33. dspck_dstio addq.ph, 0xffff0000, 0xffffffff, 0x1, 0x0, 0x0
  34. dspck_dstio addq.ph, 0x0, 0xffffffff, 0x10001, 0x0, 0x0
  35. writemsg "[2] Test addq_s.ph"
  36. dspck_dstio addq_s.ph, 0x0, 0x0, 0x0, 0x0, 0x0
  37. dspck_dstio addq_s.ph, 0x20002, 0x10001, 0x10001, 0x0, 0x0
  38. dspck_dstio addq_s.ph, 0xfffefffe, 0xffffffff, 0xffffffff, 0x0, 0x0
  39. dspck_dstio addq_s.ph, 0xffff0000, 0xffffffff, 0x1, 0x0, 0x0
  40. dspck_dstio addq_s.ph, 0xffff0000, 0x1, 0xffffffff, 0x0, 0x0
  41. writemsg "[3] Test addq_s.w"
  42. dspck_dsti addq_s.w, 0x0, 0x0, 0x0, 0x0
  43. dspck_dstio addq_s.w, 0x2, 0x1, 0x1, 0x0, 0x0
  44. dspck_dstio addq_s.w, 0xfffffffe, 0xffffffff, 0xffffffff, 0x0, 0x0
  45. dspck_dstio addq_s.w, 0x0, 0xffffffff, 0x1, 0x0, 0x0
  46. dspck_dstio addq_s.w, 0xffff, 0xffffffff, 0x10000, 0x0, 0x0
  47. writemsg "[4] Test addu.qb"
  48. dspck_dstio addu.qb, 0x0, 0x0, 0x0, 0x0, 0x0
  49. dspck_dstio addu.qb, 0x2040000, 0x102ff01, 0x10201ff, 0x0, 0x100000
  50. dspck_dstio addu.qb, 0xfe0001fe, 0x7f80ffff, 0x7f8002ff, 0x0, 0x100000
  51. dspck_dstio addu.qb, 0xffffffff, 0x10203, 0xfffefdfc, 0x0, 0x0
  52. dspck_dstio addu.qb, 0xffffffff, 0xfbfaf9f8, 0x4050607, 0x0, 0x0
  53. writemsg "[5] Test addu_s.qb"
  54. dspck_dstio addu_s.qb, 0x0, 0x0, 0x0, 0x0, 0x0
  55. dspck_dstio addu_s.qb, 0x204ffff, 0x102ff01, 0x10201ff, 0x0, 0x100000
  56. dspck_dstio addu_s.qb, 0xfeffffff, 0x7f80ffff, 0x7f8002ff, 0x0, 0x100000
  57. dspck_dstio addu_s.qb, 0xffffffff, 0x10203, 0xfffefdfc, 0x0, 0x0
  58. dspck_dstio addu_s.qb, 0xffffffff, 0xfbfaf9f8, 0x4050607, 0x0, 0x0
  59. writemsg "[6] Test subq.ph"
  60. dspck_dstio subq.ph, 0x0, 0x0, 0x0, 0x0, 0x0
  61. dspck_dstio subq.ph, 0x10001, 0x20002, 0x10001, 0x0, 0x0
  62. dspck_dstio subq.ph, 0x1ffff, 0x2fffe, 0x1ffff, 0x0, 0x0
  63. dspck_dstio subq.ph, 0x7fff0000, 0xfffe8000, 0x7fff8000, 0x0, 0x100000
  64. dspck_dstio subq.ph, 0x1ffff, 0x7fff8000, 0x7ffe8001, 0x0, 0x0
  65. writemsg "[7] Test subq_s.ph"
  66. dspck_dstio subq_s.ph, 0x0, 0x0, 0x0, 0x0, 0x0
  67. dspck_dstio subq_s.ph, 0x10001, 0x20002, 0x10001, 0x0, 0x0
  68. dspck_dstio subq_s.ph, 0x1ffff, 0x2fffe, 0x1ffff, 0x0, 0x0
  69. dspck_dstio subq_s.ph, 0x0, 0x7fff8000, 0x7fff8000, 0x0, 0x0
  70. dspck_dstio subq_s.ph, 0x1ffff, 0x7fff8000, 0x7ffe8001, 0x0, 0x0
  71. writemsg "[8] Test subq_s.w"
  72. dspck_dsti subq_s.w, 0x0, 0x0, 0x0, 0x0
  73. dspck_dsti subq_s.w, 0x0, 0x7fffffff, 0x7fffffff, 0x0
  74. dspck_dstio subq_s.w, 0x7fffffff, 0x0, 0x80000000, 0x0, 0x100000
  75. dspck_dstio subq_s.w, 0x1, 0x2, 0x1, 0x0, 0x0
  76. dspck_dstio subq_s.w, 0xffffffff, 0xfffffffe, 0xffffffff, 0x0, 0x0
  77. writemsg "[9] Test subu.qb"
  78. dspck_dstio subu.qb, 0x0, 0x0, 0x0, 0x0, 0x0
  79. dspck_dstio subu.qb, 0x4030201, 0x8060402, 0x4030201, 0x0, 0x0
  80. dspck_dstio subu.qb, 0xfcfdfeff, 0x4030201, 0x8060402, 0x0, 0x100000
  81. dspck_dstio subu.qb, 0x102ff01, 0x2040000, 0x10201ff, 0x0, 0x100000
  82. dspck_dstio subu.qb, 0x7f80ffff, 0xfe0001fe, 0x7f8002ff, 0x0, 0x100000
  83. writemsg "[10] Test subu_s.qb"
  84. dspck_dstio subu_s.qb, 0x0, 0x0, 0x0, 0x0, 0x0
  85. dspck_dstio subu_s.qb, 0x4030201, 0x8060402, 0x4030201, 0x0, 0x0
  86. dspck_dstio subu_s.qb, 0x0, 0x4030201, 0x8060402, 0x0, 0x100000
  87. dspck_dstio subu_s.qb, 0x1020000, 0x2040000, 0x10201ff, 0x0, 0x100000
  88. dspck_dstio subu_s.qb, 0x7f000000, 0xfe0001fe, 0x7f8002ff, 0x0, 0x100000
  89. writemsg "[11] Test addsc"
  90. dspck_dstio addsc, 0x0, 0x0, 0x0, 0x0, 0x0
  91. dspck_dstio addsc, 0x1000000, 0x84000000, 0x7d000000, 0x0, 0x2000
  92. dspck_dstio addsc, 0xf1000000, 0x74000000, 0x7d000000, 0x0, 0x0
  93. dspck_dstio addsc, 0x2, 0x1, 0x1, 0x0, 0x0
  94. dspck_dstio addsc, 0xffffffff, 0xfffffffe, 0x1, 0x0, 0x0
  95. writemsg "[12] Test addwc"
  96. dspck_dstio addwc, 0x0, 0x0, 0x0, 0x0, 0x0
  97. dspck_dstio addwc, 0x2, 0x1, 0x1, 0x0, 0x0
  98. dspck_dstio addwc, 0x3, 0x1, 0x1, 0x2000, 0x2000
  99. dspck_dsti addwc, 0x1, 0xffffffff, 0x1, 0x2000
  100. dspck_dsti addwc, 0x11, 0xa, 0x6, 0x2000
  101. writemsg "[13] Test modsub"
  102. dspck_dstio modsub, 0x0, 0x0, 0x0, 0x0, 0x0
  103. dspck_dstio modsub, 0x76, 0x78, 0x7802, 0x0, 0x0
  104. dspck_dstio modsub, 0x74, 0x76, 0x7802, 0x0, 0x0
  105. dspck_dstio modsub, 0x78, 0x0, 0x7802, 0x0, 0x0
  106. dspck_dstio modsub, 0xf9, 0xfc, 0xfe03, 0x0, 0x0
  107. writemsg "[14] Test raddu.w.qb"
  108. dspck_dsio raddu.w.qb, 0x0, 0x0, 0x0, 0x0
  109. dspck_dsio raddu.w.qb, 0x2, 0x1000100, 0x0, 0x0
  110. dspck_dsio raddu.w.qb, 0x4, 0x1010101, 0x0, 0x0
  111. dspck_dsio raddu.w.qb, 0x200, 0xff01ff01, 0x0, 0x0
  112. dspck_dsio raddu.w.qb, 0x3fc, 0xffffffff, 0x0, 0x0
  113. writemsg "[15] Test absq_s.ph"
  114. dspck_dsio absq_s.ph, 0x0, 0x0, 0x0, 0x0
  115. dspck_dsio absq_s.ph, 0x10001, 0xffffffff, 0x0, 0x0
  116. dspck_dsio absq_s.ph, 0x7fff7fff, 0x80008000, 0x0, 0x100000
  117. dspck_dsio absq_s.ph, 0x60000002, 0xa000fffe, 0x0, 0x0
  118. dspck_dsio absq_s.ph, 0x70000004, 0x9000fffc, 0x0, 0x0
  119. writemsg "[16] Test absq_s.w"
  120. dspck_dsio absq_s.w, 0x0, 0x0, 0x0, 0x0
  121. dspck_dsio absq_s.w, 0x1, 0xffffffff, 0x0, 0x0
  122. dspck_dsio absq_s.w, 0x7fffffff, 0x80000000, 0x0, 0x100000
  123. dspck_dsio absq_s.w, 0x40000001, 0xbfffffff, 0x0, 0x0
  124. dspck_dsio absq_s.w, 0x8000001, 0xf7ffffff, 0x0, 0x0
  125. writemsg "[17] Test precrq.qb.ph"
  126. dspck_dstio precrq.qb.ph, 0x0, 0x0, 0x0, 0x0, 0x0
  127. dspck_dstio precrq.qb.ph, 0xff7f4020, 0xffff7fff, 0x40002000, 0x0, 0x0
  128. dspck_dstio precrq.qb.ph, 0xfeba7632, 0xfedcba98, 0x76543210, 0x0, 0x0
  129. dspck_dstio precrq.qb.ph, 0x7632feba, 0x76543210, 0xfedcba98, 0x0, 0x0
  130. dspck_dstio precrq.qb.ph, 0x14589cd, 0x1234567, 0x89abcdef, 0x0, 0x0
  131. writemsg "[18] Test precrq.ph.w"
  132. dspck_dstio precrq.ph.w, 0x0, 0x0, 0x0, 0x0, 0x0
  133. dspck_dstio precrq.ph.w, 0xffff4000, 0xffff7fff, 0x40002000, 0x0, 0x0
  134. dspck_dstio precrq.ph.w, 0xfedc7654, 0xfedcba98, 0x76543210, 0x0, 0x0
  135. dspck_dstio precrq.ph.w, 0x7654fedc, 0x76543210, 0xfedcba98, 0x0, 0x0
  136. dspck_dstio precrq.ph.w, 0x12389ab, 0x1234567, 0x89abcdef, 0x0, 0x0
  137. writemsg "[19] Test precrq_rs.ph.w"
  138. dspck_dstio precrq_rs.ph.w, 0x0, 0x0, 0x0, 0x0, 0x0
  139. dspck_dstio precrq_rs.ph.w, 0x7fff0000, 0x7fffffff, 0xffffffff, 0x0, 0x400000
  140. dspck_dstio precrq_rs.ph.w, 0x80008001, 0x80007fff, 0x8000ffff, 0x0, 0x0
  141. dspck_dstio precrq_rs.ph.w, 0xfedd7654, 0xfedcba98, 0x76543210, 0x0, 0x0
  142. dspck_dstio precrq_rs.ph.w, 0x7654fedd, 0x76543210, 0xfedcba98, 0x0, 0x0
  143. writemsg "[20] Test precrqu_s.qb.ph"
  144. dspck_dstio precrqu_s.qb.ph, 0x0, 0x0, 0x0, 0x0, 0x0
  145. dspck_dstio precrqu_s.qb.ph, 0xff8040, 0xffff7fff, 0x40002000, 0x0, 0x400000
  146. dspck_dstio precrqu_s.qb.ph, 0xec64, 0xfedcba98, 0x76543210, 0x0, 0x400000
  147. dspck_dstio precrqu_s.qb.ph, 0xec640000, 0x76543210, 0xfedcba98, 0x0, 0x400000
  148. dspck_dstio precrqu_s.qb.ph, 0x28a0000, 0x1234567, 0x89abcdef, 0x0, 0x400000
  149. writemsg "[21] Test preceq.w.phl"
  150. dspck_dsio preceq.w.phl, 0x0, 0x0, 0x0, 0x0
  151. dspck_dsio preceq.w.phl, 0xffff0000, 0xffffffff, 0x0, 0x0
  152. dspck_dsio preceq.w.phl, 0x80000000, 0x80004000, 0x0, 0x0
  153. dspck_dsio preceq.w.phl, 0xc0010000, 0xc0012001, 0x0, 0x0
  154. dspck_dsio preceq.w.phl, 0x76540000, 0x76543210, 0x0, 0x0
  155. writemsg "[22] Test preceq.w.phr"
  156. dspck_dsio preceq.w.phr, 0x0, 0x0, 0x0, 0x0
  157. dspck_dsio preceq.w.phr, 0xffff0000, 0xffffffff, 0x0, 0x0
  158. dspck_dsio preceq.w.phr, 0x40000000, 0x80004000, 0x0, 0x0
  159. dspck_dsio preceq.w.phr, 0x20010000, 0xc0012001, 0x0, 0x0
  160. dspck_dsio preceq.w.phr, 0x32100000, 0x76543210, 0x0, 0x0
  161. writemsg "[23] Test precequ.ph.qbl"
  162. dspck_dsio precequ.ph.qbl, 0x0, 0x0, 0x0, 0x0
  163. dspck_dsio precequ.ph.qbl, 0x7f807f80, 0xffffffff, 0x0, 0x0
  164. dspck_dsio precequ.ph.qbl, 0x40000000, 0x80004000, 0x0, 0x0
  165. dspck_dsio precequ.ph.qbl, 0x60000080, 0xc0012001, 0x0, 0x0
  166. dspck_dsio precequ.ph.qbl, 0x3b002a00, 0x76543210, 0x0, 0x0
  167. writemsg "[24] Test precequ.ph.qbr"
  168. dspck_dsio precequ.ph.qbr, 0x0, 0x0, 0x0, 0x0
  169. dspck_dsio precequ.ph.qbr, 0x7f807f80, 0xffffffff, 0x0, 0x0
  170. dspck_dsio precequ.ph.qbr, 0x20000000, 0x80004000, 0x0, 0x0
  171. dspck_dsio precequ.ph.qbr, 0x10000080, 0xc0012001, 0x0, 0x0
  172. dspck_dsio precequ.ph.qbr, 0x19000800, 0x76543210, 0x0, 0x0
  173. writemsg "[25] Test precequ.ph.qbla"
  174. dspck_dsio precequ.ph.qbla, 0x0, 0x0, 0x0, 0x0
  175. dspck_dsio precequ.ph.qbla, 0x7f807f80, 0xffffffff, 0x0, 0x0
  176. dspck_dsio precequ.ph.qbla, 0x40002000, 0x80004000, 0x0, 0x0
  177. dspck_dsio precequ.ph.qbla, 0x60001000, 0xc0012001, 0x0, 0x0
  178. dspck_dsio precequ.ph.qbla, 0x3b001900, 0x76543210, 0x0, 0x0
  179. writemsg "[26] Test precequ.ph.qbra"
  180. dspck_dsio precequ.ph.qbra, 0x0, 0x0, 0x0, 0x0
  181. dspck_dsio precequ.ph.qbra, 0x7f807f80, 0xffffffff, 0x0, 0x0
  182. dspck_dsio precequ.ph.qbra, 0x0, 0x80004000, 0x0, 0x0
  183. dspck_dsio precequ.ph.qbra, 0x800080, 0xc0012001, 0x0, 0x0
  184. dspck_dsio precequ.ph.qbra, 0x2a000800, 0x76543210, 0x0, 0x0
  185. writemsg "[27] Test preceu.ph.qbl"
  186. dspck_dsio preceu.ph.qbl, 0x0, 0x0, 0x0, 0x0
  187. dspck_dsio preceu.ph.qbl, 0xff00ff, 0xffffffff, 0x0, 0x0
  188. dspck_dsio preceu.ph.qbl, 0x800000, 0x80004000, 0x0, 0x0
  189. dspck_dsio preceu.ph.qbl, 0xc00001, 0xc0012001, 0x0, 0x0
  190. dspck_dsio preceu.ph.qbl, 0x760054, 0x76543210, 0x0, 0x0
  191. writemsg "[28] Test preceu.ph.qbr"
  192. dspck_dsio preceu.ph.qbr, 0x0, 0x0, 0x0, 0x0
  193. dspck_dsio preceu.ph.qbr, 0xff00ff, 0xffffffff, 0x0, 0x0
  194. dspck_dsio preceu.ph.qbr, 0x400000, 0x80004000, 0x0, 0x0
  195. dspck_dsio preceu.ph.qbr, 0x200001, 0xc0012001, 0x0, 0x0
  196. dspck_dsio preceu.ph.qbr, 0x320010, 0x76543210, 0x0, 0x0
  197. writemsg "[29] Test preceu.ph.qbla"
  198. dspck_dsio preceu.ph.qbla, 0x0, 0x0, 0x0, 0x0
  199. dspck_dsio preceu.ph.qbla, 0xff00ff, 0xffffffff, 0x0, 0x0
  200. dspck_dsio preceu.ph.qbla, 0x800040, 0x80004000, 0x0, 0x0
  201. dspck_dsio preceu.ph.qbla, 0xc00020, 0xc0012001, 0x0, 0x0
  202. dspck_dsio preceu.ph.qbla, 0x760032, 0x76543210, 0x0, 0x0
  203. writemsg "[30] Test preceu.ph.qbra"
  204. dspck_dsio preceu.ph.qbra, 0x0, 0x0, 0x0, 0x0
  205. dspck_dsio preceu.ph.qbra, 0xff00ff, 0xffffffff, 0x0, 0x0
  206. dspck_dsio preceu.ph.qbra, 0x0, 0x80004000, 0x0, 0x0
  207. dspck_dsio preceu.ph.qbra, 0x10001, 0xc0012001, 0x0, 0x0
  208. dspck_dsio preceu.ph.qbra, 0x540010, 0x76543210, 0x0, 0x0
  209. writemsg "[31] Test shll.qb"
  210. dspck_dtsaio shll.qb, 0x0, 0x0, 0, 0x0, 0x0
  211. dspck_dtsai shll.qb, 0x202fefe, 0x101ffff, 1, 0x0
  212. dspck_dtsai shll.qb, 0xfefe0002, 0x7fff8081, 1, 0x0
  213. dspck_dtsai shll.qb, 0xfcfc0020, 0x7fff8008, 2, 0x0
  214. dspck_dtsai shll.qb, 0x68b0d868, 0x6db6db6d, 3, 0x0
  215. writemsg "[32] Test shllv.qb"
  216. dspck_dstio shllv.qb, 0x0, 0x0, 0x0, 0x0, 0x0
  217. dspck_dsti shllv.qb, 0x202fefe, 0x101ffff, 0x1, 0x0
  218. dspck_dsti shllv.qb, 0xfefe0002, 0x7fff8081, 0x1, 0x0
  219. dspck_dsti shllv.qb, 0xfcfc0020, 0x7fff8008, 0x2, 0x0
  220. dspck_dsti shllv.qb, 0x68b0d868, 0x6db6db6d, 0x3, 0x0
  221. writemsg "[33] Test shll.ph"
  222. dspck_dtsaio shll.ph, 0x0, 0x0, 0, 0x0, 0x0
  223. dspck_dtsaio shll.ph, 0x2fffe, 0x1ffff, 1, 0x0, 0x0
  224. dspck_dtsaio shll.ph, 0xfffe0000, 0x7fff8000, 1, 0x0, 0x400000
  225. dspck_dtsaio shll.ph, 0xfffc0020, 0x7fff8008, 2, 0x0, 0x400000
  226. dspck_dtsaio shll.ph, 0x6db0db68, 0x6db6db6d, 3, 0x0, 0x400000
  227. writemsg "[34] Test shllv.ph"
  228. dspck_dstio shllv.ph, 0x0, 0x0, 0x0, 0x0, 0x0
  229. dspck_dstio shllv.ph, 0x2fffe, 0x1ffff, 0x1, 0x0, 0x0
  230. dspck_dstio shllv.ph, 0xfffe0000, 0x7fff8000, 0x1, 0x0, 0x400000
  231. dspck_dstio shllv.ph, 0xfffc0020, 0x7fff8008, 0x2, 0x0, 0x400000
  232. dspck_dstio shllv.ph, 0x6db0db68, 0x6db6db6d, 0x3, 0x0, 0x400000
  233. writemsg "[35] Test shll_s.ph"
  234. dspck_dtsaio shll_s.ph, 0x0, 0x0, 0, 0x0, 0x0
  235. dspck_dtsaio shll_s.ph, 0x2fffe, 0x1ffff, 1, 0x0, 0x0
  236. dspck_dtsaio shll_s.ph, 0x7fff8000, 0x7fff8000, 1, 0x0, 0x400000
  237. dspck_dtsaio shll_s.ph, 0x7fff8000, 0x7fff8008, 2, 0x0, 0x400000
  238. dspck_dtsaio shll_s.ph, 0x7fff8000, 0x6db6db6d, 3, 0x0, 0x400000
  239. writemsg "[36] Test shllv_s.ph"
  240. dspck_dstio shllv_s.ph, 0x0, 0x0, 0x0, 0x0, 0x0
  241. dspck_dstio shllv_s.ph, 0x2fffe, 0x1ffff, 0x1, 0x0, 0x0
  242. dspck_dstio shllv_s.ph, 0x7fff8000, 0x7fff8000, 0x1, 0x0, 0x400000
  243. dspck_dstio shllv_s.ph, 0x7fff8000, 0x7fff8008, 0x2, 0x0, 0x400000
  244. dspck_dstio shllv_s.ph, 0x7fff8000, 0x6db6db6d, 0x3, 0x0, 0x400000
  245. writemsg "[37] Test shll_s.w"
  246. dspck_dtsaio shll_s.w, 0x0, 0x0, 0, 0x0, 0x0
  247. dspck_dtsaio shll_s.w, 0x3fffe, 0x1ffff, 1, 0x0, 0x0
  248. dspck_dtsaio shll_s.w, 0x7fffffff, 0x7fff8000, 1, 0x0, 0x400000
  249. dspck_dtsaio shll_s.w, 0x80000000, 0x80000000, 1, 0x0, 0x400000
  250. dspck_dtsaio shll_s.w, 0x7fffffff, 0x7fff8008, 2, 0x0, 0x400000
  251. writemsg "[38] Test shllv_s.w"
  252. dspck_dstio shllv_s.w, 0x0, 0x0, 0x0, 0x0, 0x0
  253. dspck_dstio shllv_s.w, 0x3fffe, 0x1ffff, 0x1, 0x0, 0x0
  254. dspck_dstio shllv_s.w, 0x7fffffff, 0x7fff8000, 0x1, 0x0, 0x400000
  255. dspck_dstio shllv_s.w, 0x80000000, 0x80000000, 0x1, 0x0, 0x400000
  256. dspck_dstio shllv_s.w, 0x7fffffff, 0x7fff8008, 0x2, 0x0, 0x400000
  257. writemsg "[39] Test shrl.qb"
  258. dspck_dtsaio shrl.qb, 0x0, 0x0, 0, 0x0, 0x0
  259. dspck_dtsai shrl.qb, 0x7f7f, 0x101ffff, 1, 0x0
  260. dspck_dtsai shrl.qb, 0x3f7f4040, 0x7fff8081, 1, 0x0
  261. dspck_dtsai shrl.qb, 0x1f3f2002, 0x7fff8008, 2, 0x0
  262. dspck_dtsai shrl.qb, 0xd161b0d, 0x6db6db6d, 3, 0x0
  263. writemsg "[40] Test shrlv.qb"
  264. dspck_dstio shrlv.qb, 0x0, 0x0, 0x0, 0x0, 0x0
  265. dspck_dsti shrlv.qb, 0x7f7f, 0x101ffff, 0x1, 0x0
  266. dspck_dsti shrlv.qb, 0x3f7f4040, 0x7fff8081, 0x1, 0x0
  267. dspck_dsti shrlv.qb, 0x1f3f2002, 0x7fff8008, 0x2, 0x0
  268. dspck_dsti shrlv.qb, 0xd161b0d, 0x6db6db6d, 0x3, 0x0
  269. writemsg "[41] Test shra.ph"
  270. dspck_dtsaio shra.ph, 0x10001, 0x20002, 1, 0x0, 0x0
  271. dspck_dtsaio shra.ph, 0x10006, 0x10106f6f, 12, 0x0, 0x0
  272. dspck_dtsaio shra.ph, 0x1c000, 0x28000, 1, 0x0, 0x0
  273. dspck_dtsaio shra.ph, 0x2f800, 0x208000, 4, 0x0, 0x0
  274. dspck_dtsaio shra.ph, 0xfc01fc00, 0x80208000, 5, 0x0, 0x0
  275. writemsg "[42] Test shrav.ph"
  276. dspck_dstio shrav.ph, 0x10001, 0x20002, 0x1, 0x0, 0x0
  277. dspck_dstio shrav.ph, 0x10006, 0x10106f6f, 0xc, 0x0, 0x0
  278. dspck_dstio shrav.ph, 0x1c000, 0x28000, 0x1, 0x0, 0x0
  279. dspck_dstio shrav.ph, 0x2f800, 0x208000, 0x4, 0x0, 0x0
  280. dspck_dstio shrav.ph, 0xfc01fc00, 0x80208000, 0x5, 0x0, 0x0
  281. writemsg "[43] Test shra_r.ph"
  282. dspck_dtsaio shra_r.ph, 0x20001, 0x30002, 1, 0x0, 0x0
  283. dspck_dtsaio shra_r.ph, 0x10001, 0x20001, 1, 0x0, 0x0
  284. dspck_dtsaio shra_r.ph, 0x10001, 0x10001, 1, 0x0, 0x0
  285. dspck_dtsaio shra_r.ph, 0x0, 0x10001, 2, 0x0, 0x0
  286. dspck_dtsaio shra_r.ph, 0x7fff8000, 0x7fff8000, 0, 0x0, 0x0
  287. dspck_dtsaio shra_r.ph, 0x4000c000, 0x7fff8000, 1, 0x0, 0x0
  288. dspck_dtsaio shra_r.ph, 0x2000e000, 0x7ffe8000, 2, 0x0, 0x0
  289. writemsg "[44] Test shrav_r.ph"
  290. dspck_dstio shrav_r.ph, 0x20001, 0x30002, 0x1, 0x0, 0x0
  291. dspck_dstio shrav_r.ph, 0x10001, 0x20001, 0x1, 0x0, 0x0
  292. dspck_dstio shrav_r.ph, 0x10001, 0x10001, 0x1, 0x0, 0x0
  293. dspck_dstio shrav_r.ph, 0x0, 0x10001, 0x2, 0x0, 0x0
  294. dspck_dstio shrav_r.ph, 0x7fff8000, 0x7fff8000, 0, 0x0, 0x0
  295. dspck_dstio shrav_r.ph, 0x2000e000, 0x7fff8000, 2, 0x0, 0x0
  296. writemsg "[45] Test shra_r.w"
  297. dspck_dtsaio shra_r.w, 0x1, 0x2, 1, 0x0, 0x0
  298. dspck_dtsaio shra_r.w, 0xffff8000, 0x80000000, 16, 0x0, 0x0
  299. dspck_dtsaio shra_r.w, 0x8001, 0x10001, 1, 0x0, 0x0
  300. dspck_dtsaio shra_r.w, 0x1, 0x10001, 17, 0x0, 0x0
  301. dspck_dtsaio shra_r.w, 0xffffc001, 0x80010001, 17, 0x0, 0x0
  302. dspck_dtsaio shra_r.w, 0x7fffffff, 0x7fffffff, 0, 0x0, 0x0
  303. dspck_dtsaio shra_r.w, 0x40000000, 0x7fffffff, 1, 0x0, 0x0
  304. dspck_dtsaio shra_r.w, 0x20000000, 0x7ffffffe, 2, 0x0, 0x0
  305. writemsg "[46] Test shrav_r.w"
  306. dspck_dstio shrav_r.w, 0x1, 0x2, 0x1, 0x0, 0x0
  307. dspck_dstio shrav_r.w, 0xffff8000, 0x80000000, 0x10, 0x0, 0x0
  308. dspck_dstio shrav_r.w, 0x8001, 0x10001, 0x1, 0x0, 0x0
  309. dspck_dstio shrav_r.w, 0x8001, 0x10001, 0x21, 0x0, 0x0
  310. dspck_dstio shrav_r.w, 0x4000, 0x10001, 0x2, 0x0, 0x0
  311. dspck_dstio shrav_r.w, 0x7fffffff, 0x7fffffff, 0x0, 0x0, 0x0
  312. dspck_dstio shrav_r.w, 0x10000000, 0x7ffffffc, 0x3, 0x0, 0x0
  313. dspck_dstio shrav_r.w, 0x08000000, 0x7ffffff8, 0x4, 0x0, 0x0
  314. writemsg "[47] Test muleu_s.ph.qbl"
  315. dspck_dstio muleu_s.ph.qbl, 0x0, 0x0, 0x0, 0x0, 0x0
  316. dspck_dstio muleu_s.ph.qbl, 0x0, 0x0, 0x40004000, 0x0, 0x0
  317. dspck_dstio muleu_s.ph.qbl, 0x0, 0xffffffff, 0x0, 0x0, 0x0
  318. dspck_dstio muleu_s.ph.qbl, 0x10001, 0x1010101, 0x10001, 0x0, 0x0
  319. dspck_dstio muleu_s.ph.qbl, 0x10000, 0x1000001, 0x10001, 0x0, 0x0
  320. writemsg "[48] Test muleu_s.ph.qbr"
  321. dspck_dstio muleu_s.ph.qbr, 0x0, 0x0, 0x0, 0x0, 0x0
  322. dspck_dstio muleu_s.ph.qbr, 0x0, 0x0, 0x40004000, 0x0, 0x0
  323. dspck_dstio muleu_s.ph.qbr, 0x0, 0xffffffff, 0x0, 0x0, 0x0
  324. dspck_dstio muleu_s.ph.qbr, 0x10001, 0x1010101, 0x10001, 0x0, 0x0
  325. dspck_dstio muleu_s.ph.qbr, 0x1, 0x1000001, 0x10001, 0x0, 0x0
  326. writemsg "[49] Test mulq_rs.ph"
  327. dspck_dstio mulq_rs.ph, 0x0, 0x0, 0x0, 0x0, 0x0
  328. dspck_dstio mulq_rs.ph, 0x0, 0x1, 0x1, 0x0, 0x0
  329. dspck_dstio mulq_rs.ph, 0x20000000, 0x40007fff, 0x40000000, 0x0, 0x0
  330. dspck_dstio mulq_rs.ph, 0x33330000, 0x66660000, 0x40007fff, 0x0, 0x0
  331. dspck_dstio mulq_rs.ph, 0xccd3332, 0x66666666, 0x10003fff, 0x0, 0x0
  332. writemsg "[50] Test muleq_s.w.phl"
  333. dspck_dstio muleq_s.w.phl, 0x0, 0x0, 0x0, 0x0, 0x0
  334. dspck_dstio muleq_s.w.phl, 0x0, 0x0, 0x40004000, 0x0, 0x0
  335. dspck_dstio muleq_s.w.phl, 0x0, 0x7fff7fff, 0x0, 0x0, 0x0
  336. dspck_dstio muleq_s.w.phl, 0x0, 0x0, 0xc000c000, 0x0, 0x0
  337. dspck_dstio muleq_s.w.phl, 0x0, 0x80008000, 0x0, 0x0, 0x0
  338. writemsg "[51] Test muleq_s.w.phr"
  339. dspck_dstio muleq_s.w.phr, 0x0, 0x0, 0x0, 0x0, 0x0
  340. dspck_dstio muleq_s.w.phr, 0x0, 0x0, 0x40004000, 0x0, 0x0
  341. dspck_dstio muleq_s.w.phr, 0x0, 0x7fff7fff, 0x0, 0x0, 0x0
  342. dspck_dstio muleq_s.w.phr, 0x0, 0x0, 0xc000c000, 0x0, 0x0
  343. dspck_dstio muleq_s.w.phr, 0x0, 0x80008000, 0x0, 0x0, 0x0
  344. writemsg "[52] Test dpau.h.qbl"
  345. dspck_astio dpau.h.qbl, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0
  346. dspck_astio dpau.h.qbl, 0x0, 0x0, 0x0, 0x1, 0x1010101, 0x1000001, 0x0, 0x0
  347. dspck_astio dpau.h.qbl, 0xffffffff, 0xffffffff, 0x0, 0x0, 0x1010101, 0x1000001, 0x0, 0x0
  348. dspck_astio dpau.h.qbl, 0x0, 0x0, 0x0, 0x0, 0xffff0000, 0xffff, 0x0, 0x0
  349. dspck_astio dpau.h.qbl, 0x0, 0x0, 0x0, 0xff, 0xffff0001, 0x1ffff, 0x0, 0x0
  350. writemsg "[53] Test dpau.h.qbr"
  351. dspck_astio dpau.h.qbr, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0
  352. dspck_astio dpau.h.qbr, 0x0, 0x0, 0x0, 0x1, 0x1010101, 0x1000001, 0x0, 0x0
  353. dspck_astio dpau.h.qbr, 0xffffffff, 0xffffffff, 0x0, 0x0, 0x1010101, 0x1000001, 0x0, 0x0
  354. dspck_astio dpau.h.qbr, 0x0, 0x0, 0x0, 0x0, 0xffff0000, 0xffff, 0x0, 0x0
  355. dspck_astio dpau.h.qbr, 0x0, 0x0, 0x0, 0xff, 0xffff0001, 0x1ffff, 0x0, 0x0
  356. writemsg "[54] Test dpsu.h.qbl"
  357. dspck_astio dpsu.h.qbl, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0
  358. dspck_astio dpsu.h.qbl, 0x0, 0x1, 0x0, 0x0, 0x1010101, 0x1000001, 0x0, 0x0
  359. dspck_astio dpsu.h.qbl, 0x0, 0x0, 0xffffffff, 0xffffffff, 0x1010101, 0x1000001, 0x0, 0x0
  360. dspck_astio dpsu.h.qbl, 0x0, 0x0, 0x0, 0x0, 0xffff0000, 0xffff, 0x0, 0x0
  361. dspck_astio dpsu.h.qbl, 0x0, 0xff, 0x0, 0x0, 0xffff0001, 0x1ffff, 0x0, 0x0
  362. writemsg "[55] Test dpsu.h.qbr"
  363. dspck_astio dpsu.h.qbr, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0
  364. dspck_astio dpsu.h.qbr, 0x0, 0x1, 0x0, 0x0, 0x1010101, 0x1000001, 0x0, 0x0
  365. dspck_astio dpsu.h.qbr, 0x0, 0x0, 0xffffffff, 0xffffffff, 0x1010101, 0x1000001, 0x0, 0x0
  366. dspck_astio dpsu.h.qbr, 0x0, 0x0, 0x0, 0x0, 0xffff0000, 0xffff, 0x0, 0x0
  367. dspck_astio dpsu.h.qbr, 0x0, 0xff, 0x0, 0x0, 0xffff0001, 0x1ffff, 0x0, 0x0
  368. writemsg "[56] Test dpaq_s.w.ph"
  369. dspck_astio dpaq_s.w.ph, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0
  370. dspck_astio dpaq_s.w.ph, 0x0, 0x0, 0x0, 0xfffc0004, 0x7fff7fff, 0x7fff7fff, 0x0, 0x0
  371. dspck_astio dpaq_s.w.ph, 0x0, 0x0, 0x0, 0xfffffffe, 0x80008000, 0x80008000, 0x0, 0xf0000
  372. dspck_astio dpaq_s.w.ph, 0x0, 0x0, 0xffffffff, 0xa0000000, 0x40002000, 0x80008000, 0x0, 0x0
  373. dspck_astio dpaq_s.w.ph, 0xffffffff, 0xa0000000, 0xffffffff, 0x88000000, 0x10000800, 0x80008000, 0x0, 0x0
  374. writemsg "[57] Test dpsq_s.w.ph"
  375. dspck_astio dpsq_s.w.ph, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0
  376. dspck_astio dpsq_s.w.ph, 0x0, 0xfffc0004, 0x0, 0x0, 0x7fff7fff, 0x7fff7fff, 0x0, 0x0
  377. dspck_astio dpsq_s.w.ph, 0x0, 0xfffffffe, 0x0, 0x0, 0x80008000, 0x80008000, 0x0, 0xf0000
  378. dspck_astio dpsq_s.w.ph, 0xffffffff, 0xa0000000, 0x0, 0x0, 0x40002000, 0x80008000, 0x0, 0x0
  379. dspck_astio dpsq_s.w.ph, 0xffffffff, 0x88000000, 0xffffffff, 0xa0000000, 0x10000800, 0x80008000, 0x0, 0x0
  380. writemsg "[58] Test mulsaq_s.w.ph"
  381. dspck_astio mulsaq_s.w.ph, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0
  382. dspck_astio mulsaq_s.w.ph, 0x0, 0x0, 0x0, 0x0, 0x4000, 0xc0000000, 0x0, 0x0
  383. dspck_astio mulsaq_s.w.ph, 0x0, 0x0, 0xffffffff, 0x60010000, 0x80004000, 0x7fff4000, 0x0, 0x0
  384. dspck_astio mulsaq_s.w.ph, 0x0, 0x0, 0x0, 0x5fffffff, 0x80004000, 0x80004000, 0x0, 0xf0000
  385. dspck_astio mulsaq_s.w.ph, 0x7fffffff, 0xffffffff, 0x80000000, 0xfffc0003, 0x7fff8001, 0x7fff7fff, 0x0, 0x0
  386. writemsg "[59] Test dpaq_sa.l.w"
  387. dspck_astio dpaq_sa.l.w, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0
  388. dspck_astio dpaq_sa.l.w, 0x0, 0x0, 0x7ffffffe, 0x2, 0x7fffffff, 0x7fffffff, 0x0, 0x0
  389. dspck_astio dpaq_sa.l.w, 0x0, 0x0, 0x7fffffff, 0xffffffff, 0x80000000, 0x80000000, 0x0, 0xf0000
  390. dspck_astio dpaq_sa.l.w, 0x0, 0x0, 0xc0000000, 0x80000000, 0xc0000000, 0x7fffffff, 0x0, 0x0
  391. dspck_astio dpaq_sa.l.w, 0x20000000, 0x0, 0x0, 0x40000000, 0xe0000000, 0x7fffffff, 0x0, 0x0
  392. writemsg "[60] Test dpsq_sa.l.w"
  393. dspck_astio dpsq_sa.l.w, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0
  394. dspck_astio dpsq_sa.l.w, 0x7fffffff, 0xffffffff, 0x0, 0x0, 0x80000000, 0x80000000, 0x0, 0xf0000
  395. dspck_astio dpsq_sa.l.w, 0x80000000, 0x0, 0x80000000, 0x0, 0x80000000, 0x80000000, 0x0, 0xf0000
  396. dspck_astio dpsq_sa.l.w, 0x0, 0x0, 0x80000000, 0x1, 0x80000000, 0x80000000, 0x0, 0xf0000
  397. dspck_astio dpsq_sa.l.w, 0x0, 0x0, 0x3fffffff, 0x80000000, 0xc0000000, 0x7fffffff, 0x0, 0x0
  398. writemsg "[61] Test maq_s.w.phl"
  399. dspck_astio maq_s.w.phl, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0
  400. dspck_astio maq_s.w.phl, 0xffffffff, 0x0, 0xffffffff, 0x0, 0x0, 0x40004000, 0x0, 0x0
  401. dspck_astio maq_s.w.phl, 0x0, 0xffffffff, 0x0, 0xffffffff, 0x7fff7fff, 0x0, 0x0, 0x0
  402. dspck_astio maq_s.w.phl, 0xffffffff, 0x0, 0xffffffff, 0x0, 0x7fff7fff, 0x0, 0x0, 0x0
  403. dspck_astio maq_s.w.phl, 0x0, 0x40000000, 0x0, 0x40000000, 0x0, 0xc000c000, 0x0, 0x0
  404. writemsg "[62] Test maq_s.w.phr"
  405. dspck_astio maq_s.w.phr, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0
  406. dspck_astio maq_s.w.phr, 0xffffffff, 0x0, 0xffffffff, 0x0, 0x0, 0x40004000, 0x0, 0x0
  407. dspck_astio maq_s.w.phr, 0x0, 0xffffffff, 0x0, 0xffffffff, 0x7fff7fff, 0x0, 0x0, 0x0
  408. dspck_astio maq_s.w.phr, 0xffffffff, 0x0, 0xffffffff, 0x0, 0x7fff7fff, 0x0, 0x0, 0x0
  409. dspck_astio maq_s.w.phr, 0x0, 0x40000000, 0x0, 0x40000000, 0x0, 0xc000c000, 0x0, 0x0
  410. writemsg "[63] Test maq_sa.w.phl"
  411. dspck_astio maq_sa.w.phl, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0
  412. dspck_astio maq_sa.w.phl, 0xffffffff, 0x80000000, 0xffffffff, 0x80000000, 0x0, 0x40004000, 0x0, 0x0
  413. dspck_astio maq_sa.w.phl, 0x0, 0x7fffffff, 0x0, 0x7fffffff, 0x7fff7fff, 0x0, 0x0, 0x0
  414. dspck_astio maq_sa.w.phl, 0xffffffff, 0x80000000, 0xffffffff, 0x80000000, 0x7fff7fff, 0x0, 0x0, 0x0
  415. dspck_astio maq_sa.w.phl, 0x0, 0x40000000, 0x0, 0x40000000, 0x0, 0xc000c000, 0x0, 0x0
  416. writemsg "[64] Test maq_sa.w.phr"
  417. dspck_astio maq_sa.w.phr, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0
  418. dspck_astio maq_sa.w.phr, 0xffffffff, 0x80000000, 0xffffffff, 0x80000000, 0x0, 0x40004000, 0x0, 0x0
  419. dspck_astio maq_sa.w.phr, 0x0, 0x7fffffff, 0x0, 0x7fffffff, 0x7fff7fff, 0x0, 0x0, 0x0
  420. dspck_astio maq_sa.w.phr, 0xffffffff, 0x80000000, 0xffffffff, 0x80000000, 0x7fff7fff, 0x0, 0x0, 0x0
  421. dspck_astio maq_sa.w.phr, 0x0, 0x40000000, 0x0, 0x40000000, 0x0, 0xc000c000, 0x0, 0x0
  422. writemsg "[65] Test bitrev"
  423. dspck_dsio bitrev, 0x0, 0x0, 0x0, 0x0
  424. dspck_dsio bitrev, 0x1, 0x8000, 0x0, 0x0
  425. dspck_dsio bitrev, 0x8000, 0x1, 0x0, 0x0
  426. dspck_dsio bitrev, 0xc0c0, 0x1010303, 0x0, 0x0
  427. dspck_dsio bitrev, 0x1, 0xffff8000, 0x0, 0x0
  428. writemsg "[66] Test insv"
  429. dspck_tsi insv, 0xf0caf0f0, 0xf0f0f0f0, 0xa5a5a5a5, 0x311
  430. dspck_tsi insv, 0x7fffffe, 0x0, 0x7ffffff, 0xd01
  431. dspck_tsi insv, 0x3fff, 0x0, 0x3fff, 0x700
  432. dspck_tsi insv, 0xf0f2f0f0, 0xf0f0f0f0, 0xa5a5a5a5, 0x28f
  433. dspck_tsi insv, 0x3fc, 0x0, 0x3ff, 0x402
  434. writemsg "[67] Test repl.qb"
  435. dspck_dIio repl.qb, 0x0, 0, 0x0, 0x0
  436. dspck_dIio repl.qb, 0x1010101, 1, 0x0, 0x0
  437. dspck_dIio repl.qb, 0xffffffff, 255, 0x0, 0x0
  438. dspck_dIio repl.qb, 0x7f7f7f7f, 127, 0x0, 0x0
  439. dspck_dIio repl.qb, 0xfefefefe, 254, 0x0, 0x0
  440. writemsg "[68] Test replv.qb"
  441. dspck_dsio replv.qb, 0x0, 0x0, 0x0, 0x0
  442. dspck_dsio replv.qb, 0x1010101, 0x1, 0x0, 0x0
  443. dspck_dsio replv.qb, 0xffffffff, 0xff, 0x0, 0x0
  444. dspck_dsio replv.qb, 0x7f7f7f7f, 0x37f, 0x0, 0x0
  445. dspck_dsio replv.qb, 0xfefefefe, 0xfffffffe, 0x0, 0x0
  446. writemsg "[69] Test repl.ph"
  447. dspck_dIio repl.ph, 0x0, 0, 0x0, 0x0
  448. dspck_dIio repl.ph, 0x10001, 1, 0x0, 0x0
  449. dspck_dIio repl.ph, 0xffffffff, -1, 0x0, 0x0
  450. dspck_dIio repl.ph, 0xff7fff7f, -129, 0x0, 0x0
  451. dspck_dIio repl.ph, 0xfffefffe, -2, 0x0, 0x0
  452. writemsg "[70] Test replv.ph"
  453. dspck_dsio replv.ph, 0x0, 0x0, 0x0, 0x0
  454. dspck_dsio replv.ph, 0x10001, 0x1, 0x0, 0x0
  455. dspck_dsio replv.ph, 0xffffffff, 0x5555ffff, 0x0, 0x0
  456. dspck_dsio replv.ph, 0x37f037f, 0x37f, 0x0, 0x0
  457. dspck_dsio replv.ph, 0xfffefffe, 0xfffffffe, 0x0, 0x0
  458. writemsg "[71] Test cmpu.eq.qb"
  459. dspck_stio cmpu.eq.qb, 0x0, 0x0, 0x0, 0xf000000
  460. dspck_stio cmpu.eq.qb, 0xffffffff, 0x0, 0x0, 0x0
  461. dspck_stio cmpu.eq.qb, 0x0, 0xffffffff, 0x0, 0x0
  462. dspck_stio cmpu.eq.qb, 0x10203, 0x4050607, 0x0, 0x0
  463. dspck_stio cmpu.eq.qb, 0x8090a0b, 0xc0d0e0f, 0x0, 0x0
  464. writemsg "[72] Test cmpu.lt.qb"
  465. dspck_stio cmpu.lt.qb, 0x0, 0x0, 0x0, 0x0
  466. dspck_stio cmpu.lt.qb, 0xffffffff, 0x0, 0x0, 0x0
  467. dspck_stio cmpu.lt.qb, 0x0, 0xffffffff, 0x0, 0xf000000
  468. dspck_stio cmpu.lt.qb, 0x10203, 0x4050607, 0x0, 0xf000000
  469. dspck_stio cmpu.lt.qb, 0x8090a0b, 0xc0d0e0f, 0x0, 0xf000000
  470. writemsg "[73] Test cmpu.le.qb"
  471. dspck_stio cmpu.le.qb, 0x0, 0x0, 0x0, 0xf000000
  472. dspck_stio cmpu.le.qb, 0xffffffff, 0x0, 0x0, 0x0
  473. dspck_stio cmpu.le.qb, 0x0, 0xffffffff, 0x0, 0xf000000
  474. dspck_stio cmpu.le.qb, 0x10203, 0x4050607, 0x0, 0xf000000
  475. dspck_stio cmpu.le.qb, 0x8090a0b, 0xc0d0e0f, 0x0, 0xf000000
  476. writemsg "[74] Test cmpgu.eq.qb"
  477. dspck_dstio cmpgu.eq.qb, 0xf, 0x0, 0x0, 0x0, 0x0
  478. dspck_dstio cmpgu.eq.qb, 0x0, 0xffffffff, 0x0, 0x0, 0x0
  479. dspck_dstio cmpgu.eq.qb, 0x0, 0x0, 0xffffffff, 0x0, 0x0
  480. dspck_dstio cmpgu.eq.qb, 0x0, 0x10203, 0x4050607, 0x0, 0x0
  481. dspck_dstio cmpgu.eq.qb, 0x0, 0x8090a0b, 0xc0d0e0f, 0x0, 0x0
  482. writemsg "[75] Test cmpgu.lt.qb"
  483. dspck_dstio cmpgu.lt.qb, 0x0, 0x0, 0x0, 0x0, 0x0
  484. dspck_dstio cmpgu.lt.qb, 0x0, 0xffffffff, 0x0, 0x0, 0x0
  485. dspck_dstio cmpgu.lt.qb, 0xf, 0x0, 0xffffffff, 0x0, 0x0
  486. dspck_dstio cmpgu.lt.qb, 0xf, 0x10203, 0x4050607, 0x0, 0x0
  487. dspck_dstio cmpgu.lt.qb, 0xf, 0x8090a0b, 0xc0d0e0f, 0x0, 0x0
  488. writemsg "[76] Test cmpgu.le.qb"
  489. dspck_dstio cmpgu.le.qb, 0xf, 0x0, 0x0, 0x0, 0x0
  490. dspck_dstio cmpgu.le.qb, 0x0, 0xffffffff, 0x0, 0x0, 0x0
  491. dspck_dstio cmpgu.le.qb, 0xf, 0x0, 0xffffffff, 0x0, 0x0
  492. dspck_dstio cmpgu.le.qb, 0xf, 0x10203, 0x4050607, 0x0, 0x0
  493. dspck_dstio cmpgu.le.qb, 0xf, 0x8090a0b, 0xc0d0e0f, 0x0, 0x0
  494. writemsg "[77] Test cmp.eq.ph"
  495. dspck_stio cmp.eq.ph, 0x0, 0x0, 0x0, 0x3000000
  496. dspck_stio cmp.eq.ph, 0x0, 0xffffffff, 0x0, 0x0
  497. dspck_stio cmp.eq.ph, 0xffffffff, 0x0, 0x0, 0x0
  498. dspck_stio cmp.eq.ph, 0x7fff7fff, 0xffffffff, 0x0, 0x0
  499. dspck_stio cmp.eq.ph, 0x11112222, 0x33334444, 0x0, 0x0
  500. writemsg "[78] Test cmp.lt.ph"
  501. dspck_stio cmp.lt.ph, 0x0, 0x0, 0x0, 0x0
  502. dspck_stio cmp.lt.ph, 0x0, 0xffffffff, 0x0, 0x0
  503. dspck_stio cmp.lt.ph, 0xffffffff, 0x0, 0x0, 0x3000000
  504. dspck_stio cmp.lt.ph, 0x7fff7fff, 0xffffffff, 0x0, 0x0
  505. dspck_stio cmp.lt.ph, 0x11112222, 0x33334444, 0x0, 0x3000000
  506. writemsg "[79] Test cmp.le.ph"
  507. dspck_stio cmp.le.ph, 0x0, 0x0, 0x0, 0x3000000
  508. dspck_stio cmp.le.ph, 0x0, 0xffffffff, 0x0, 0x0
  509. dspck_stio cmp.le.ph, 0xffffffff, 0x0, 0x0, 0x3000000
  510. dspck_stio cmp.le.ph, 0x7fff7fff, 0xffffffff, 0x0, 0x0
  511. dspck_stio cmp.le.ph, 0x11112222, 0x33334444, 0x0, 0x3000000
  512. writemsg "[80] Test pick.qb"
  513. dspck_dsti pick.qb, 0x0, 0x0, 0x0, 0x0
  514. dspck_dsti pick.qb, 0x0, 0xffffffff, 0x0, 0x0
  515. dspck_dsti pick.qb, 0xffffffff, 0xffffffff, 0x0, 0xf000000
  516. dspck_dsti pick.qb, 0xff, 0xffffffff, 0x0, 0x1000000
  517. dspck_dsti pick.qb, 0xff00, 0xffffffff, 0x0, 0x2000000
  518. writemsg "[81] Test pick.ph"
  519. dspck_dsti pick.ph, 0x0, 0x0, 0x0, 0x0
  520. dspck_dsti pick.ph, 0x0, 0xffffffff, 0x0, 0x0
  521. dspck_dsti pick.ph, 0xffffffff, 0xffffffff, 0x0, 0x3000000
  522. dspck_dsti pick.ph, 0xffff, 0xffffffff, 0x0, 0x1000000
  523. dspck_dsti pick.ph, 0xffff0000, 0xffffffff, 0x0, 0x2000000
  524. writemsg "[82] Test packrl.ph"
  525. dspck_dstio packrl.ph, 0x00000000, 0x00000000, 0x00000000, 0x0, 0x0
  526. dspck_dstio packrl.ph, 0x0000ffff, 0x00000000, 0xffff0000, 0x0, 0x0
  527. dspck_dstio packrl.ph, 0x00000000, 0x00000000, 0x0000ffff, 0x0, 0x0
  528. dspck_dstio packrl.ph, 0x00005555, 0x00000000, 0x5555aaaa, 0x0, 0x0
  529. dspck_dstio packrl.ph, 0x0000aaaa, 0x00000000, 0xaaaa5555, 0x0, 0x0
  530. writemsg "[83] Test extr.w"
  531. dspck_atsaio extr.w, 0x0, 0x0 0x0, 0x0, 0x0, 0x0
  532. dspck_atsaio extr.w, 0x7fffffff, 0xcbcdef01 0xffffffff, 0x1f, 0x0, 0x800000
  533. dspck_atsaio extr.w, 0x3fffffff, 0x2bcdef01 0x7ffffffe, 0x1f, 0x0, 0x0
  534. dspck_atsaio extr.w, 0xffffffff, 0xffffffff 0xffffffff, 0x0, 0x0, 0x0
  535. dspck_atsaio extr.w, 0x0, 0xfffffffe 0x7fffffff, 0x1, 0x0, 0x0
  536. writemsg "[84] Test extr_r.w"
  537. dspck_atsaio extr_r.w, 0x0, 0x0 0x0, 0x0, 0x0, 0x0
  538. dspck_atsaio extr_r.w, 0x7fffffff, 0xcbcdef01 0x0, 0x1f, 0x0, 0x800000
  539. dspck_atsaio extr_r.w, 0x3fffffff, 0x2bcdef01 0x7ffffffe, 0x1f, 0x0, 0x0
  540. dspck_atsaio extr_r.w, 0xffffffff, 0xffffffff 0xffffffff, 0x0, 0x0, 0x0
  541. dspck_atsaio extr_r.w, 0x0, 0xfffffffe 0x7fffffff, 0x1, 0x0, 0x0
  542. writemsg "[85] Test extr_rs.w"
  543. dspck_atsaio extr_rs.w, 0x0, 0x0 0x0, 0x0, 0x0, 0x0
  544. dspck_atsaio extr_rs.w, 0x7fffffff, 0xcbcdef01 0x7fffffff, 0x1f, 0x0, 0x800000
  545. dspck_atsaio extr_rs.w, 0x3fffffff, 0x2bcdef01 0x7ffffffe, 0x1f, 0x0, 0x0
  546. dspck_atsaio extr_rs.w, 0xffffffff, 0xffffffff 0xffffffff, 0x0, 0x0, 0x0
  547. dspck_atsaio extr_rs.w, 0x0, 0xfffffffe 0x7fffffff, 0x1, 0x0, 0x0
  548. writemsg "[86] Test extr_s.h"
  549. dspck_atsaio extr_s.h, 0x0, 0x0 0x0, 0x0, 0x0, 0x0
  550. dspck_atsaio extr_s.h, 0x7fffffff, 0xcbcdef01 0x7fff, 0x1f, 0x0, 0x800000
  551. dspck_atsaio extr_s.h, 0x3fffffff, 0x2bcdef01 0x7fff, 0x1f, 0x0, 0x800000
  552. dspck_atsaio extr_s.h, 0xffffffff, 0xffffffff 0xffffffff, 0x0, 0x0, 0x0
  553. dspck_atsaio extr_s.h, 0x0, 0xfffffffe 0x7fff, 0x1, 0x0, 0x800000
  554. writemsg "[87] Test extrv_s.h"
  555. dspck_atsio extrv_s.h, 0x0, 0x0 0x0, 0x0, 0x0, 0x0
  556. dspck_atsio extrv_s.h, 0x7fffffff, 0xcbcdef01 0x7fff, 0x1f, 0x0, 0x800000
  557. dspck_atsio extrv_s.h, 0x3fffffff, 0x2bcdef01 0x7fff, 0x1f, 0x0, 0x800000
  558. dspck_atsio extrv_s.h, 0xffffffff, 0xffffffff 0xffffffff, 0x0, 0x0, 0x0
  559. dspck_atsio extrv_s.h, 0x0, 0xfffffffe 0x7fff, 0x1, 0x0, 0x800000
  560. writemsg "[88] Test extrv.w"
  561. dspck_atsio extrv.w, 0x0, 0x0 0x0, 0x0, 0x0, 0x0
  562. dspck_atsio extrv.w, 0x7fffffff, 0xcbcdef01 0xffffffff, 0x1f, 0x0, 0x800000
  563. dspck_atsio extrv.w, 0x3fffffff, 0x2bcdef01 0x7ffffffe, 0x1f, 0x0, 0x0
  564. dspck_atsio extrv.w, 0xffffffff, 0xffffffff 0xffffffff, 0x0, 0x0, 0x0
  565. dspck_atsio extrv.w, 0x0, 0xfffffffe 0x7fffffff, 0x1, 0x0, 0x0
  566. writemsg "[89] Test extrv_r.w"
  567. dspck_atsio extrv_r.w, 0x0, 0x0 0x0, 0x0, 0x0, 0x0
  568. dspck_atsio extrv_r.w, 0x7fffffff, 0xcbcdef01 0x0, 0x1f, 0x0, 0x800000
  569. dspck_atsio extrv_r.w, 0x3fffffff, 0x2bcdef01 0x7ffffffe, 0x1f, 0x0, 0x0
  570. dspck_atsio extrv_r.w, 0xffffffff, 0xffffffff 0xffffffff, 0x0, 0x0, 0x0
  571. dspck_atsio extrv_r.w, 0x0, 0xfffffffe 0x7fffffff, 0x1, 0x0, 0x0
  572. writemsg "[90] Test extrv_rs.w"
  573. dspck_atsio extrv_rs.w, 0x0, 0x0 0x0, 0x0, 0x0, 0x0
  574. dspck_atsio extrv_rs.w, 0x7fffffff, 0xcbcdef01 0x7fffffff, 0x1f, 0x0, 0x800000
  575. dspck_atsio extrv_rs.w, 0x3fffffff, 0x2bcdef01 0x7ffffffe, 0x1f, 0x0, 0x0
  576. dspck_atsio extrv_rs.w, 0xffffffff, 0xffffffff 0xffffffff, 0x0, 0x0, 0x0
  577. dspck_atsio extrv_rs.w, 0x0, 0xfffffffe 0x7fffffff, 0x1, 0x0, 0x0
  578. writemsg "[91] Test extp"
  579. dspck_tasiimom extp, 0x0, 0x0, 0x0, 0x0, 0x4000, 0x403f, 0x0, 0x403f
  580. dspck_tasiimom extp, 0xffffffff, 0xffff7eff, 0x7e, 0x7, 0xf, 0x3f, 0x0, 0x4000
  581. dspck_tasiim extp, 0xfffffff7, 0xefffffff, 0x7e, 0x7, 0x23, 0x3f
  582. dspck_tasiim extp, 0xffff7eff, 0xffffffff, 0x7e, 0x7, 0x2f, 0x3f
  583. writemsg "[92] Test extpv"
  584. dspck_tasimom extpv, 0x0, 0x0, 0x0, 0x0, 0x4000, 0x403f, 0x0, 0x403f
  585. dspck_tasimom extpv, 0xffffffff, 0xffff7eff, 0x7e, 0x7, 0xf, 0x3f, 0x0, 0x4000
  586. dspck_tasim extpv, 0xfffffff7, 0xefffffff, 0x7e, 0x7, 0x23, 0x3f
  587. dspck_tasim extpv, 0xffff7eff, 0xffffffff, 0x7e, 0x7, 0x2f, 0x3f
  588. writemsg "[93] Test extpdp"
  589. dspck_tasiimom extpdp, 0x0, 0x0, 0x0, 0x0, 0x4000, 0x403f, 0x3f, 0x403f
  590. dspck_tasiimom extpdp, 0xffffffff, 0xffff7eff, 0x7e, 0x7, 0xf, 0x3f, 0x0, 0x4000
  591. dspck_tasiim extpdp, 0xfffffff7, 0xefffffff, 0x7e, 0x7, 0x23, 0x3f
  592. dspck_tasiim extpdp, 0xffff7eff, 0xffffffff, 0x7e, 0x7, 0x2f, 0x3f
  593. writemsg "[94] Test extpdpv"
  594. dspck_tasimom extpdpv, 0x0, 0x0, 0x0, 0x0, 0x4000, 0x403f, 0x3f, 0x403f
  595. dspck_tasimom extpdpv, 0xffffffff, 0xffff7eff, 0x7e, 0x7, 0xf, 0x3f, 0x0, 0x4000
  596. dspck_tasim extpdpv, 0xfffffff7, 0xefffffff, 0x7e, 0x7, 0x23, 0x3f
  597. dspck_tasim extpdpv, 0xffff7eff, 0xffffffff, 0x7e, 0x7, 0x2f, 0x3f
  598. writemsg "[95] Test shilo"
  599. dspck_asaio shilo, 0x0, 0x0, 0x0, 0x0, 0, 0x0, 0x0
  600. dspck_asaio shilo, 0x1, 0x80000000, 0x1, 0x80000000, 0, 0x0, 0x0
  601. dspck_asaio shilo, 0x1, 0x80000000, 0x3, 0x0, -1, 0x0, 0x0
  602. dspck_asaio shilo, 0x1, 0x80000000, 0x6, 0x0, -2, 0x0, 0x0
  603. dspck_asaio shilo, 0x1, 0x80000000, 0x18, 0x0, -4, 0x0, 0x0
  604. writemsg "[96] Test shilov"
  605. dspck_asio shilov, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0
  606. dspck_asio shilov, 0x1, 0x80000000, 0x1, 0x80000000, 0x0, 0x0, 0x0
  607. dspck_asio shilov, 0x1, 0x80000000, 0x3, 0x0, 0xffffffff, 0x0, 0x0
  608. dspck_asio shilov, 0x1, 0x80000000, 0x6, 0x0, 0xfffffffe, 0x0, 0x0
  609. dspck_asio shilov, 0x1, 0x80000000, 0x18, 0x0, 0xfffffffc, 0x0, 0x0
  610. writemsg "[97] Test mthlip"
  611. dspck_saio mthlip, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x20
  612. dspck_saio mthlip, 0x0, 0x1, 0x1, 0x2, 0x2, 0x8, 0x28
  613. dspck_saio mthlip, 0xffffffff, 0xffff1234, 0xffff1234, 0xfffffffe, 0xfffffffe, 0x10, 0x30
  614. dspck_saio mthlip, 0xdeadbeef, 0x1234, 0x1234, 0xbeefdead, 0xbeefdead, 0x18, 0x38
  615. writemsg "[98] Test wrdsp"
  616. dspck_wrdsp 0x0, 0x0, 0x0, 0x0
  617. dspck_wrdsp 0x4000, 0x20, 0x0, 0x4000
  618. dspck_wrdsp 0xffffffff, 0x3f, 0x0, 0x0fff7fbf
  619. dspck_wrdsp 0x3f, 0x1, 0x0, 0x3f
  620. dspck_wrdsp 0x1f80, 0x2, 0x0, 0x1f80
  621. writemsg "[99] Test rddsp"
  622. dspck_rddsp 0x0, 0x0, 0x0
  623. dspck_rddsp 0x0, 0x0, 0xffffffff
  624. dspck_rddsp 0x3f, 0x1, 0xffffffff
  625. dspck_rddsp 0x1f80, 0x2, 0x0fff7fbf
  626. dspck_rddsp 0x2000, 0x4, 0x0fff7fbf
  627. writemsg "[100] Test lbux"
  628. .data
  629. mydata:
  630. .byte 0x12
  631. .byte 0x34
  632. .byte 0x56
  633. .byte 0x78
  634. .byte 0x9a
  635. .byte 0xbc
  636. .byte 0xde
  637. .byte 0xf0
  638. .previous
  639. dspck_load lbux, 0x12, 0x0, mydata
  640. dspck_load lbux, 0x34, 0x1, mydata
  641. dspck_load lbux, 0x56, 0x2, mydata
  642. dspck_load lbux, 0x78, 0x3, mydata
  643. dspck_load lbux, 0x9a, 0x4, mydata
  644. dspck_load lbux, 0xbc, 0x5, mydata
  645. dspck_load lbux, 0xde, 0x6, mydata
  646. dspck_load lbux, 0xf0, 0x7, mydata
  647. writemsg "[101] Test lhx"
  648. .data
  649. myhdata:
  650. .hword 0x1234
  651. .hword 0x5678
  652. .hword 0x9abc
  653. .hword 0xdef0
  654. .previous
  655. dspck_load lhx, 0x1234, 0x0, myhdata
  656. dspck_load lhx, 0x5678, 0x2, myhdata
  657. dspck_load lhx, 0xffff9abc, 0x4, myhdata
  658. dspck_load lhx, 0xffffdef0, 0x6, myhdata
  659. writemsg "[102] Test lwx"
  660. .data
  661. mywdata:
  662. .word 0x12345678
  663. .word 0x9abcdef0
  664. .word 0x13579abc
  665. .word 0xffff0001
  666. .previous
  667. dspck_load lwx, 0x12345678, 0x0, mywdata
  668. dspck_load lwx, 0x9abcdef0, 0x4, mywdata
  669. dspck_load lwx, 0x13579abc, 0x8, mywdata
  670. dspck_load lwx, 0xffff0001, 0xc, mywdata
  671. writemsg "[103] Test bposge32"
  672. dspck_bposge32 0x0, 0
  673. dspck_bposge32 0x1f, 0
  674. dspck_bposge32 0x20, 1
  675. dspck_bposge32 0x3f, 1
  676. pass
  677. .end DIAG