clddf.cgs 4.1 KB

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