cldsbu.cgs 3.2 KB

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