Commit | Line | Data |
---|---|---|
0eb3d260 MS |
1 | # frv testcase |
2 | # mach: fr400 | |
4a306116 DB |
3 | |
4 | .include "testutils.inc" | |
5 | ||
6 | start | |
7 | ||
8 | .global Ipipe | |
9 | Ipipe: | |
0eb3d260 MS |
10 | ; Clear the packing bit of the insn at 'pack:'. We can't |
11 | ; simply use '.p' because the assembler will catch the error. | |
4a306116 DB |
12 | set_gr_mem pack,gr10 |
13 | and_gr_immed 0x7fffffff,gr10 | |
14 | set_mem_gr gr10,pack | |
15 | set_gr_addr pack,gr10 | |
16 | flush_data_cache gr10 | |
17 | ||
18 | and_spr_immed -4081,tbr ; clear tbr.tt | |
19 | set_gr_spr tbr,gr7 | |
20 | inc_gr_immed 0x070,gr7 ; address of exception handler | |
21 | set_bctrlr_0_0 gr7 | |
22 | set_spr_immed 128,lcr | |
23 | set_spr_addr ok0,lr | |
24 | set_psr_et 1 | |
25 | ||
0eb3d260 | 26 | bundle: add.p gr1,gr1,gr1 |
4a306116 DB |
27 | pack: add gr2,gr2,gr2 |
28 | bad: add gr3,gr3,gr3 | |
29 | fail | |
30 | ok0: | |
31 | test_spr_immed 1,esfr1 | |
32 | test_spr_bits 0x3f,0,0xb,esr0 | |
0eb3d260 | 33 | test_spr_addr bundle,epcr0 |
4a306116 DB |
34 | |
35 | pass |