cstf.cgs 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126
  1. # frv testcase for cstf $FRk,@($GRi,$GRj),$CCi,$cond
  2. # mach: all
  3. .include "testutils.inc"
  4. start
  5. .global cstf
  6. cstf:
  7. set_spr_immed 0x1b1b,cccr
  8. set_gr_gr sp,gr20
  9. set_mem_limmed 0xdead,0xbeef,sp
  10. set_gr_immed 0,gr7
  11. set_fr_iimmed 0xffff,0xffff,fr8
  12. cstf fr8,@(sp,gr7),cc0,1
  13. test_mem_limmed 0xffff,0xffff,gr20
  14. set_gr_immed 4,gr7
  15. inc_gr_immed -4,sp
  16. set_fr_iimmed 0xeeee,0xeeee,fr8
  17. cstf fr8,@(sp,gr7),cc0,1
  18. test_mem_limmed 0xeeee,0xeeee,gr20
  19. set_gr_immed -4,gr7
  20. inc_gr_immed 8,sp
  21. set_fr_iimmed 0xdddd,0xdddd,fr8
  22. cstf fr8,@(sp,gr7),cc4,1
  23. test_mem_limmed 0xdddd,0xdddd,gr20
  24. set_gr_gr gr20,sp
  25. set_mem_limmed 0xdead,0xbeef,sp
  26. set_gr_immed 0,gr7
  27. set_fr_iimmed 0xffff,0xffff,fr8
  28. cstf fr8,@(sp,gr7),cc0,0
  29. test_mem_limmed 0xdead,0xbeef,gr20
  30. set_gr_immed 4,gr7
  31. inc_gr_immed -4,sp
  32. set_fr_iimmed 0xeeee,0xeeee,fr8
  33. cstf fr8,@(sp,gr7),cc0,0
  34. test_mem_limmed 0xdead,0xbeef,gr20
  35. set_gr_immed -4,gr7
  36. inc_gr_immed 8,sp
  37. set_fr_iimmed 0xdddd,0xdddd,fr8
  38. cstf fr8,@(sp,gr7),cc4,0
  39. test_mem_limmed 0xdead,0xbeef,gr20
  40. set_gr_gr gr20,sp
  41. set_mem_limmed 0xdead,0xbeef,sp
  42. set_gr_immed 0,gr7
  43. set_fr_iimmed 0xffff,0xffff,fr8
  44. cstf fr8,@(sp,gr7),cc1,0
  45. test_mem_limmed 0xffff,0xffff,gr20
  46. set_gr_immed 4,gr7
  47. inc_gr_immed -4,sp
  48. set_fr_iimmed 0xeeee,0xeeee,fr8
  49. cstf fr8,@(sp,gr7),cc1,0
  50. test_mem_limmed 0xeeee,0xeeee,gr20
  51. set_gr_immed -4,gr7
  52. inc_gr_immed 8,sp
  53. set_fr_iimmed 0xdddd,0xdddd,fr8
  54. cstf fr8,@(sp,gr7),cc5,0
  55. test_mem_limmed 0xdddd,0xdddd,gr20
  56. set_gr_gr gr20,sp
  57. set_mem_limmed 0xdead,0xbeef,sp
  58. set_gr_immed 0,gr7
  59. set_fr_iimmed 0xffff,0xffff,fr8
  60. cstf fr8,@(sp,gr7),cc1,1
  61. test_mem_limmed 0xdead,0xbeef,gr20
  62. set_gr_immed 4,gr7
  63. inc_gr_immed -4,sp
  64. set_fr_iimmed 0xeeee,0xeeee,fr8
  65. cstf fr8,@(sp,gr7),cc1,1
  66. test_mem_limmed 0xdead,0xbeef,gr20
  67. set_gr_immed -4,gr7
  68. inc_gr_immed 8,sp
  69. set_fr_iimmed 0xdddd,0xdddd,fr8
  70. cstf fr8,@(sp,gr7),cc5,1
  71. test_mem_limmed 0xdead,0xbeef,gr20
  72. set_gr_gr gr20,sp
  73. set_mem_limmed 0xdead,0xbeef,sp
  74. set_gr_immed 0,gr7
  75. set_fr_iimmed 0xffff,0xffff,fr8
  76. cstf fr8,@(sp,gr7),cc2,0
  77. test_mem_limmed 0xdead,0xbeef,gr20
  78. set_gr_immed 4,gr7
  79. inc_gr_immed -4,sp
  80. set_fr_iimmed 0xeeee,0xeeee,fr8
  81. cstf fr8,@(sp,gr7),cc2,1
  82. test_mem_limmed 0xdead,0xbeef,gr20
  83. set_gr_immed -4,gr7
  84. inc_gr_immed 8,sp
  85. set_fr_iimmed 0xdddd,0xdddd,fr8
  86. cstf fr8,@(sp,gr7),cc6,0
  87. test_mem_limmed 0xdead,0xbeef,gr20
  88. set_gr_gr gr20,sp
  89. set_mem_limmed 0xdead,0xbeef,sp
  90. set_gr_immed 0,gr7
  91. set_fr_iimmed 0xffff,0xffff,fr8
  92. cstf fr8,@(sp,gr7),cc3,1
  93. test_mem_limmed 0xdead,0xbeef,gr20
  94. set_gr_immed 4,gr7
  95. inc_gr_immed -4,sp
  96. set_fr_iimmed 0xeeee,0xeeee,fr8
  97. cstf fr8,@(sp,gr7),cc3,0
  98. test_mem_limmed 0xdead,0xbeef,gr20
  99. set_gr_immed -4,gr7
  100. inc_gr_immed 8,sp
  101. set_fr_iimmed 0xdddd,0xdddd,fr8
  102. cstf fr8,@(sp,gr7),cc7,1
  103. test_mem_limmed 0xdead,0xbeef,gr20
  104. pass