cstbf.cgs 2.7 KB

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