cstu.cgs 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152
  1. # frv testcase for cstu $GRk,@($GRi,$GRj),$CCi,$cond
  2. # mach: all
  3. .include "testutils.inc"
  4. start
  5. .global cstu
  6. cstu:
  7. set_spr_immed 0x1b1b,cccr
  8. set_gr_gr sp,gr21
  9. set_mem_limmed 0xdead,0xbeef,sp
  10. set_gr_immed 0,gr7
  11. set_gr_limmed 0xffff,0xffff,gr8
  12. cstu gr8,@(sp,gr7),cc0,1
  13. test_mem_limmed 0xffff,0xffff,gr21
  14. test_gr_gr sp,gr21
  15. inc_gr_immed -4,sp
  16. set_gr_immed 4,gr7
  17. set_gr_limmed 0xeeee,0xffff,gr8
  18. cstu gr8,@(sp,gr7),cc0,1
  19. test_mem_limmed 0xeeee,0xffff,gr21
  20. test_gr_gr sp,gr21
  21. inc_gr_immed 4,sp
  22. set_gr_immed -4,gr7
  23. set_gr_limmed 0xcccc,0xdddd,gr8
  24. cstu gr8,@(sp,gr7),cc4,1
  25. test_mem_limmed 0xcccc,0xdddd,gr21
  26. test_gr_gr sp,gr21
  27. set_gr_gr gr21,sp
  28. set_mem_limmed 0xdead,0xbeef,sp
  29. set_gr_immed 0,gr7
  30. set_gr_limmed 0xffff,0xffff,gr8
  31. cstu gr8,@(sp,gr7),cc0,0
  32. test_mem_limmed 0xdead,0xbeef,gr21
  33. test_gr_gr sp,gr21
  34. inc_gr_immed -4,sp
  35. set_gr_gr sp,gr20
  36. set_gr_immed 4,gr7
  37. set_gr_limmed 0xeeee,0xffff,gr8
  38. cstu gr8,@(sp,gr7),cc0,0
  39. test_mem_limmed 0xdead,0xbeef,gr21
  40. test_gr_gr sp,gr20
  41. inc_gr_immed 8,sp
  42. set_gr_gr sp,gr20
  43. set_gr_immed -4,gr7
  44. set_gr_limmed 0xcccc,0xdddd,gr8
  45. cstu gr8,@(sp,gr7),cc4,0
  46. test_mem_limmed 0xdead,0xbeef,gr21
  47. test_gr_gr sp,gr20
  48. set_gr_gr gr21,sp
  49. set_mem_limmed 0xdead,0xbeef,sp
  50. set_gr_immed 0,gr7
  51. set_gr_limmed 0xffff,0xffff,gr8
  52. cstu gr8,@(sp,gr7),cc1,0
  53. test_mem_limmed 0xffff,0xffff,gr21
  54. test_gr_gr sp,gr21
  55. inc_gr_immed -4,sp
  56. set_gr_immed 4,gr7
  57. set_gr_limmed 0xeeee,0xffff,gr8
  58. cstu gr8,@(sp,gr7),cc1,0
  59. test_mem_limmed 0xeeee,0xffff,gr21
  60. test_gr_gr sp,gr21
  61. inc_gr_immed 4,sp
  62. set_gr_immed -4,gr7
  63. set_gr_limmed 0xcccc,0xdddd,gr8
  64. cstu gr8,@(sp,gr7),cc5,0
  65. test_mem_limmed 0xcccc,0xdddd,gr21
  66. test_gr_gr sp,gr21
  67. set_gr_gr gr21,sp
  68. set_mem_limmed 0xdead,0xbeef,sp
  69. set_gr_immed 0,gr7
  70. set_gr_limmed 0xffff,0xffff,gr8
  71. cstu gr8,@(sp,gr7),cc1,1
  72. test_mem_limmed 0xdead,0xbeef,gr21
  73. test_gr_gr sp,gr21
  74. inc_gr_immed -4,sp
  75. set_gr_gr sp,gr20
  76. set_gr_immed 4,gr7
  77. set_gr_limmed 0xeeee,0xffff,gr8
  78. cstu gr8,@(sp,gr7),cc1,1
  79. test_mem_limmed 0xdead,0xbeef,gr21
  80. test_gr_gr sp,gr20
  81. inc_gr_immed 8,sp
  82. set_gr_gr sp,gr20
  83. set_gr_immed -4,gr7
  84. set_gr_limmed 0xcccc,0xdddd,gr8
  85. cstu gr8,@(sp,gr7),cc5,1
  86. test_mem_limmed 0xdead,0xbeef,gr21
  87. test_gr_gr sp,gr20
  88. set_gr_gr gr21,sp
  89. set_mem_limmed 0xdead,0xbeef,sp
  90. set_gr_immed 0,gr7
  91. set_gr_limmed 0xffff,0xffff,gr8
  92. cstu gr8,@(sp,gr7),cc2,0
  93. test_mem_limmed 0xdead,0xbeef,gr21
  94. test_gr_gr sp,gr21
  95. inc_gr_immed -4,sp
  96. set_gr_gr sp,gr20
  97. set_gr_immed 4,gr7
  98. set_gr_limmed 0xeeee,0xffff,gr8
  99. cstu gr8,@(sp,gr7),cc2,1
  100. test_mem_limmed 0xdead,0xbeef,gr21
  101. test_gr_gr sp,gr20
  102. inc_gr_immed 8,sp
  103. set_gr_gr sp,gr20
  104. set_gr_immed -4,gr7
  105. set_gr_limmed 0xcccc,0xdddd,gr8
  106. cstu gr8,@(sp,gr7),cc6,0
  107. test_mem_limmed 0xdead,0xbeef,gr21
  108. test_gr_gr sp,gr20
  109. set_gr_gr gr21,sp
  110. set_mem_limmed 0xdead,0xbeef,sp
  111. set_gr_immed 0,gr7
  112. set_gr_limmed 0xffff,0xffff,gr8
  113. cstu gr8,@(sp,gr7),cc3,1
  114. test_mem_limmed 0xdead,0xbeef,gr21
  115. test_gr_gr sp,gr21
  116. inc_gr_immed -4,sp
  117. set_gr_gr sp,gr20
  118. set_gr_immed 4,gr7
  119. set_gr_limmed 0xeeee,0xffff,gr8
  120. cstu gr8,@(sp,gr7),cc3,0
  121. test_mem_limmed 0xdead,0xbeef,gr21
  122. test_gr_gr sp,gr20
  123. inc_gr_immed 8,sp
  124. set_gr_gr sp,gr20
  125. set_gr_immed -4,gr7
  126. set_gr_limmed 0xcccc,0xdddd,gr8
  127. cstu gr8,@(sp,gr7),cc7,1
  128. test_mem_limmed 0xdead,0xbeef,gr21
  129. test_gr_gr sp,gr20
  130. pass