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