stdf.pcgs 909 B

12345678910111213141516171819202122232425262728293031323334353637
  1. # frv parallel testcase for stdf $GRk,@($GRi,$GRj)
  2. # mach: fr500 fr550 frv
  3. .include "testutils.inc"
  4. start
  5. .global stdf
  6. stdf:
  7. set_mem_limmed 0xbeef,0xdead,sp
  8. inc_gr_immed -4,sp
  9. set_mem_limmed 0xdead,0xbeef,sp
  10. set_gr_immed 0,gr7
  11. set_fr_iimmed 0xbeef,0xdead,fr8
  12. set_fr_iimmed 0xdead,0xbeef,fr9
  13. stdf fr8,@(sp,gr7) ; non parallel
  14. test_mem_limmed 0xbeef,0xdead,sp
  15. inc_gr_immed 4,sp
  16. test_mem_limmed 0xdead,0xbeef,sp
  17. set_mem_limmed 0xbeef,0xdead,sp
  18. inc_gr_immed -4,sp
  19. set_mem_limmed 0xdead,0xbeef,sp
  20. set_gr_immed 4,gr7
  21. set_fr_iimmed 0xbeef,0xdead,fr8
  22. set_fr_iimmed 0xdead,0xbeef,fr9
  23. stdf.p fr8,@(sp,gr0) ; parallel
  24. fnegs fr8,fr8
  25. ldf @(sp,gr0),fr10
  26. ldf @(sp,gr7),fr11 ; memory is set
  27. test_mem_limmed 0xbeef,0xdead,sp
  28. inc_gr_immed 4,sp
  29. test_mem_limmed 0xdead,0xbeef,sp
  30. test_fr_iimmed 0xbeefdead,fr10 ; regs were pre-loaded
  31. test_fr_iimmed 0xdeadbeef,fr11 ; not this one
  32. pass