mabshs.cgs 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. # frv testcase for mabshs $FRj,$FRk
  2. # mach: fr400
  3. .include "testutils.inc"
  4. start
  5. .global mabshs
  6. mabshs:
  7. set_fr_iimmed 0x0000,0x0000,fr10
  8. mabshs fr10,fr11
  9. test_fr_limmed 0x0000,0x0000,fr11
  10. test_spr_bits 0x3c,2,0,msr0 ; msr0.sie is clear
  11. test_spr_bits 2,1,0,msr0 ; msr0.ovf not set
  12. test_spr_bits 1,0,0,msr0 ; msr0.aovf not set
  13. test_spr_bits 0x7000,12,0,msr0 ; msr0.mtt not set
  14. set_fr_iimmed 0x0001,0xffff,fr10
  15. mabshs fr10,fr11
  16. test_fr_limmed 0x0001,0x0001,fr11
  17. test_spr_bits 0x3c,2,0,msr0 ; msr0.sie is clear
  18. test_spr_bits 2,1,0,msr0 ; msr0.ovf not set
  19. test_spr_bits 1,0,0,msr0 ; msr0.aovf not set
  20. test_spr_bits 0x7000,12,0,msr0 ; msr0.mtt not set
  21. set_fr_iimmed 0x7fff,0x8001,fr10
  22. mabshs fr10,fr11
  23. test_fr_limmed 0x7fff,0x7fff,fr11
  24. test_spr_bits 0x3c,2,0,msr0 ; msr0.sie is clear
  25. test_spr_bits 2,1,0,msr0 ; msr0.ovf not set
  26. test_spr_bits 1,0,0,msr0 ; msr0.aovf not set
  27. test_spr_bits 0x7000,12,0,msr0 ; msr0.mtt not set
  28. set_spr_immed 0,msr0
  29. set_fr_iimmed 0x7fff,0x8000,fr10
  30. mabshs fr10,fr11
  31. test_fr_limmed 0x7fff,0x7fff,fr11
  32. test_spr_bits 0x3c,2,0x4,msr0 ; msr0.sie is set
  33. test_spr_bits 2,1,1,msr0 ; msr0.ovf set
  34. test_spr_bits 1,0,1,msr0 ; msr0.aovf set
  35. test_spr_bits 0x7000,12,1,msr0 ; msr0.mtt set
  36. set_spr_immed 0,msr0
  37. set_fr_iimmed 0x8000,0x7fff,fr10
  38. mabshs fr10,fr11
  39. test_fr_limmed 0x7fff,0x7fff,fr11
  40. test_spr_bits 0x3c,2,0x8,msr0 ; msr0.sie is set
  41. test_spr_bits 2,1,1,msr0 ; msr0.ovf set
  42. test_spr_bits 1,0,1,msr0 ; msr0.aovf set
  43. test_spr_bits 0x7000,12,1,msr0 ; msr0.mtt set
  44. set_spr_immed 0,msr0
  45. set_spr_immed 0,msr1
  46. set_fr_iimmed 0x7fff,0x8000,fr10
  47. set_fr_iimmed 0x8000,0x7fff,fr11
  48. mabshs.p fr10,fr12
  49. mabshs fr11,fr13
  50. test_fr_limmed 0x7fff,0x7fff,fr12
  51. test_fr_limmed 0x7fff,0x7fff,fr13
  52. test_spr_bits 0x3c,2,0x4,msr0 ; msr0.sie is set
  53. test_spr_bits 0x3c,2,0x8,msr1 ; msr1.sie is set
  54. test_spr_bits 2,1,1,msr0 ; msr0.ovf set
  55. test_spr_bits 2,1,1,msr1 ; msr1.ovf set
  56. test_spr_bits 1,0,1,msr0 ; msr0.aovf set
  57. test_spr_bits 0x7000,12,1,msr0 ; msr0.mtt set
  58. pass