icpl.cgs 796 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. # FRV testcase for icpl GRi,GRj,lock
  2. # mach: all
  3. .include "testutils.inc"
  4. start
  5. .global icpl
  6. ; keep this at least 64 bytes away from doit2
  7. bra icpl
  8. doit1: add gr11,gr12,gr11
  9. bralr
  10. icpl:
  11. or_spr_immed 0x80000000,hsr0 ; insn cache: enable
  12. and_spr_immed 0xbfffffff,hsr0 ; data cache: disable
  13. set_gr_immed 0,gr11
  14. set_gr_immed 1,gr12
  15. set_gr_immed 2,gr13
  16. set_gr_addr doit1,gr10
  17. icpl gr10,gr0,0 ; preload insns at doit1
  18. set_mem_immed 0x9600b00d,gr10 ; change to add gr11,gr13,gr11
  19. set_gr_addr doit2,gr10
  20. set_mem_immed 0x9600b00d,gr10 ; change to add gr11,gr13,gr11
  21. set_spr_addr ok1,lr
  22. bra doit1
  23. ok1: test_gr_immed 1,gr11 ; used preloaded add of 1
  24. set_spr_addr ok2,lr
  25. bra doit2
  26. ok2: test_gr_immed 3,gr11 ; used changed add of 2
  27. pass
  28. doit2: add gr11,gr12,gr11
  29. bralr