New sim testsuite for Fujitsu FRV. Contributed by Red Hat.
[external/binutils.git] / sim / testsuite / sim / frv / subx.cgs
1 # frv testcase for subx $GRi,$GRj,$GRk,$ICCi_1
2 # mach: all
3
4         .include "testutils.inc"
5
6         start
7
8         .global subx
9 subx:
10         set_gr_immed    1,gr7
11         set_gr_immed    2,gr8
12         set_icc         0x0e,0          ; Make sure carry is off
13         subx            gr8,gr7,gr8,icc0
14         test_icc        1 1 1 0 icc0
15         test_gr_immed   1,gr8
16
17         set_gr_immed    1,gr7
18         set_gr_limmed   0x8000,0x0000,gr8
19         set_icc         0x0c,0          ; Make sure carry is off
20         subx            gr8,gr7,gr8,icc0
21         test_icc        1 1 0 0 icc0
22         test_gr_limmed  0x7fff,0xffff,gr8
23
24         set_icc         0x0a,0          ; Make sure carry is off
25         subx            gr8,gr8,gr8,icc0
26         test_icc        1 0 1 0 icc0
27         test_gr_immed   0,gr8
28
29         set_icc         0x06,0          ; Make sure carry is off
30         subx            gr8,gr7,gr8,icc0
31         test_icc        0 1 1 0 icc0
32         test_gr_limmed  0xffff,0xffff,gr8
33
34         set_gr_immed    1,gr7
35         set_gr_immed    3,gr8
36         set_icc         0x0f,0          ; Make sure carry is on
37         subx            gr8,gr7,gr8,icc0
38         test_icc        1 1 1 1 icc0
39         test_gr_immed   1,gr8
40
41         set_gr_immed    0,gr7
42         set_gr_limmed   0x8000,0x0000,gr8
43         set_icc         0x0d,0          ; Make sure carry is on
44         subx            gr8,gr7,gr8,icc0
45         test_icc        1 1 0 1 icc0
46         test_gr_limmed  0x7fff,0xffff,gr8
47
48         set_gr_limmed   0x7fff,0xfffe,gr7
49         set_icc         0x0b,0          ; Make sure carry is on
50         subx            gr8,gr7,gr8,icc0
51         test_icc        1 0 1 1 icc0
52         test_gr_immed   0,gr8
53
54         set_gr_immed    0,gr7
55         set_icc         0x07,0          ; Make sure carry is on
56         subx            gr8,gr7,gr8,icc0
57         test_icc        0 1 1 1 icc0
58         test_gr_limmed  0xffff,0xffff,gr8
59
60         pass