5 .macro sr_op sym, op_sym, op_byte, sr
9 .byte 0x40, \sr, \op_byte
13 .macro test_sr_op sym, mask, op, op_byte, sr
17 sr_op \sym, \op, \op_byte, \sr
21 sr_op \sym, \op, \op_byte, \sr
33 .macro test_sr_mask sr, sym, mask
35 test_sr_op \sym, \mask & 1, rsr, 0x03, \sr
36 test_sr_op \sym, \mask & 2, wsr, 0x13, \sr
37 test_sr_op \sym, \mask & 4, xsr, 0x61, \sr
41 .macro test_sr sr, conf
42 test_sr_mask \sr, \conf, 7
47 test_sr_mask /*atomctl*/99, 0, 0
48 test_sr_mask /*br*/4, 0, 0
49 test_sr_mask /*cacheattr*/98, 0, 0
55 test_sr_mask debugcause, 1, 1
66 test_sr ibreakenable, 1
68 test_sr icountlevel, 1
69 test_sr_mask /*intclear*/227, 0, 2
70 test_sr_mask /*interrupt*/226, 0, 3
79 test_sr_mask /*prefctl*/40, 0, 0
80 test_sr_mask /*prid*/235, 0, 1
88 test_sr windowstart, 1