cstd.cgs 5.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221
  1. # frv testcase for cstd $GRk,@($GRi,$GRj)
  2. # mach: all
  3. .include "testutils.inc"
  4. start
  5. .global cstd
  6. cstd:
  7. set_spr_immed 0x1b1b,cccr
  8. set_mem_limmed 0xbeef,0xdead,sp
  9. inc_gr_immed -4,sp
  10. set_mem_limmed 0xdead,0xbeef,sp
  11. set_gr_gr sp,gr20
  12. set_gr_gr sp,gr21
  13. set_gr_immed 0,gr7
  14. set_gr_limmed 0xbeef,0xdead,gr8
  15. set_gr_limmed 0xdead,0xbeef,gr9
  16. cstd gr8,@(sp,gr7),cc0,1
  17. test_mem_limmed 0xbeef,0xdead,gr21
  18. inc_gr_immed 4,gr21
  19. test_mem_limmed 0xdead,0xbeef,gr21
  20. set_gr_gr gr20,gr21
  21. inc_gr_immed -8,sp
  22. set_gr_immed 8,gr7
  23. set_gr_limmed 0xaaaa,0xaaaa,gr8
  24. set_gr_limmed 0xbbbb,0xbbbb,gr9
  25. cstd gr8,@(sp,gr7),cc0,1
  26. test_mem_limmed 0xaaaa,0xaaaa,gr21
  27. inc_gr_immed 4,gr21
  28. test_mem_limmed 0xbbbb,0xbbbb,gr21
  29. set_gr_gr gr20,gr21
  30. inc_gr_immed 16,sp
  31. set_gr_immed -8,gr7
  32. set_gr_limmed 0xcccc,0xcccc,gr8
  33. set_gr_limmed 0xdddd,0xdddd,gr9
  34. cstd gr8,@(sp,gr7),cc4,1
  35. test_mem_limmed 0xcccc,0xcccc,gr21
  36. inc_gr_immed 4,gr21
  37. test_mem_limmed 0xdddd,0xdddd,gr21
  38. set_gr_gr gr20,gr21
  39. set_gr_gr gr20,sp
  40. set_mem_limmed 0xdead,0xbeef,sp
  41. inc_gr_immed 4,sp
  42. set_mem_limmed 0xbeef,0xdead,sp
  43. inc_gr_immed -4,sp
  44. set_gr_immed 0,gr7
  45. set_gr_limmed 0xbeef,0xdead,gr8
  46. set_gr_limmed 0xdead,0xbeef,gr9
  47. cstd gr8,@(sp,gr7),cc0,0
  48. test_mem_limmed 0xdead,0xbeef,gr21
  49. inc_gr_immed 4,gr21
  50. test_mem_limmed 0xbeef,0xdead,gr21
  51. set_gr_gr gr20,gr21
  52. inc_gr_immed -8,sp
  53. set_gr_immed 8,gr7
  54. set_gr_limmed 0xaaaa,0xaaaa,gr8
  55. set_gr_limmed 0xbbbb,0xbbbb,gr9
  56. cstd gr8,@(sp,gr7),cc0,0
  57. test_mem_limmed 0xdead,0xbeef,gr21
  58. inc_gr_immed 4,gr21
  59. test_mem_limmed 0xbeef,0xdead,gr21
  60. set_gr_gr gr20,gr21
  61. inc_gr_immed 16,sp
  62. set_gr_immed -8,gr7
  63. set_gr_limmed 0xcccc,0xcccc,gr8
  64. set_gr_limmed 0xdddd,0xdddd,gr9
  65. cstd gr8,@(sp,gr7),cc4,0
  66. test_mem_limmed 0xdead,0xbeef,gr21
  67. inc_gr_immed 4,gr21
  68. test_mem_limmed 0xbeef,0xdead,gr21
  69. set_gr_gr gr20,gr21
  70. set_gr_gr gr20,sp
  71. set_mem_limmed 0xdead,0xbeef,sp
  72. inc_gr_immed 4,sp
  73. set_mem_limmed 0xbeef,0xdead,sp
  74. inc_gr_immed -4,sp
  75. set_gr_immed 0,gr7
  76. set_gr_limmed 0xbeef,0xdead,gr8
  77. set_gr_limmed 0xdead,0xbeef,gr9
  78. cstd gr8,@(sp,gr7),cc1,0
  79. test_mem_limmed 0xbeef,0xdead,gr21
  80. inc_gr_immed 4,gr21
  81. test_mem_limmed 0xdead,0xbeef,gr21
  82. set_gr_gr gr20,gr21
  83. inc_gr_immed -8,sp
  84. set_gr_immed 8,gr7
  85. set_gr_limmed 0xaaaa,0xaaaa,gr8
  86. set_gr_limmed 0xbbbb,0xbbbb,gr9
  87. cstd gr8,@(sp,gr7),cc1,0
  88. test_mem_limmed 0xaaaa,0xaaaa,gr21
  89. inc_gr_immed 4,gr21
  90. test_mem_limmed 0xbbbb,0xbbbb,gr21
  91. set_gr_gr gr20,gr21
  92. inc_gr_immed 16,sp
  93. set_gr_immed -8,gr7
  94. set_gr_limmed 0xcccc,0xcccc,gr8
  95. set_gr_limmed 0xdddd,0xdddd,gr9
  96. cstd gr8,@(sp,gr7),cc5,0
  97. test_mem_limmed 0xcccc,0xcccc,gr21
  98. inc_gr_immed 4,gr21
  99. test_mem_limmed 0xdddd,0xdddd,gr21
  100. set_gr_gr gr20,gr21
  101. set_gr_gr gr20,sp
  102. set_mem_limmed 0xdead,0xbeef,sp
  103. inc_gr_immed 4,sp
  104. set_mem_limmed 0xbeef,0xdead,sp
  105. inc_gr_immed -4,sp
  106. set_gr_immed 0,gr7
  107. set_gr_limmed 0xbeef,0xdead,gr8
  108. set_gr_limmed 0xdead,0xbeef,gr9
  109. cstd gr8,@(sp,gr7),cc1,1
  110. test_mem_limmed 0xdead,0xbeef,gr21
  111. inc_gr_immed 4,gr21
  112. test_mem_limmed 0xbeef,0xdead,gr21
  113. set_gr_gr gr20,gr21
  114. inc_gr_immed -8,sp
  115. set_gr_immed 8,gr7
  116. set_gr_limmed 0xaaaa,0xaaaa,gr8
  117. set_gr_limmed 0xbbbb,0xbbbb,gr9
  118. cstd gr8,@(sp,gr7),cc1,1
  119. test_mem_limmed 0xdead,0xbeef,gr21
  120. inc_gr_immed 4,gr21
  121. test_mem_limmed 0xbeef,0xdead,gr21
  122. set_gr_gr gr20,gr21
  123. inc_gr_immed 16,sp
  124. set_gr_immed -8,gr7
  125. set_gr_limmed 0xcccc,0xcccc,gr8
  126. set_gr_limmed 0xdddd,0xdddd,gr9
  127. cstd gr8,@(sp,gr7),cc5,1
  128. test_mem_limmed 0xdead,0xbeef,gr21
  129. inc_gr_immed 4,gr21
  130. test_mem_limmed 0xbeef,0xdead,gr21
  131. set_gr_gr gr20,gr21
  132. set_gr_gr gr20,sp
  133. set_mem_limmed 0xdead,0xbeef,sp
  134. inc_gr_immed 4,sp
  135. set_mem_limmed 0xbeef,0xdead,sp
  136. inc_gr_immed -4,sp
  137. set_gr_immed 0,gr7
  138. set_gr_limmed 0xbeef,0xdead,gr8
  139. set_gr_limmed 0xdead,0xbeef,gr9
  140. cstd gr8,@(sp,gr7),cc2,0
  141. test_mem_limmed 0xdead,0xbeef,gr21
  142. inc_gr_immed 4,gr21
  143. test_mem_limmed 0xbeef,0xdead,gr21
  144. set_gr_gr gr20,gr21
  145. inc_gr_immed -8,sp
  146. set_gr_immed 8,gr7
  147. set_gr_limmed 0xaaaa,0xaaaa,gr8
  148. set_gr_limmed 0xbbbb,0xbbbb,gr9
  149. cstd gr8,@(sp,gr7),cc2,1
  150. test_mem_limmed 0xdead,0xbeef,gr21
  151. inc_gr_immed 4,gr21
  152. test_mem_limmed 0xbeef,0xdead,gr21
  153. set_gr_gr gr20,gr21
  154. inc_gr_immed 16,sp
  155. set_gr_immed -8,gr7
  156. set_gr_limmed 0xcccc,0xcccc,gr8
  157. set_gr_limmed 0xdddd,0xdddd,gr9
  158. cstd gr8,@(sp,gr7),cc6,0
  159. test_mem_limmed 0xdead,0xbeef,gr21
  160. inc_gr_immed 4,gr21
  161. test_mem_limmed 0xbeef,0xdead,gr21
  162. set_gr_gr gr20,gr21
  163. set_gr_gr gr20,sp
  164. set_mem_limmed 0xdead,0xbeef,sp
  165. inc_gr_immed 4,sp
  166. set_mem_limmed 0xbeef,0xdead,sp
  167. inc_gr_immed -4,sp
  168. set_gr_immed 0,gr7
  169. set_gr_limmed 0xbeef,0xdead,gr8
  170. set_gr_limmed 0xdead,0xbeef,gr9
  171. cstd gr8,@(sp,gr7),cc3,1
  172. test_mem_limmed 0xdead,0xbeef,gr21
  173. inc_gr_immed 4,gr21
  174. test_mem_limmed 0xbeef,0xdead,gr21
  175. set_gr_gr gr20,gr21
  176. inc_gr_immed -8,sp
  177. set_gr_immed 8,gr7
  178. set_gr_limmed 0xaaaa,0xaaaa,gr8
  179. set_gr_limmed 0xbbbb,0xbbbb,gr9
  180. cstd gr8,@(sp,gr7),cc3,0
  181. test_mem_limmed 0xdead,0xbeef,gr21
  182. inc_gr_immed 4,gr21
  183. test_mem_limmed 0xbeef,0xdead,gr21
  184. set_gr_gr gr20,gr21
  185. inc_gr_immed 16,sp
  186. set_gr_immed -8,gr7
  187. set_gr_limmed 0xcccc,0xcccc,gr8
  188. set_gr_limmed 0xdddd,0xdddd,gr9
  189. cstd gr8,@(sp,gr7),cc7,1
  190. test_mem_limmed 0xdead,0xbeef,gr21
  191. inc_gr_immed 4,gr21
  192. test_mem_limmed 0xbeef,0xdead,gr21
  193. pass