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