This commit was generated by cvs2svn to track changes on a CVS vendor
[external/binutils.git] / sim / testsuite / sim / frv / cmov.cgs
1 # frv testcase for cmov $GRi,$GRk,$CCi,$cond
2 # mach: all
3
4         .include "testutils.inc"
5
6         start
7
8         .global cmov
9 cmov:
10         set_spr_immed   0x1b1b,cccr
11
12         set_gr_immed    0x00007fff,gr7
13         set_gr_immed    0xdeadbeef,gr8
14         set_icc         0x08,0          ; Set mask opposite of expected
15         cmov            gr7,gr8,cc0,0
16         test_icc        1 0 0 0 icc0
17         test_gr_immed   0xdeadbeef,gr8
18
19         set_gr_immed    0x00007fff,gr7
20         set_gr_immed    0xdeadbeef,gr8
21         set_icc         0x08,0          ; Set mask opposite of expected
22         cmov            gr7,gr8,cc0,1
23         test_icc        1 0 0 0 icc0
24         test_gr_immed   0x00007fff,gr8
25
26         set_gr_immed    0x00007fff,gr7
27         set_gr_immed    0xdeadbeef,gr8
28         set_icc         0x08,1          ; Set mask opposite of expected
29         cmov            gr7,gr8,cc1,0
30         test_icc        1 0 0 0 icc1
31         test_gr_immed   0x00007fff,gr8
32
33         set_gr_immed    0x00007fff,gr7
34         set_gr_immed    0xdeadbeef,gr8
35         set_icc         0x08,1          ; Set mask opposite of expected
36         cmov            gr7,gr8,cc1,1
37         test_icc        1 0 0 0 icc1
38         test_gr_immed   0xdeadbeef,gr8
39
40         set_gr_immed    0x00007fff,gr7
41         set_gr_immed    0xdeadbeef,gr8
42         set_icc         0x08,2          ; Set mask opposite of expected
43         cmov            gr7,gr8,cc2,0
44         test_icc        1 0 0 0 icc2
45         test_gr_immed   0xdeadbeef,gr8
46
47         set_gr_immed    0x00007fff,gr7
48         set_gr_immed    0xdeadbeef,gr8
49         set_icc         0x08,3          ; Set mask opposite of expected
50         cmov            gr7,gr8,cc3,0
51         test_icc        1 0 0 0 icc3
52         test_gr_immed   0xdeadbeef,gr8
53
54         pass