cstbu.cgs 3.3 KB

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