2003-10-06 Dave Brolley <brolley@redhat.com>
[external/binutils.git] / sim / testsuite / sim / frv / fr400 / movgs.cgs
1 # frv testcase for movgs $GRj,iacc0[hl]
2 # mach: fr400
3
4         .include "../testutils.inc"
5
6         start
7
8         .global movgs
9 IACC0H:
10         set_gr_limmed   0xdead,0xbeef,gr8
11         and_spr_immed   0,iacc0h
12         movgs gr8,iacc0h
13         test_gr_limmed  0xdead,0xbeef,gr8
14         test_spr_limmed 0xdead,0xbeef,iacc0h
15 SPR280:
16         ; try alternate names for iacc0h
17         and_spr_immed   0,280
18         movgs gr8,spr[280]                      ; iacc0h is spr number 280
19         test_gr_limmed  0xdead,0xbeef,gr8
20         test_spr_limmed 0xdead,0xbeef,spr[280]
21
22 IACC0L:
23         set_gr_limmed   0xdead,0xbeef,gr8
24         and_spr_immed   0,iacc0l
25         movgs gr8,iacc0l
26         test_gr_limmed  0xdead,0xbeef,gr8
27         test_spr_limmed 0xdead,0xbeef,iacc0l
28 SPR281:
29         ; try alternate names for iacc0l
30         and_spr_immed   0,281
31         movgs gr8,spr[281]                      ; iacc0l is spr number 281
32         test_gr_limmed  0xdead,0xbeef,gr8
33         test_spr_limmed 0xdead,0xbeef,spr[281]
34
35 IACC0L_SPR281:
36         ; try crossing between iacc0l and spr[281]
37         and_spr_immed   0,281
38         and_spr_immed   0,iacc0l
39         movgs gr8,spr[281]                      ; iacc0l is spr number 281
40         test_gr_limmed  0xdead,0xbeef,gr8
41         test_spr_limmed 0xdead,0xbeef,iacc0l
42
43 SPR280_IACC0H:
44         and_spr_immed   0,280
45         and_spr_immed   0,iacc0h
46         movgs gr8,iacc0h                        ; iacc0h is spr number 280
47         test_gr_limmed  0xdead,0xbeef,gr8
48         test_spr_limmed 0xdead,0xbeef,spr[280]
49
50         pass