1 # mach: frv fr500 fr550
2 # sim: --memory-region 0xff000000,4 --memory-region 0xfe000000,00404000
3 # xfail: "crashes with bad write" *-*
5 ; Exit with return code
19 sethi.p %hi(passmsg),gr9
20 setlo %lo(passmsg),gr9
31 sethi.p %hi(failmsg),gr9
32 setlo %lo(failmsg),gr9
46 movsg hsr0,gr10 ; enable insn and data caches
47 sethi.p 0xc800,gr11 ; in copy-back mode
56 sethi.p %hi(done1),gr10
62 write1: st.p gr11,@(sp,gr11)
68 sethi.p %hi(done2),gr10
74 read1: ld @(sp,gr11),gr12
82 ; fill the cache twice
83 sethi.p %hi(done3),gr10
89 write3: st.p gr11,@(sp,gr11)
95 sethi.p %hi(done4),gr10
101 read4: ld @(sp,gr11),gr12
108 ; read it back in reverse
109 sethi.p %hi(done5),gr10
110 setlo %lo(done5),gr10
115 read5: ld @(sp,gr11),gr12
123 ; access data and insns in non-cache areas
124 sethi.p 0x8038,gr11 ; bctrlr 0,0
127 sethi.p 0xff00,gr10 ; documented area
139 sethi.p 0xfe00,gr10 ; documented area
144 sethi.p 0xfe40,gr10 ; documented area
150 sethi.p 0x0007,gr10 ; non RAM area
155 sethi.p 0xfe00,gr10 ; insn RAM area
160 sethi.p 0xfe40,gr10 ; data RAM area