OpenCores
URL https://opencores.org/ocsvn/openrisc_me/openrisc_me/trunk

Subversion Repositories openrisc_me

[/] [openrisc/] [trunk/] [gnu-src/] [gdb-7.2/] [sim/] [testsuite/] [sim/] [frv/] [csra.cgs] - Blame information for rev 373

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 330 jeremybenn
# frv testcase for csra $GRi,$GRj,$GRk,$CCi,$cond
2
# mach: all
3
 
4
        .include "testutils.inc"
5
 
6
        start
7
 
8
        .global csra
9
csra:
10
        set_spr_immed   0x1b1b,cccr
11
 
12
        set_gr_limmed   0xdead,0xbee0,gr7       ; Shift by 0
13
        set_gr_limmed   0x8000,0x0000,gr8
14
        set_icc         0x05,0          ; Set mask opposite of expected
15
        csra            gr8,gr7,gr8,cc0,1
16
        test_icc        0 1 0 1 icc0
17
        test_gr_limmed  0x8000,0x0000,gr8
18
 
19
        set_gr_limmed   0xdead,0xbee1,gr7       ; Shift by 1
20
        set_gr_limmed   0x8000,0x0000,gr8
21
        set_icc         0x0f,0          ; Set mask opposite of expected
22
        csra            gr8,gr7,gr8,cc0,1
23
        test_icc        1 1 1 1 icc0
24
        test_gr_limmed  0xc000,0x0000,gr8
25
 
26
        set_gr_limmed   0xdead,0xbeff,gr7       ; Shift by 31
27
        set_gr_limmed   0x8000,0x0000,gr8
28
        set_icc         0x0f,0          ; Set mask opposite of expected
29
        csra            gr8,gr7,gr8,cc4,1
30
        test_icc        1 1 1 1 icc0
31
        test_gr_immed   -1,gr8
32
 
33
        set_gr_limmed   0xdead,0xbeff,gr7       ; clear register
34
        set_gr_limmed   0x4000,0x0000,gr8
35
        set_icc         0x0a,0          ; Set mask opposite of expected
36
        csra            gr8,gr7,gr8,cc4,1
37
        test_icc        1 0 1 0 icc0
38
        test_gr_immed   0x00000000,gr8
39
 
40
        set_gr_limmed   0xdead,0xbee0,gr7       ; Shift by 0
41
        set_gr_limmed   0x8000,0x0000,gr8
42
        set_icc         0x05,0          ; Set mask opposite of expected
43
        csra            gr8,gr7,gr8,cc0,0
44
        test_icc        0 1 0 1 icc0
45
        test_gr_limmed  0x8000,0x0000,gr8
46
 
47
        set_gr_limmed   0xdead,0xbee1,gr7       ; Shift by 1
48
        set_gr_limmed   0x8000,0x0000,gr8
49
        set_icc         0x0f,0          ; Set mask opposite of expected
50
        csra            gr8,gr7,gr8,cc0,0
51
        test_icc        1 1 1 1 icc0
52
        test_gr_limmed  0x8000,0x0000,gr8
53
 
54
        set_gr_limmed   0xdead,0xbeff,gr7       ; Shift by 31
55
        set_gr_limmed   0x8000,0x0000,gr8
56
        set_icc         0x0f,0          ; Set mask opposite of expected
57
        csra            gr8,gr7,gr8,cc4,0
58
        test_icc        1 1 1 1 icc0
59
        test_gr_limmed  0x8000,0x0000,gr8
60
 
61
        set_gr_limmed   0xdead,0xbeff,gr7       ; clear register
62
        set_gr_limmed   0x4000,0x0000,gr8
63
        set_icc         0x0a,0          ; Set mask opposite of expected
64
        csra            gr8,gr7,gr8,cc4,0
65
        test_icc        1 0 1 0 icc0
66
        test_gr_limmed  0x4000,0x0000,gr8
67
 
68
        set_gr_limmed   0xdead,0xbee0,gr7       ; Shift by 0
69
        set_gr_limmed   0x8000,0x0000,gr8
70
        set_icc         0x05,1          ; Set mask opposite of expected
71
        csra            gr8,gr7,gr8,cc1,0
72
        test_icc        0 1 0 1 icc1
73
        test_gr_limmed  0x8000,0x0000,gr8
74
 
75
        set_gr_limmed   0xdead,0xbee1,gr7       ; Shift by 1
76
        set_gr_limmed   0x8000,0x0000,gr8
77
        set_icc         0x0f,1          ; Set mask opposite of expected
78
        csra            gr8,gr7,gr8,cc1,0
79
        test_icc        1 1 1 1 icc1
80
        test_gr_limmed  0xc000,0x0000,gr8
81
 
82
        set_gr_limmed   0xdead,0xbeff,gr7       ; Shift by 31
83
        set_gr_limmed   0x8000,0x0000,gr8
84
        set_icc         0x0f,1          ; Set mask opposite of expected
85
        csra            gr8,gr7,gr8,cc5,0
86
        test_icc        1 1 1 1 icc1
87
        test_gr_immed   -1,gr8
88
 
89
        set_gr_limmed   0xdead,0xbeff,gr7       ; clear register
90
        set_gr_limmed   0x4000,0x0000,gr8
91
        set_icc         0x0a,1          ; Set mask opposite of expected
92
        csra            gr8,gr7,gr8,cc5,0
93
        test_icc        1 0 1 0 icc1
94
        test_gr_immed   0x00000000,gr8
95
 
96
        set_gr_limmed   0xdead,0xbee0,gr7       ; Shift by 0
97
        set_gr_limmed   0x8000,0x0000,gr8
98
        set_icc         0x05,1          ; Set mask opposite of expected
99
        csra            gr8,gr7,gr8,cc1,1
100
        test_icc        0 1 0 1 icc1
101
        test_gr_limmed  0x8000,0x0000,gr8
102
 
103
        set_gr_limmed   0xdead,0xbee1,gr7       ; Shift by 1
104
        set_gr_limmed   0x8000,0x0000,gr8
105
        set_icc         0x0f,1          ; Set mask opposite of expected
106
        csra            gr8,gr7,gr8,cc1,1
107
        test_icc        1 1 1 1 icc1
108
        test_gr_limmed  0x8000,0x0000,gr8
109
 
110
        set_gr_limmed   0xdead,0xbeff,gr7       ; Shift by 31
111
        set_gr_limmed   0x8000,0x0000,gr8
112
        set_icc         0x0f,1          ; Set mask opposite of expected
113
        csra            gr8,gr7,gr8,cc5,1
114
        test_icc        1 1 1 1 icc1
115
        test_gr_limmed  0x8000,0x0000,gr8
116
 
117
        set_gr_limmed   0xdead,0xbeff,gr7       ; clear register
118
        set_gr_limmed   0x4000,0x0000,gr8
119
        set_icc         0x0a,1          ; Set mask opposite of expected
120
        csra            gr8,gr7,gr8,cc5,1
121
        test_icc        1 0 1 0 icc1
122
        test_gr_limmed  0x4000,0x0000,gr8
123
 
124
        set_gr_limmed   0xdead,0xbee0,gr7       ; Shift by 0
125
        set_gr_limmed   0x8000,0x0000,gr8
126
        set_icc         0x05,2          ; Set mask opposite of expected
127
        csra            gr8,gr7,gr8,cc2,0
128
        test_icc        0 1 0 1 icc2
129
        test_gr_limmed  0x8000,0x0000,gr8
130
 
131
        set_gr_limmed   0xdead,0xbee1,gr7       ; Shift by 1
132
        set_gr_limmed   0x8000,0x0000,gr8
133
        set_icc         0x0f,2          ; Set mask opposite of expected
134
        csra            gr8,gr7,gr8,cc2,0
135
        test_icc        1 1 1 1 icc2
136
        test_gr_limmed  0x8000,0x0000,gr8
137
 
138
        set_gr_limmed   0xdead,0xbeff,gr7       ; Shift by 31
139
        set_gr_limmed   0x8000,0x0000,gr8
140
        set_icc         0x0f,2          ; Set mask opposite of expected
141
        csra            gr8,gr7,gr8,cc6,1
142
        test_icc        1 1 1 1 icc2
143
        test_gr_limmed  0x8000,0x0000,gr8
144
 
145
        set_gr_limmed   0xdead,0xbeff,gr7       ; clear register
146
        set_gr_limmed   0x4000,0x0000,gr8
147
        set_icc         0x0a,2          ; Set mask opposite of expected
148
        csra            gr8,gr7,gr8,cc6,1
149
        test_icc        1 0 1 0 icc2
150
        test_gr_limmed  0x4000,0x0000,gr8
151
 
152
        set_gr_limmed   0xdead,0xbee0,gr7       ; Shift by 0
153
        set_gr_limmed   0x8000,0x0000,gr8
154
        set_icc         0x05,3          ; Set mask opposite of expected
155
        csra            gr8,gr7,gr8,cc3,0
156
        test_icc        0 1 0 1 icc3
157
        test_gr_limmed  0x8000,0x0000,gr8
158
 
159
        set_gr_limmed   0xdead,0xbee1,gr7       ; Shift by 1
160
        set_gr_limmed   0x8000,0x0000,gr8
161
        set_icc         0x0f,3          ; Set mask opposite of expected
162
        csra            gr8,gr7,gr8,cc3,0
163
        test_icc        1 1 1 1 icc3
164
        test_gr_limmed  0x8000,0x0000,gr8
165
 
166
        set_gr_limmed   0xdead,0xbeff,gr7       ; Shift by 31
167
        set_gr_limmed   0x8000,0x0000,gr8
168
        set_icc         0x0f,3          ; Set mask opposite of expected
169
        csra            gr8,gr7,gr8,cc7,1
170
        test_icc        1 1 1 1 icc3
171
        test_gr_limmed  0x8000,0x0000,gr8
172
 
173
        set_gr_limmed   0xdead,0xbeff,gr7       ; clear register
174
        set_gr_limmed   0x4000,0x0000,gr8
175
        set_icc         0x0a,3          ; Set mask opposite of expected
176
        csra            gr8,gr7,gr8,cc7,1
177
        test_icc        1 0 1 0 icc3
178
        test_gr_limmed  0x4000,0x0000,gr8
179
 
180
        pass

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.