bpmult.s
3.63 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
/****************************************************************
SCALAR UNIT BYPASS TEST: 5
****************************************************************/
.base 0x00000000
lui $1, 0x3038
ori $1, 0x2DB6
lui $2, 0x2DA5
ori $2, 0x2A31
lui $3, 0x4F13
ori $3, 0x6098
lui $4, 0x70F5
ori $4, 0x61D6
lui $5, 0x6EB7
ori $5, 0x7D2A
lui $6, 0x683F
ori $6, 0x0DD5
lui $7, 0x7021
ori $7, 0x6704
lui $8, 0x593A
ori $8, 0x3A4E
lui $9, 0x4532
ori $9, 0x48CB
lui $10, 0x5E1A
ori $10, 0x28B8
lui $11, 0x7C17
ori $11, 0x592B
lui $12, 0x0CE1
ori $12, 0x3335
lui $13, 0x157A
ori $13, 0x7392
lui $14, 0x476A
ori $14, 0x09B0
lui $15, 0x116A
ori $15, 0x00B1
lui $16, 0x0036
ori $16, 0x24BC
lui $17, 0x5F0B
ori $17, 0x6AB4
lui $18, 0x7FF5
ori $18, 0x0A2C
lui $19, 0x1AFD
ori $19, 0x193C
lui $20, 0x77D4
ori $20, 0x3F72
lui $21, 0x488D
ori $21, 0x3120
lui $22, 0x6C89
ori $22, 0x05B8
lui $23, 0x719E
ori $23, 0x13E8
lui $24, 0x4620
ori $24, 0x3BC0
lui $25, 0x5955
ori $25, 0x5B05
lui $26, 0x1083
ori $26, 0x017C
lui $27, 0x2D87
ori $27, 0x4AD2
lui $28, 0x38CA
ori $28, 0x796D
lui $29, 0x62E4
ori $29, 0x794B
lui $30, 0x5348
ori $30, 0x43BC
lui $31, 0x27E0
ori $31, 0x248F
/* TEST #102 *********************************************/
/* Initialize test registers */
lui $17, 0x3651
ori $17, 0x0F19
lui $18, 0x1A65
ori $18, 0x7517
lui $19, 0x75CD
ori $19, 0x5B57
lui $20, 0x2C3A
ori $20, 0x27B4
lui $21, 0x0B7E
ori $21, 0x49C4
/* Test */
xor $17, $20, $21
xor $17, $18, $19
xor $17, $19, $20
nop
nop
nop
xori $21, $17, 0xFFFF
/* Check result */
nop
nop
nop
lui $18, 0x59F7
ori $18, 0x831C
bne $18, $21, Fail
nop
/* TEST #103 *********************************************/
/* Initialize test registers */
lui $19, 0x6231
ori $19, 0x5B4A
lui $20, 0x3811
ori $20, 0x174A
lui $21, 0x5A13
ori $21, 0x7E4F
lui $22, 0x68E6
ori $22, 0x1C47
lui $23, 0x434C
ori $23, 0x1801
/* Test */
xor $19, $22, $23
xor $19, $20, $21
xor $19, $21, $22
nop
nop
xori $23, $19, 0xFFFF
/* Check result */
nop
nop
nop
lui $20, 0x32F5
ori $20, 0x9DF7
bne $20, $23, Fail
nop
/* TEST #104 *********************************************/
/* Initialize test registers */
lui $21, 0x2E9F
ori $21, 0x6E2C
lui $22, 0x3657
ori $22, 0x696A
lui $23, 0x106A
ori $23, 0x7ED7
lui $24, 0x16E7
ori $24, 0x2214
lui $25, 0x480F
ori $25, 0x55B1
/* Test */
xor $21, $24, $25
xor $21, $22, $23
xor $21, $23, $24
nop
xori $25, $21, 0xFFFF
/* Check result */
nop
nop
nop
lui $22, 0x068D
ori $22, 0xA33C
bne $22, $25, Fail
nop
/* TEST #105 *********************************************/
/* Initialize test registers */
lui $23, 0x6CDB
ori $23, 0x248C
lui $24, 0x32B8
ori $24, 0x3E87
lui $25, 0x5FDF
ori $25, 0x1699
lui $26, 0x0283
ori $26, 0x0A29
lui $27, 0x41E1
ori $27, 0x393A
/* Test */
xor $23, $26, $27
xor $23, $24, $25
xor $23, $25, $26
xori $27, $23, 0xFFFF
/* Check result */
nop
nop
nop
lui $24, 0x5D5C
ori $24, 0xE34F
bne $24, $27, Fail
nop
lui $1, 0xFEED;
sw $0, 0xf80($0);
sw $1, 0xf84($0);
sw $2, 0xf88($0);
sw $3, 0xf8c($0);
sw $4, 0xf90($0);
sw $5, 0xf94($0);
sw $6, 0xf98($0);
sw $7, 0xf9c($0);
sw $8, 0xfa0($0);
sw $9, 0xfa4($0);
sw $10, 0xfa8($0);
sw $11, 0xfac($0);
sw $12, 0xfb0($0);
sw $13, 0xfb4($0);
sw $14, 0xfb8($0);
sw $15, 0xfbc($0);
sw $16, 0xfc0($0);
sw $17, 0xfc4($0);
sw $18, 0xfc8($0);
sw $19, 0xfcc($0);
sw $20, 0xfd0($0);
sw $21, 0xfd4($0);
sw $22, 0xfd8($0);
sw $23, 0xfdc($0);
sw $24, 0xfe0($0);
sw $25, 0xfe4($0);
sw $26, 0xfe8($0);
sw $27, 0xfec($0);
sw $28, 0xff0($0);
sw $29, 0xff4($0);
sw $30, 0xff8($0);
sw $31, 0xffc($0);
Fail: break;