cldshu.cgs 3.2 KB

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