OSDN Git Service

modified: utilsrc/src/Admin/Makefile
[eos/others.git] / utilsrc / srcX86MAC64 / Admin / gdb-7.7.1 / sim / testsuite / sim / sh / pshlr.s
1 # sh testcase for pshl <reg>
2 # mach: all
3 # as(sh):       -defsym sim_cpu=0
4 # as(shdsp):    -defsym sim_cpu=1 -dsp 
5
6         .include "testutils.inc"
7
8         start
9
10 pshl_reg:                       ! shift arithmetic, register operand
11         set_grs_a5a5
12         lds     r0, a0
13         pcopy   a0, a1
14         lds     r0, x0
15         lds     r0, x1
16         lds     r0, y0
17         lds     r0, y1
18         pcopy   x0, m0
19         pcopy   y1, m1
20
21         set_sreg 0x10000, x0
22         set_sreg 0x0, y0
23         pshl    x0, y0, x0
24         assert_sreg     0x10000, x0
25         pneg    y0, y0
26         pshl    x0, y0, x0
27         assert_sreg     0x10000, x0
28
29         set_sreg 0x10000, y0
30         pshl    x0, y0, x0
31         assert_sreg     0x20000, x0
32         pneg    y0, y0
33         pshl    x0, y0, x0
34         assert_sreg     0x10000, x0
35
36         set_sreg 0x20000, y0
37         pshl    x0, y0, x0
38         assert_sreg     0x40000, x0
39         pneg    y0, y0
40         pshl    x0, y0, x0
41         assert_sreg     0x10000, x0
42
43         set_sreg 0x30000, y0
44         pshl    x0, y0, x0
45         assert_sreg     0x80000, x0
46         pneg    y0, y0
47         pshl    x0, y0, x0
48         assert_sreg     0x10000, x0
49
50         set_sreg 0x40000, y0
51         pshl    x0, y0, x0
52         assert_sreg     0x100000, x0
53         pneg    y0, y0
54         pshl    x0, y0, x0
55         assert_sreg     0x10000, x0
56
57         set_sreg 0x50000, y0
58         pshl    x0, y0, x0
59         assert_sreg     0x200000, x0
60         pneg    y0, y0
61         pshl    x0, y0, x0
62         assert_sreg     0x10000, x0
63
64         set_sreg 0x60000, y0
65         pshl    x0, y0, x0
66         assert_sreg     0x400000, x0
67         pneg    y0, y0
68         pshl    x0, y0, x0
69         assert_sreg     0x10000, x0
70
71         set_sreg 0x70000, y0
72         pshl    x0, y0, x0
73         assert_sreg     0x800000, x0
74         pneg    y0, y0
75         pshl    x0, y0, x0
76         assert_sreg     0x10000, x0
77
78         set_sreg 0x80000, y0
79         pshl    x0, y0, x0
80         assert_sreg     0x1000000, x0
81         pneg    y0, y0
82         pshl    x0, y0, x0
83         assert_sreg     0x10000, x0
84
85         set_sreg 0x90000, y0
86         pshl    x0, y0, x0
87         assert_sreg     0x2000000, x0
88         pneg    y0, y0
89         pshl    x0, y0, x0
90         assert_sreg     0x10000, x0
91
92         set_sreg 0xa0000, y0
93         pshl    x0, y0, x0
94         assert_sreg     0x4000000, x0
95         pneg    y0, y0
96         pshl    x0, y0, x0
97         assert_sreg     0x10000, x0
98
99         set_sreg 0xb0000, y0
100         pshl    x0, y0, x0
101         assert_sreg     0x8000000, x0
102         pneg    y0, y0
103         pshl    x0, y0, x0
104         assert_sreg     0x10000, x0
105
106         set_sreg 0xc0000, y0
107         pshl    x0, y0, x0
108         assert_sreg     0x10000000, x0
109         pneg    y0, y0
110         pshl    x0, y0, x0
111         assert_sreg     0x10000, x0
112
113         set_sreg 0xd0000, y0
114         pshl    x0, y0, x0
115         assert_sreg     0x20000000, x0
116         pneg    y0, y0
117         pshl    x0, y0, x0
118         assert_sreg     0x10000, x0
119
120         set_sreg 0xe0000, y0
121         pshl    x0, y0, x0
122         assert_sreg     0x40000000, x0
123         pneg    y0, y0
124         pshl    x0, y0, x0
125         assert_sreg     0x10000, x0
126
127         set_sreg 0xf0000, y0
128         pshl    x0, y0, x0
129         assert_sreg     0x80000000, x0
130         pneg    y0, y0
131         pshl    x0, y0, x0
132         assert_sreg     0x10000, x0
133
134         set_sreg 0x100000, y0
135         pshl    x0, y0, x0
136         assert_sreg     0x00000000, x0
137         pneg    y0, y0
138         pshl    x0, y0, x0
139         assert_sreg     0x0, x0
140
141         test_grs_a5a5
142         assert_sreg2    0xa5a5a5a5, a0
143         assert_sreg2    0xa5a5a5a5, a1
144         assert_sreg     0xa5a5a5a5, x1
145         assert_sreg     0xa5a5a5a5, y1
146         assert_sreg2    0xa5a5a5a5, m0
147         assert_sreg2    0xa5a5a5a5, m1
148
149
150         pass
151         exit 0
152