~ubuntu-branches/ubuntu/vivid/atlas/vivid

« back to all changes in this revision

Viewing changes to tune/blas/gemm/CASES/ATL_dmm4x4xUR2_mips.c

  • Committer: Bazaar Package Importer
  • Author(s): Sylvestre Ledru
  • Date: 2009-09-17 23:31:54 UTC
  • mto: (2.2.1 experimental)
  • mto: This revision was merged to the branch mainline in revision 10.
  • Revision ID: james.westby@ubuntu.com-20090917233154-9esw88ub02twbuab
Tags: upstream-3.8.3
ImportĀ upstreamĀ versionĀ 3.8.3

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/*
 
2
 *             Automatically Tuned Linear Algebra Software v3.8.3
 
3
 *                    (C) Copyright 2007 R. Clint Whaley
 
4
 *
 
5
 * Redistribution and use in source and binary forms, with or without
 
6
 * modification, are permitted provided that the following conditions
 
7
 * are met:
 
8
 *   1. Redistributions of source code must retain the above copyright
 
9
 *      notice, this list of conditions and the following disclaimer.
 
10
 *   2. Redistributions in binary form must reproduce the above copyright
 
11
 *      notice, this list of conditions, and the following disclaimer in the
 
12
 *      documentation and/or other materials provided with the distribution.
 
13
 *   3. The name of the ATLAS group or the names of its contributers may
 
14
 *      not be used to endorse or promote products derived from this
 
15
 *      software without specific written permission.
 
16
 *
 
17
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
 
18
 * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
 
19
 * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
 
20
 * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE ATLAS GROUP OR ITS CONTRIBUTORS
 
21
 * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
 
22
 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
 
23
 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
 
24
 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
 
25
 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
 
26
 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
 
27
 * POSSIBILITY OF SUCH DAMAGE.
 
28
 *
 
29
 */
 
30
 
 
31
#ifndef KB
 
32
   #error "This kernel requires KB be a compile-time constant!"
 
33
#endif
 
34
#if KB > 80
 
35
   #error "This kernel supports max KB of 80"
 
36
#endif
 
37
 
 
38
#define rC00 $f0
 
39
#define rC10 $f1
 
40
#define rC20 $f2
 
41
#define rC30 $f3
 
42
#define rC01 $f4
 
43
#define rC11 $f5
 
44
#define rC21 $f6
 
45
#define rC31 $f7
 
46
#define rC02 $f8
 
47
#define rC12 $f9
 
48
#define rC22 $f10
 
49
#define rC32 $f11
 
50
#define rC03 $f12
 
51
#define rC13 $f13
 
52
#define rC23 $f14
 
53
#define rC33 $f15
 
54
#define rA0  $f16
 
55
#define rA1  $f17
 
56
#define rA2  $f18
 
57
#define rA3  $f19
 
58
#define rB0  $f20
 
59
#define rB1  $f21
 
60
#define rB2  $f22
 
61
#define rB3  $f23
 
62
#define ra0  $f24
 
63
#define ra1  $f25
 
64
#define ra2  $f26
 
65
#define ra3  $f27
 
66
#define rb0  $f28
 
67
#define rb1  $f29
 
68
#define rb2  $f30
 
69
#define rb3  $f31
 
70
 
 
71
#define M       $4
 
72
#define N       $5
 
73
#define K0      $6
 
74
#define pA0     $8
 
75
#define incAm   $9
 
76
#define pB0     $10
 
77
#define incBn   $11
 
78
#define pC0     $7
 
79
#define pA1     $12
 
80
#define pA2     $13
 
81
#define pA3     $14
 
82
#define pB1     $15
 
83
#define pB2     $16
 
84
#define pB3     $17
 
85
#define K       $18
 
86
#define stAm    $19
 
87
#define stBn    $20
 
88
#define incAn   $21
 
89
#define pfA     $22
 
90
#define pfB     $23
 
91
#define pC1     $24
 
92
#define pC2     $25
 
93
#define pC3     $30
 
94
#define incCn   $2
 
95
#ifdef BETAX
 
96
   #define FSIZE 160
 
97
#else
 
98
   #define FSIZE 152
 
99
#endif
 
100
#define PFDISTA KB*8*8
 
101
#if 0
 
102
   #define prefA(mem) pref 6, mem
 
103
#else
 
104
   #define prefA(mem)
 
105
#endif
 
106
#if 1
 
107
   #define prefB(mem) pref 6, mem
 
108
#else
 
109
   #define prefB(mem)
 
110
#endif
 
111
#if 1
 
112
   #define prefC(mem) pref 5, mem
 
113
#else
 
114
   #define prefC(mem)
 
115
#endif
 
116
#ifdef DCPLX
 
117
   #define CMUL(i_) ((i_)+(i_))
 
118
#else
 
119
   #define CMUL(i_) i_
 
120
#endif
 
121
 
 
122
/*
 
123
 * save : 18,19,20,21,22,23
 
124
 * $26, $27 reserved.  $0 = 0, $1 used by assembler
 
125
 * I think can use $31 if I save it & restore it. r0 = 0
 
126
 * Avail: $2, $3, $12-25, $28, $30, $31
 
127
 */
 
128
/*
 
129
void ATL_USERMM
 
130
             $4           $5           $6                $f15,             $8
 
131
   (const int M, const int N, const int K, const double alpha, const double *A,
 
132
               $9               $10           $11               0(%sp)
 
133
    const int lda, const double *B, const int ldb, const double beta,
 
134
        8($sp)       16($sp)
 
135
    double *C, const int ldc)
 
136
 
 
137
*/
 
138
.text
 
139
.align 3
 
140
.globl ATL_USERMM
 
141
.ent   ATL_USERMM
 
142
ATL_USERMM:
 
143
        .frame  $sp,FSIZE,$31
 
144
        .set    noreorder
 
145
        .set    nomacro
 
146
        .set    noat
 
147
/*
 
148
 *      Adjust stack and save registers
 
149
 */
 
150
        daddiu  $sp, $sp, -FSIZE
 
151
        sd      $16, 0($sp)
 
152
        sd      $17, 8($sp)
 
153
        sd      $18, 16($sp)
 
154
        sd      $19, 24($sp)
 
155
        sd      $20, 32($sp)
 
156
        sd      $21, 40($sp)
 
157
        sd      $22, 64($sp)
 
158
        sd      $23, 72($sp)
 
159
        sd      $30, 80($sp)
 
160
#ifdef ATL_USE64BITS
 
161
        sdc1    $f24, 88($sp)
 
162
        sdc1    $f25, 96($sp)
 
163
        sdc1    $f26, 104($sp)
 
164
        sdc1    $f27, 112($sp)
 
165
        sdc1    $f28, 120($sp)
 
166
        sdc1    $f29, 128($sp)
 
167
        sdc1    $f30, 136($sp)
 
168
        sdc1    $f31, 144($sp)
 
169
#else
 
170
        sdc1    $f20, 88($sp)
 
171
        sdc1    $f22, 96($sp)
 
172
        sdc1    $f24, 104($sp)
 
173
        sdc1    $f26, 112($sp)
 
174
        sdc1    $f28, 120($sp)
 
175
        sdc1    $f30, 128($sp)
 
176
#endif
 
177
#ifdef BETAX
 
178
        ldc1    rA0, FSIZE($sp)           /* get BETA from caller's stack */
 
179
        sdc1    rA0, 152($sp)             /* save BETA to my stack */
 
180
   #define BETOFF 152
 
181
#endif
 
182
/*
 
183
 *      (ldc,lda, ldb, K0) * sizeof; setup column ptrs
 
184
 */
 
185
#ifdef ATL_USE64BITS
 
186
        ld      pC0, FSIZE+8($sp)
 
187
        ld      incCn, FSIZE+16($sp)
 
188
#else
 
189
        lw      pC0, FSIZE+8($sp)
 
190
        lw      incCn, FSIZE+16($sp)
 
191
#endif
 
192
#ifdef DCPLX
 
193
        sll     incCn, incCn, 4         /* incCn = ldc*sizeof */
 
194
#else
 
195
        sll     incCn, incCn, 3         /* incCn = ldc*sizeof */
 
196
#endif
 
197
        sll     incAm, incAm, 3         /* incAm = lda*sizeof */
 
198
        .set    macro
 
199
        dmul    incAn, incAm, M         /* incAn = lda*M */
 
200
        sll     incBn, incBn, 3         /* incBn = ldb*sizeof */
 
201
        dmul    stBn, incBn, N          /* stBn = ldb*N */
 
202
        .set    nomacro
 
203
        sll     K0, K0, 3
 
204
        daddu   pA1, pA0, incAm
 
205
        daddu   pA2, pA1, incAm
 
206
        daddu   pA3, pA2, incAm
 
207
        daddu   pB1, pB0, incBn
 
208
        daddu   pB2, pB1, incBn
 
209
        daddu   pB3, pB2, incBn
 
210
        daddu   pC1, pC0, incCn
 
211
        daddu   pC2, pC1, incCn
 
212
        daddu   pC3, pC2, incCn
 
213
        sll     incAm, incAm, 2         /* incAm = lda*4 */
 
214
        sll     incBn, incBn, 2         /* incBn = ldb*4 */
 
215
        daddu   stAm, pA0, incAn        /* stAm = pA0 + lda*M */
 
216
        daddu   stBn, pB0, stBn         /* stBn = pB0 + ldb*N */
 
217
#ifdef DCPLX
 
218
        sll     pfA, M, 4               /* pfA = M*sizeof */
 
219
#else
 
220
        sll     pfA, M, 3               /* pfA = M*sizeof */
 
221
#endif
 
222
        sll     incCn, incCn, 2         /* incCn = ldc*4 */
 
223
        dsubu   incCn, incCn, pfA       /* incCn = ldc*4 - M */
 
224
        or     pfA, stAm, $0
 
225
        or     pfB, stBn, $0
 
226
        daddiu  K0, K0, -8
 
227
NLOOP:
 
228
MLOOP:
 
229
        ldc1    rB0, 0(pB0)
 
230
        ldc1    rA0, 0(pA0)
 
231
        ldc1    rA1, 0(pA1)
 
232
        ldc1    rA2, 0(pA2)
 
233
        ldc1    rA3, 0(pA3)
 
234
        ldc1    rB1, 0(pB1)
 
235
        ldc1    rB2, 0(pB2)
 
236
#ifndef BETAX
 
237
        ldc1    rB3, 0(pB3)
 
238
#endif
 
239
#ifdef BETA1
 
240
        ldc1    rC00, 0(pC0)
 
241
        ldc1    rC01, 0(pC1)
 
242
        ldc1    rC10, CMUL(8)(pC0)
 
243
        ldc1    rC20, CMUL(16)(pC0)
 
244
        ldc1    rC30, CMUL(24)(pC0)
 
245
        ldc1    rC11, CMUL(8)(pC1)
 
246
        ldc1    rC21, CMUL(16)(pC1)
 
247
        ldc1    rC31, CMUL(24)(pC1)
 
248
        ldc1    rC02, 0(pC2)
 
249
        ldc1    rC03, 0(pC3)
 
250
        ldc1    rC12, CMUL(8)(pC2)
 
251
        ldc1    rC22, CMUL(16)(pC2)
 
252
        ldc1    rC32, CMUL(24)(pC2)
 
253
   #if KB <= 2
 
254
        ldc1    rC13, CMUL(8)(pC3)
 
255
        ldc1    rC23, CMUL(16)(pC3)
 
256
        ldc1    rC33, CMUL(24)(pC3)
 
257
   #endif
 
258
#elif defined(BETAX)
 
259
        ldc1    rB3, BETOFF($sp)           /* load BETA */
 
260
        ldc1    rC00, 0(pC0)
 
261
        ldc1    rC10, CMUL(8)(pC0)
 
262
        ldc1    rC20, CMUL(16)(pC0)
 
263
        ldc1    rC30, CMUL(24)(pC0)
 
264
        ldc1    rC01, 0(pC1)
 
265
                mul.d   rC00, rC00, rB3
 
266
        ldc1    rC11, CMUL(8)(pC1)
 
267
                mul.d   rC10, rC10, rB3
 
268
        ldc1    rC21, CMUL(16)(pC1)
 
269
                mul.d   rC20, rC20, rB3
 
270
        ldc1    rC31, CMUL(24)(pC1)
 
271
                mul.d   rC30, rC30, rB3
 
272
        ldc1    rC02, 0(pC2)
 
273
                mul.d   rC01, rC01, rB3
 
274
        ldc1    rC12, CMUL(8)(pC2)
 
275
                mul.d   rC11, rC11, rB3
 
276
        ldc1    rC22, CMUL(16)(pC2)
 
277
                mul.d   rC21, rC21, rB3
 
278
        ldc1    rC32, CMUL(24)(pC2)
 
279
                mul.d   rC31, rC31, rB3
 
280
        ldc1    rC03, 0(pC3)
 
281
                mul.d   rC02, rC02, rB3
 
282
        ldc1    rC13, CMUL(8)(pC3)
 
283
                mul.d   rC12, rC12, rB3
 
284
        ldc1    rC23, CMUL(16)(pC3)
 
285
                mul.d   rC22, rC22, rB3
 
286
        ldc1    rC33, CMUL(24)(pC3)
 
287
                mul.d   rC32, rC32, rB3
 
288
                mul.d   rC03, rC03, rB3
 
289
                mul.d   rC13, rC13, rB3
 
290
                mul.d   rC23, rC23, rB3
 
291
                mul.d   rC33, rC33, rB3
 
292
        ldc1    rB3, 0(pB3)
 
293
#endif
 
294
#if KB <= 2 && defined(BETA0)
 
295
        dmtc1   $0, rC00
 
296
        mov.d   rC10, rC00
 
297
        mov.d   rC20, rC00
 
298
        mov.d   rC30, rC00
 
299
        mov.d   rC01, rC00
 
300
        mov.d   rC11, rC00
 
301
        mov.d   rC21, rC00
 
302
        mov.d   rC31, rC00
 
303
        mov.d   rC02, rC00
 
304
        mov.d   rC12, rC00
 
305
        mov.d   rC22, rC00
 
306
        mov.d   rC32, rC00
 
307
        mov.d   rC03, rC00
 
308
        mov.d   rC13, rC00
 
309
        mov.d   rC23, rC00
 
310
        mov.d   rC33, rC00
 
311
#endif
 
312
        .align 3
 
313
/* KLOOP: */
 
314
#if KB > 2
 
315
   #ifdef BETA0
 
316
                                        ldc1    rb0, 8(pB0)
 
317
        mul.d   rC00, rA0, rB0
 
318
                                        ldc1    ra0, 8(pA0)
 
319
        mul.d   rC10, rA1, rB0
 
320
                                        prefC((pC0))
 
321
        mul.d   rC20, rA2, rB0
 
322
                                        prefC((pC1))
 
323
        mul.d   rC30, rA3, rB0
 
324
                                        prefC((pC2))
 
325
        mul.d   rC01, rA0, rB1
 
326
                                        prefC((pC3))
 
327
        mul.d   rC11, rA1, rB1
 
328
                                        prefA(KB*8*8(pA0))
 
329
        mul.d   rC21, rA2, rB1
 
330
                                        prefA(KB*8*8(pA1))
 
331
        mul.d   rC31, rA3, rB1
 
332
                                        prefA(KB*8*8(pA2))
 
333
        mul.d   rC02, rA0, rB2
 
334
                                        prefA(KB*8*8(pA3))
 
335
        mul.d   rC12, rA1, rB2
 
336
                                        ldc1    ra1, 8(pA1)
 
337
        mul.d   rC22, rA2, rB2
 
338
                                        ldc1    ra2, 8(pA2)
 
339
        mul.d   rC32, rA3, rB2
 
340
                                        ldc1    ra3, 8(pA3)
 
341
        mul.d   rC03, rA0, rB3
 
342
                                        ldc1    rb1, 8(pB1)
 
343
        mul.d   rC13, rA1, rB3
 
344
                                        ldc1    rb2, 8(pB2)
 
345
        mul.d   rC23, rA2, rB3
 
346
                                        ldc1    rb3, 8(pB3)
 
347
        mul.d   rC33, rA3, rB3
 
348
   #else
 
349
                                        ldc1    rb0, 8(pB0)
 
350
        madd.d  rC00, rC00, rA0, rB0
 
351
                                        ldc1    ra0, 8(pA0)
 
352
        madd.d  rC10, rC10, rA1, rB0
 
353
        madd.d  rC20, rC20, rA2, rB0
 
354
       #ifndef BETAX
 
355
                                        ldc1    rC13, CMUL(8)(pC3)
 
356
       #endif
 
357
        madd.d  rC30, rC30, rA3, rB0
 
358
       #ifndef BETAX
 
359
                                        ldc1    rC23, CMUL(16)(pC3)
 
360
       #endif
 
361
        madd.d  rC01, rC01, rA0, rB1
 
362
       #ifndef BETAX
 
363
                                        ldc1    rC33, CMUL(24)(pC3)
 
364
       #endif
 
365
        madd.d  rC11, rC11, rA1, rB1
 
366
                                        prefA(KB*8*8(pA0))
 
367
        madd.d  rC21, rC21, rA2, rB1
 
368
                                        prefA(KB*8*8(pA1))
 
369
        madd.d  rC31, rC31, rA3, rB1
 
370
                                        prefA(KB*8*8(pA2))
 
371
        madd.d  rC02, rC02, rA0, rB2
 
372
                                        prefA(KB*8*8(pA3))
 
373
        madd.d  rC12, rC12, rA1, rB2
 
374
                                        ldc1    ra1, 8(pA1)
 
375
        madd.d  rC22, rC22, rA2, rB2
 
376
                                        ldc1    ra2, 8(pA2)
 
377
        madd.d  rC32, rC32, rA3, rB2
 
378
                                        ldc1    ra3, 8(pA3)
 
379
        madd.d  rC03, rC03, rA0, rB3
 
380
                                        ldc1    rb1, 8(pB1)
 
381
        madd.d  rC13, rC13, rA1, rB3
 
382
                                        ldc1    rb2, 8(pB2)
 
383
        madd.d  rC23, rC23, rA2, rB3
 
384
                                        ldc1    rb3, 8(pB3)
 
385
        madd.d  rC33, rC33, rA3, rB3
 
386
   #endif /* if BETA != 0 */
 
387
                                        ldc1    rB0, 16(pB0)
 
388
        madd.d  rC00, rC00, ra0, rb0
 
389
                                        ldc1    rA0, 16(pA0)
 
390
        madd.d  rC10, rC10, ra1, rb0
 
391
                                        ldc1    rA1, 16(pA1)
 
392
        madd.d  rC20, rC20, ra2, rb0
 
393
                                        ldc1    rA2, 16(pA2)
 
394
        madd.d  rC30, rC30, ra3, rb0
 
395
                                        ldc1    rA3, 16(pA3)
 
396
        madd.d  rC01, rC01, ra0, rb1
 
397
                                        ldc1    rB1, 16(pB1)
 
398
        madd.d  rC11, rC11, ra1, rb1
 
399
                                        ldc1    rB2, 16(pB2)
 
400
        madd.d  rC21, rC21, ra2, rb1
 
401
                                        ldc1    rB3, 16(pB3)
 
402
        madd.d  rC31, rC31, ra3, rb1
 
403
                                        prefA(32+KB*8*8(pA0))
 
404
        madd.d  rC02, rC02, ra0, rb2
 
405
                                        prefA(32+KB*8*8(pA1))
 
406
        madd.d  rC12, rC12, ra1, rb2
 
407
                                        prefA(32+KB*8*8(pA2))
 
408
        madd.d  rC22, rC22, ra2, rb2
 
409
                                        prefA(32+KB*8*8(pA3))
 
410
        madd.d  rC32, rC32, ra3, rb2
 
411
                                        prefA(64+KB*8*8(pA0))
 
412
        madd.d  rC03, rC03, ra0, rb3
 
413
                                        prefA(64+KB*8*8(pA1))
 
414
        madd.d  rC13, rC13, ra1, rb3
 
415
                                        prefA(64+KB*8*8(pA2))
 
416
        madd.d  rC23, rC23, ra2, rb3
 
417
                                        prefA(64+KB*8*8(pA3))
 
418
        madd.d  rC33, rC33, ra3, rb3
 
419
#endif
 
420
#if KB > 4
 
421
                                        ldc1    rb0, 24(pB0)
 
422
        madd.d  rC00, rC00, rA0, rB0
 
423
                                        ldc1    ra0, 24(pA0)
 
424
        madd.d  rC10, rC10, rA1, rB0
 
425
                                        ldc1    ra1, 24(pA1)
 
426
        madd.d  rC20, rC20, rA2, rB0
 
427
                                        ldc1    ra2, 24(pA2)
 
428
        madd.d  rC30, rC30, rA3, rB0
 
429
                                        ldc1    ra3, 24(pA3)
 
430
        madd.d  rC01, rC01, rA0, rB1
 
431
                                        ldc1    rb1, 24(pB1)
 
432
        madd.d  rC11, rC11, rA1, rB1
 
433
                                        ldc1    rb2, 24(pB2)
 
434
        madd.d  rC21, rC21, rA2, rB1
 
435
                                        ldc1    rb3, 24(pB3)
 
436
        madd.d  rC31, rC31, rA3, rB1
 
437
                                        prefA(96+KB*8*8(pA0))
 
438
        madd.d  rC02, rC02, rA0, rB2
 
439
                                        prefA(96+KB*8*8(pA1))
 
440
        madd.d  rC12, rC12, rA1, rB2
 
441
                                        prefA(96+KB*8*8(pA2))
 
442
        madd.d  rC22, rC22, rA2, rB2
 
443
                                        prefA(96+KB*8*8(pA3))
 
444
        madd.d  rC32, rC32, rA3, rB2
 
445
                                        prefA(128+KB*8*8(pA0))
 
446
        madd.d  rC03, rC03, rA0, rB3
 
447
                                        prefA(128+KB*8*8(pA1))
 
448
        madd.d  rC13, rC13, rA1, rB3
 
449
                                        prefA(128+KB*8*8(pA2))
 
450
        madd.d  rC23, rC23, rA2, rB3
 
451
                                        prefA(128+KB*8*8(pA3))
 
452
        madd.d  rC33, rC33, rA3, rB3
 
453
                                        ldc1    rB0, 32(pB0)
 
454
        madd.d  rC00, rC00, ra0, rb0
 
455
                                        ldc1    rA0, 32(pA0)
 
456
        madd.d  rC10, rC10, ra1, rb0
 
457
                                        ldc1    rA1, 32(pA1)
 
458
        madd.d  rC20, rC20, ra2, rb0
 
459
                                        ldc1    rA2, 32(pA2)
 
460
        madd.d  rC30, rC30, ra3, rb0
 
461
                                        ldc1    rA3, 32(pA3)
 
462
        madd.d  rC01, rC01, ra0, rb1
 
463
                                        ldc1    rB1, 32(pB1)
 
464
        madd.d  rC11, rC11, ra1, rb1
 
465
                                        ldc1    rB2, 32(pB2)
 
466
        madd.d  rC21, rC21, ra2, rb1
 
467
                                        ldc1    rB3, 32(pB3)
 
468
        madd.d  rC31, rC31, ra3, rb1
 
469
        madd.d  rC02, rC02, ra0, rb2
 
470
        madd.d  rC12, rC12, ra1, rb2
 
471
        madd.d  rC22, rC22, ra2, rb2
 
472
        madd.d  rC32, rC32, ra3, rb2
 
473
        madd.d  rC03, rC03, ra0, rb3
 
474
        madd.d  rC13, rC13, ra1, rb3
 
475
        madd.d  rC23, rC23, ra2, rb3
 
476
        madd.d  rC33, rC33, ra3, rb3
 
477
#endif
 
478
#if KB > 6
 
479
                                        ldc1    rb0, 40(pB0)
 
480
        madd.d  rC00, rC00, rA0, rB0
 
481
                                        ldc1    ra0, 40(pA0)
 
482
        madd.d  rC10, rC10, rA1, rB0
 
483
                                        ldc1    ra1, 40(pA1)
 
484
        madd.d  rC20, rC20, rA2, rB0
 
485
                                        ldc1    ra2, 40(pA2)
 
486
        madd.d  rC30, rC30, rA3, rB0
 
487
                                        ldc1    ra3, 40(pA3)
 
488
        madd.d  rC01, rC01, rA0, rB1
 
489
                                        ldc1    rb1, 40(pB1)
 
490
        madd.d  rC11, rC11, rA1, rB1
 
491
                                        ldc1    rb2, 40(pB2)
 
492
        madd.d  rC21, rC21, rA2, rB1
 
493
                                        ldc1    rb3, 40(pB3)
 
494
        madd.d  rC31, rC31, rA3, rB1
 
495
        madd.d  rC02, rC02, rA0, rB2
 
496
        madd.d  rC12, rC12, rA1, rB2
 
497
        madd.d  rC22, rC22, rA2, rB2
 
498
        madd.d  rC32, rC32, rA3, rB2
 
499
        madd.d  rC03, rC03, rA0, rB3
 
500
        madd.d  rC13, rC13, rA1, rB3
 
501
        madd.d  rC23, rC23, rA2, rB3
 
502
        madd.d  rC33, rC33, rA3, rB3
 
503
                                        ldc1    rB0, 48(pB0)
 
504
        madd.d  rC00, rC00, ra0, rb0
 
505
                                        ldc1    rA0, 48(pA0)
 
506
        madd.d  rC10, rC10, ra1, rb0
 
507
                                        ldc1    rA1, 48(pA1)
 
508
        madd.d  rC20, rC20, ra2, rb0
 
509
                                        ldc1    rA2, 48(pA2)
 
510
        madd.d  rC30, rC30, ra3, rb0
 
511
                                        ldc1    rA3, 48(pA3)
 
512
        madd.d  rC01, rC01, ra0, rb1
 
513
                                        ldc1    rB1, 48(pB1)
 
514
        madd.d  rC11, rC11, ra1, rb1
 
515
                                        ldc1    rB2, 48(pB2)
 
516
        madd.d  rC21, rC21, ra2, rb1
 
517
                                        ldc1    rB3, 48(pB3)
 
518
        madd.d  rC31, rC31, ra3, rb1
 
519
        madd.d  rC02, rC02, ra0, rb2
 
520
                                        prefA(192+KB*8*8(pA0))
 
521
        madd.d  rC12, rC12, ra1, rb2
 
522
                                        prefA(192+KB*8*8(pA1))
 
523
        madd.d  rC22, rC22, ra2, rb2
 
524
                                        prefA(192+KB*8*8(pA2))
 
525
        madd.d  rC32, rC32, ra3, rb2
 
526
                                        prefA(192+KB*8*8(pA3))
 
527
        madd.d  rC03, rC03, ra0, rb3
 
528
        madd.d  rC13, rC13, ra1, rb3
 
529
        madd.d  rC23, rC23, ra2, rb3
 
530
        madd.d  rC33, rC33, ra3, rb3
 
531
#endif
 
532
#if KB > 8
 
533
                                        ldc1    rb0, 56(pB0)
 
534
        madd.d  rC00, rC00, rA0, rB0
 
535
                                        ldc1    ra0, 56(pA0)
 
536
        madd.d  rC10, rC10, rA1, rB0
 
537
                                        ldc1    ra1, 56(pA1)
 
538
        madd.d  rC20, rC20, rA2, rB0
 
539
                                        ldc1    ra2, 56(pA2)
 
540
        madd.d  rC30, rC30, rA3, rB0
 
541
                                        ldc1    ra3, 56(pA3)
 
542
        madd.d  rC01, rC01, rA0, rB1
 
543
                                        ldc1    rb1, 56(pB1)
 
544
        madd.d  rC11, rC11, rA1, rB1
 
545
                                        ldc1    rb2, 56(pB2)
 
546
        madd.d  rC21, rC21, rA2, rB1
 
547
                                        ldc1    rb3, 56(pB3)
 
548
        madd.d  rC31, rC31, rA3, rB1
 
549
        madd.d  rC02, rC02, rA0, rB2
 
550
        madd.d  rC12, rC12, rA1, rB2
 
551
        madd.d  rC22, rC22, rA2, rB2
 
552
        madd.d  rC32, rC32, rA3, rB2
 
553
        madd.d  rC03, rC03, rA0, rB3
 
554
        madd.d  rC13, rC13, rA1, rB3
 
555
        madd.d  rC23, rC23, rA2, rB3
 
556
        madd.d  rC33, rC33, rA3, rB3
 
557
                                        ldc1    rB0, 64(pB0)
 
558
        madd.d  rC00, rC00, ra0, rb0
 
559
                                        ldc1    rA0, 64(pA0)
 
560
        madd.d  rC10, rC10, ra1, rb0
 
561
                                        ldc1    rA1, 64(pA1)
 
562
        madd.d  rC20, rC20, ra2, rb0
 
563
                                        ldc1    rA2, 64(pA2)
 
564
        madd.d  rC30, rC30, ra3, rb0
 
565
                                        ldc1    rA3, 64(pA3)
 
566
        madd.d  rC01, rC01, ra0, rb1
 
567
                                        ldc1    rB1, 64(pB1)
 
568
        madd.d  rC11, rC11, ra1, rb1
 
569
                                        ldc1    rB2, 64(pB2)
 
570
        madd.d  rC21, rC21, ra2, rb1
 
571
                                        ldc1    rB3, 64(pB3)
 
572
        madd.d  rC31, rC31, ra3, rb1
 
573
        madd.d  rC02, rC02, ra0, rb2
 
574
        madd.d  rC12, rC12, ra1, rb2
 
575
        madd.d  rC22, rC22, ra2, rb2
 
576
                                        prefA(256+KB*8*8(pA0))
 
577
        madd.d  rC32, rC32, ra3, rb2
 
578
                                        prefA(256+KB*8*8(pA1))
 
579
        madd.d  rC03, rC03, ra0, rb3
 
580
                                        prefA(256+KB*8*8(pA2))
 
581
        madd.d  rC13, rC13, ra1, rb3
 
582
                                        prefA(256+KB*8*8(pA3))
 
583
        madd.d  rC23, rC23, ra2, rb3
 
584
        madd.d  rC33, rC33, ra3, rb3
 
585
#endif
 
586
#if KB > 10
 
587
                                        ldc1    rb0, 72(pB0)
 
588
        madd.d  rC00, rC00, rA0, rB0
 
589
                                        ldc1    ra0, 72(pA0)
 
590
        madd.d  rC10, rC10, rA1, rB0
 
591
                                        ldc1    ra1, 72(pA1)
 
592
        madd.d  rC20, rC20, rA2, rB0
 
593
                                        ldc1    ra2, 72(pA2)
 
594
        madd.d  rC30, rC30, rA3, rB0
 
595
                                        ldc1    ra3, 72(pA3)
 
596
        madd.d  rC01, rC01, rA0, rB1
 
597
                                        ldc1    rb1, 72(pB1)
 
598
        madd.d  rC11, rC11, rA1, rB1
 
599
                                        ldc1    rb2, 72(pB2)
 
600
        madd.d  rC21, rC21, rA2, rB1
 
601
                                        ldc1    rb3, 72(pB3)
 
602
        madd.d  rC31, rC31, rA3, rB1
 
603
        madd.d  rC02, rC02, rA0, rB2
 
604
        madd.d  rC12, rC12, rA1, rB2
 
605
        madd.d  rC22, rC22, rA2, rB2
 
606
        madd.d  rC32, rC32, rA3, rB2
 
607
        madd.d  rC03, rC03, rA0, rB3
 
608
        madd.d  rC13, rC13, rA1, rB3
 
609
        madd.d  rC23, rC23, rA2, rB3
 
610
        madd.d  rC33, rC33, rA3, rB3
 
611
                                        ldc1    rB0, 80(pB0)
 
612
        madd.d  rC00, rC00, ra0, rb0
 
613
                                        ldc1    rA0, 80(pA0)
 
614
        madd.d  rC10, rC10, ra1, rb0
 
615
                                        ldc1    rA1, 80(pA1)
 
616
        madd.d  rC20, rC20, ra2, rb0
 
617
                                        ldc1    rA2, 80(pA2)
 
618
        madd.d  rC30, rC30, ra3, rb0
 
619
                                        ldc1    rA3, 80(pA3)
 
620
        madd.d  rC01, rC01, ra0, rb1
 
621
                                        ldc1    rB1, 80(pB1)
 
622
        madd.d  rC11, rC11, ra1, rb1
 
623
                                        ldc1    rB2, 80(pB2)
 
624
        madd.d  rC21, rC21, ra2, rb1
 
625
                                        ldc1    rB3, 80(pB3)
 
626
        madd.d  rC31, rC31, ra3, rb1
 
627
        madd.d  rC02, rC02, ra0, rb2
 
628
        madd.d  rC12, rC12, ra1, rb2
 
629
        madd.d  rC22, rC22, ra2, rb2
 
630
        madd.d  rC32, rC32, ra3, rb2
 
631
        madd.d  rC03, rC03, ra0, rb3
 
632
        madd.d  rC13, rC13, ra1, rb3
 
633
        madd.d  rC23, rC23, ra2, rb3
 
634
        madd.d  rC33, rC33, ra3, rb3
 
635
#endif
 
636
#if KB > 12
 
637
                                        ldc1    rb0, 88(pB0)
 
638
        madd.d  rC00, rC00, rA0, rB0
 
639
                                        ldc1    ra0, 88(pA0)
 
640
        madd.d  rC10, rC10, rA1, rB0
 
641
                                        ldc1    ra1, 88(pA1)
 
642
        madd.d  rC20, rC20, rA2, rB0
 
643
                                        ldc1    ra2, 88(pA2)
 
644
        madd.d  rC30, rC30, rA3, rB0
 
645
                                        ldc1    ra3, 88(pA3)
 
646
        madd.d  rC01, rC01, rA0, rB1
 
647
                                        ldc1    rb1, 88(pB1)
 
648
        madd.d  rC11, rC11, rA1, rB1
 
649
                                        ldc1    rb2, 88(pB2)
 
650
        madd.d  rC21, rC21, rA2, rB1
 
651
                                        ldc1    rb3, 88(pB3)
 
652
        madd.d  rC31, rC31, rA3, rB1
 
653
        madd.d  rC02, rC02, rA0, rB2
 
654
                                        prefA(320+KB*8*8(pA0))
 
655
        madd.d  rC12, rC12, rA1, rB2
 
656
        madd.d  rC22, rC22, rA2, rB2
 
657
                                        prefA(320+KB*8*8(pA1))
 
658
        madd.d  rC32, rC32, rA3, rB2
 
659
        madd.d  rC03, rC03, rA0, rB3
 
660
                                        prefA(320+KB*8*8(pA2))
 
661
        madd.d  rC13, rC13, rA1, rB3
 
662
        madd.d  rC23, rC23, rA2, rB3
 
663
                                        prefA(320+KB*8*8(pA3))
 
664
        madd.d  rC33, rC33, rA3, rB3
 
665
                                        ldc1    rB0, 96(pB0)
 
666
        madd.d  rC00, rC00, ra0, rb0
 
667
                                        ldc1    rA0, 96(pA0)
 
668
        madd.d  rC10, rC10, ra1, rb0
 
669
                                        ldc1    rA1, 96(pA1)
 
670
        madd.d  rC20, rC20, ra2, rb0
 
671
                                        ldc1    rA2, 96(pA2)
 
672
        madd.d  rC30, rC30, ra3, rb0
 
673
                                        ldc1    rA3, 96(pA3)
 
674
        madd.d  rC01, rC01, ra0, rb1
 
675
                                        ldc1    rB1, 96(pB1)
 
676
        madd.d  rC11, rC11, ra1, rb1
 
677
                                        ldc1    rB2, 96(pB2)
 
678
        madd.d  rC21, rC21, ra2, rb1
 
679
                                        ldc1    rB3, 96(pB3)
 
680
        madd.d  rC31, rC31, ra3, rb1
 
681
        madd.d  rC02, rC02, ra0, rb2
 
682
        madd.d  rC12, rC12, ra1, rb2
 
683
        madd.d  rC22, rC22, ra2, rb2
 
684
        madd.d  rC32, rC32, ra3, rb2
 
685
        madd.d  rC03, rC03, ra0, rb3
 
686
        madd.d  rC13, rC13, ra1, rb3
 
687
        madd.d  rC23, rC23, ra2, rb3
 
688
        madd.d  rC33, rC33, ra3, rb3
 
689
#endif
 
690
#if KB > 14
 
691
                                        ldc1    rb0, 104(pB0)
 
692
        madd.d  rC00, rC00, rA0, rB0
 
693
                                        ldc1    ra0, 104(pA0)
 
694
        madd.d  rC10, rC10, rA1, rB0
 
695
                                        ldc1    ra1, 104(pA1)
 
696
        madd.d  rC20, rC20, rA2, rB0
 
697
                                        ldc1    ra2, 104(pA2)
 
698
        madd.d  rC30, rC30, rA3, rB0
 
699
                                        ldc1    ra3, 104(pA3)
 
700
        madd.d  rC01, rC01, rA0, rB1
 
701
                                        ldc1    rb1, 104(pB1)
 
702
        madd.d  rC11, rC11, rA1, rB1
 
703
                                        ldc1    rb2, 104(pB2)
 
704
        madd.d  rC21, rC21, rA2, rB1
 
705
                                        ldc1    rb3, 104(pB3)
 
706
        madd.d  rC31, rC31, rA3, rB1
 
707
        madd.d  rC02, rC02, rA0, rB2
 
708
        madd.d  rC12, rC12, rA1, rB2
 
709
        madd.d  rC22, rC22, rA2, rB2
 
710
        madd.d  rC32, rC32, rA3, rB2
 
711
        madd.d  rC03, rC03, rA0, rB3
 
712
        madd.d  rC13, rC13, rA1, rB3
 
713
        madd.d  rC23, rC23, rA2, rB3
 
714
        madd.d  rC33, rC33, rA3, rB3
 
715
                                        ldc1    rB0, 112(pB0)
 
716
        madd.d  rC00, rC00, ra0, rb0
 
717
                                        ldc1    rA0, 112(pA0)
 
718
        madd.d  rC10, rC10, ra1, rb0
 
719
                                        ldc1    rA1, 112(pA1)
 
720
        madd.d  rC20, rC20, ra2, rb0
 
721
                                        ldc1    rA2, 112(pA2)
 
722
        madd.d  rC30, rC30, ra3, rb0
 
723
                                        ldc1    rA3, 112(pA3)
 
724
        madd.d  rC01, rC01, ra0, rb1
 
725
                                        ldc1    rB1, 112(pB1)
 
726
        madd.d  rC11, rC11, ra1, rb1
 
727
                                        ldc1    rB2, 112(pB2)
 
728
        madd.d  rC21, rC21, ra2, rb1
 
729
                                        ldc1    rB3, 112(pB3)
 
730
        madd.d  rC31, rC31, ra3, rb1
 
731
        madd.d  rC02, rC02, ra0, rb2
 
732
                                        prefA(352+KB*8*8(pA0))
 
733
        madd.d  rC12, rC12, ra1, rb2
 
734
                                        prefA(352+KB*8*8(pA1))
 
735
        madd.d  rC22, rC22, ra2, rb2
 
736
        madd.d  rC32, rC32, ra3, rb2
 
737
                                        prefA(352+KB*8*8(pA2))
 
738
        madd.d  rC03, rC03, ra0, rb3
 
739
        madd.d  rC13, rC13, ra1, rb3
 
740
                                        prefA(352+KB*8*8(pA3))
 
741
        madd.d  rC23, rC23, ra2, rb3
 
742
        madd.d  rC33, rC33, ra3, rb3
 
743
#endif
 
744
#if KB > 16
 
745
                                        ldc1    rb0, 120(pB0)
 
746
        madd.d  rC00, rC00, rA0, rB0
 
747
                                        ldc1    ra0, 120(pA0)
 
748
        madd.d  rC10, rC10, rA1, rB0
 
749
                                        ldc1    ra1, 120(pA1)
 
750
        madd.d  rC20, rC20, rA2, rB0
 
751
                                        ldc1    ra2, 120(pA2)
 
752
        madd.d  rC30, rC30, rA3, rB0
 
753
                                        ldc1    ra3, 120(pA3)
 
754
        madd.d  rC01, rC01, rA0, rB1
 
755
                                        ldc1    rb1, 120(pB1)
 
756
        madd.d  rC11, rC11, rA1, rB1
 
757
                                        ldc1    rb2, 120(pB2)
 
758
        madd.d  rC21, rC21, rA2, rB1
 
759
                                        ldc1    rb3, 120(pB3)
 
760
        madd.d  rC31, rC31, rA3, rB1
 
761
        madd.d  rC02, rC02, rA0, rB2
 
762
        madd.d  rC12, rC12, rA1, rB2
 
763
        madd.d  rC22, rC22, rA2, rB2
 
764
        madd.d  rC32, rC32, rA3, rB2
 
765
        madd.d  rC03, rC03, rA0, rB3
 
766
        madd.d  rC13, rC13, rA1, rB3
 
767
        madd.d  rC23, rC23, rA2, rB3
 
768
        madd.d  rC33, rC33, rA3, rB3
 
769
                                        ldc1    rB0, 128(pB0)
 
770
        madd.d  rC00, rC00, ra0, rb0
 
771
                                        ldc1    rA0, 128(pA0)
 
772
        madd.d  rC10, rC10, ra1, rb0
 
773
                                        ldc1    rA1, 128(pA1)
 
774
        madd.d  rC20, rC20, ra2, rb0
 
775
                                        ldc1    rA2, 128(pA2)
 
776
        madd.d  rC30, rC30, ra3, rb0
 
777
                                        ldc1    rA3, 128(pA3)
 
778
        madd.d  rC01, rC01, ra0, rb1
 
779
                                        ldc1    rB1, 128(pB1)
 
780
        madd.d  rC11, rC11, ra1, rb1
 
781
                                        ldc1    rB2, 128(pB2)
 
782
        madd.d  rC21, rC21, ra2, rb1
 
783
                                        ldc1    rB3, 128(pB3)
 
784
        madd.d  rC31, rC31, ra3, rb1
 
785
        madd.d  rC02, rC02, ra0, rb2
 
786
        madd.d  rC12, rC12, ra1, rb2
 
787
        madd.d  rC22, rC22, ra2, rb2
 
788
                                        prefB(KB*8*4(pB0))
 
789
        madd.d  rC32, rC32, ra3, rb2
 
790
                                        prefB(KB*8*4(pB1))
 
791
        madd.d  rC03, rC03, ra0, rb3
 
792
                                        prefB(KB*8*4(pB2))
 
793
        madd.d  rC13, rC13, ra1, rb3
 
794
                                        prefB(KB*8*4(pB3))
 
795
        madd.d  rC23, rC23, ra2, rb3
 
796
        madd.d  rC33, rC33, ra3, rb3
 
797
#endif
 
798
#if KB > 18
 
799
                                        ldc1    rb0, 136(pB0)
 
800
        madd.d  rC00, rC00, rA0, rB0
 
801
                                        ldc1    ra0, 136(pA0)
 
802
        madd.d  rC10, rC10, rA1, rB0
 
803
                                        ldc1    ra1, 136(pA1)
 
804
        madd.d  rC20, rC20, rA2, rB0
 
805
                                        ldc1    ra2, 136(pA2)
 
806
        madd.d  rC30, rC30, rA3, rB0
 
807
                                        ldc1    ra3, 136(pA3)
 
808
        madd.d  rC01, rC01, rA0, rB1
 
809
                                        ldc1    rb1, 136(pB1)
 
810
        madd.d  rC11, rC11, rA1, rB1
 
811
                                        ldc1    rb2, 136(pB2)
 
812
        madd.d  rC21, rC21, rA2, rB1
 
813
                                        ldc1    rb3, 136(pB3)
 
814
        madd.d  rC31, rC31, rA3, rB1
 
815
        madd.d  rC02, rC02, rA0, rB2
 
816
        madd.d  rC12, rC12, rA1, rB2
 
817
        madd.d  rC22, rC22, rA2, rB2
 
818
                                        prefB(32+KB*8*4(pB0))
 
819
        madd.d  rC32, rC32, rA3, rB2
 
820
                                        prefB(32+KB*8*4(pB1))
 
821
        madd.d  rC03, rC03, rA0, rB3
 
822
                                        prefB(32+KB*8*4(pB2))
 
823
        madd.d  rC13, rC13, rA1, rB3
 
824
                                        prefB(32+KB*8*4(pB3))
 
825
        madd.d  rC23, rC23, rA2, rB3
 
826
        madd.d  rC33, rC33, rA3, rB3
 
827
                                        ldc1    rB0, 144(pB0)
 
828
        madd.d  rC00, rC00, ra0, rb0
 
829
                                        ldc1    rA0, 144(pA0)
 
830
        madd.d  rC10, rC10, ra1, rb0
 
831
                                        ldc1    rA1, 144(pA1)
 
832
        madd.d  rC20, rC20, ra2, rb0
 
833
                                        ldc1    rA2, 144(pA2)
 
834
        madd.d  rC30, rC30, ra3, rb0
 
835
                                        ldc1    rA3, 144(pA3)
 
836
        madd.d  rC01, rC01, ra0, rb1
 
837
                                        ldc1    rB1, 144(pB1)
 
838
        madd.d  rC11, rC11, ra1, rb1
 
839
                                        ldc1    rB2, 144(pB2)
 
840
        madd.d  rC21, rC21, ra2, rb1
 
841
                                        ldc1    rB3, 144(pB3)
 
842
        madd.d  rC31, rC31, ra3, rb1
 
843
        madd.d  rC02, rC02, ra0, rb2
 
844
        madd.d  rC12, rC12, ra1, rb2
 
845
        madd.d  rC22, rC22, ra2, rb2
 
846
                                        prefB(64+KB*8*4(pB0))
 
847
        madd.d  rC32, rC32, ra3, rb2
 
848
                                        prefB(64+KB*8*4(pB1))
 
849
        madd.d  rC03, rC03, ra0, rb3
 
850
                                        prefB(64+KB*8*4(pB2))
 
851
        madd.d  rC13, rC13, ra1, rb3
 
852
                                        prefB(64+KB*8*4(pB3))
 
853
        madd.d  rC23, rC23, ra2, rb3
 
854
        madd.d  rC33, rC33, ra3, rb3
 
855
#endif
 
856
#if KB > 20
 
857
                                        ldc1    rb0, 152(pB0)
 
858
        madd.d  rC00, rC00, rA0, rB0
 
859
                                        ldc1    ra0, 152(pA0)
 
860
        madd.d  rC10, rC10, rA1, rB0
 
861
                                        ldc1    ra1, 152(pA1)
 
862
        madd.d  rC20, rC20, rA2, rB0
 
863
                                        ldc1    ra2, 152(pA2)
 
864
        madd.d  rC30, rC30, rA3, rB0
 
865
                                        ldc1    ra3, 152(pA3)
 
866
        madd.d  rC01, rC01, rA0, rB1
 
867
                                        ldc1    rb1, 152(pB1)
 
868
        madd.d  rC11, rC11, rA1, rB1
 
869
                                        ldc1    rb2, 152(pB2)
 
870
        madd.d  rC21, rC21, rA2, rB1
 
871
                                        ldc1    rb3, 152(pB3)
 
872
        madd.d  rC31, rC31, rA3, rB1
 
873
        madd.d  rC02, rC02, rA0, rB2
 
874
        madd.d  rC12, rC12, rA1, rB2
 
875
        madd.d  rC22, rC22, rA2, rB2
 
876
                                        prefB(96+KB*8*4(pB0))
 
877
        madd.d  rC32, rC32, rA3, rB2
 
878
                                        prefB(96+KB*8*4(pB1))
 
879
        madd.d  rC03, rC03, rA0, rB3
 
880
                                        prefB(96+KB*8*4(pB2))
 
881
        madd.d  rC13, rC13, rA1, rB3
 
882
                                        prefB(96+KB*8*4(pB3))
 
883
        madd.d  rC23, rC23, rA2, rB3
 
884
        madd.d  rC33, rC33, rA3, rB3
 
885
                                        ldc1    rB0, 160(pB0)
 
886
        madd.d  rC00, rC00, ra0, rb0
 
887
                                        ldc1    rA0, 160(pA0)
 
888
        madd.d  rC10, rC10, ra1, rb0
 
889
                                        ldc1    rA1, 160(pA1)
 
890
        madd.d  rC20, rC20, ra2, rb0
 
891
                                        ldc1    rA2, 160(pA2)
 
892
        madd.d  rC30, rC30, ra3, rb0
 
893
                                        ldc1    rA3, 160(pA3)
 
894
        madd.d  rC01, rC01, ra0, rb1
 
895
                                        ldc1    rB1, 160(pB1)
 
896
        madd.d  rC11, rC11, ra1, rb1
 
897
                                        ldc1    rB2, 160(pB2)
 
898
        madd.d  rC21, rC21, ra2, rb1
 
899
                                        ldc1    rB3, 160(pB3)
 
900
        madd.d  rC31, rC31, ra3, rb1
 
901
        madd.d  rC02, rC02, ra0, rb2
 
902
        madd.d  rC12, rC12, ra1, rb2
 
903
        madd.d  rC22, rC22, ra2, rb2
 
904
                                        prefB(128+KB*8*4(pB0))
 
905
        madd.d  rC32, rC32, ra3, rb2
 
906
                                        prefB(128+KB*8*4(pB1))
 
907
        madd.d  rC03, rC03, ra0, rb3
 
908
                                        prefB(128+KB*8*4(pB2))
 
909
        madd.d  rC13, rC13, ra1, rb3
 
910
                                        prefB(128+KB*8*4(pB3))
 
911
        madd.d  rC23, rC23, ra2, rb3
 
912
        madd.d  rC33, rC33, ra3, rb3
 
913
#endif
 
914
#if KB > 22
 
915
                                        ldc1    rb0, 168(pB0)
 
916
        madd.d  rC00, rC00, rA0, rB0
 
917
                                        ldc1    ra0, 168(pA0)
 
918
        madd.d  rC10, rC10, rA1, rB0
 
919
                                        ldc1    ra1, 168(pA1)
 
920
        madd.d  rC20, rC20, rA2, rB0
 
921
                                        ldc1    ra2, 168(pA2)
 
922
        madd.d  rC30, rC30, rA3, rB0
 
923
                                        ldc1    ra3, 168(pA3)
 
924
        madd.d  rC01, rC01, rA0, rB1
 
925
                                        ldc1    rb1, 168(pB1)
 
926
        madd.d  rC11, rC11, rA1, rB1
 
927
                                        ldc1    rb2, 168(pB2)
 
928
        madd.d  rC21, rC21, rA2, rB1
 
929
                                        ldc1    rb3, 168(pB3)
 
930
        madd.d  rC31, rC31, rA3, rB1
 
931
        madd.d  rC02, rC02, rA0, rB2
 
932
                                        prefB(160+KB*8*4(pB0))
 
933
        madd.d  rC12, rC12, rA1, rB2
 
934
                                        prefB(160+KB*8*4(pB1))
 
935
        madd.d  rC22, rC22, rA2, rB2
 
936
                                        prefB(160+KB*8*4(pB2))
 
937
        madd.d  rC32, rC32, rA3, rB2
 
938
                                        prefB(160+KB*8*4(pB3))
 
939
        madd.d  rC03, rC03, rA0, rB3
 
940
        madd.d  rC13, rC13, rA1, rB3
 
941
        madd.d  rC23, rC23, rA2, rB3
 
942
        madd.d  rC33, rC33, rA3, rB3
 
943
                                        ldc1    rB0, 176(pB0)
 
944
        madd.d  rC00, rC00, ra0, rb0
 
945
                                        ldc1    rA0, 176(pA0)
 
946
        madd.d  rC10, rC10, ra1, rb0
 
947
                                        ldc1    rA1, 176(pA1)
 
948
        madd.d  rC20, rC20, ra2, rb0
 
949
                                        ldc1    rA2, 176(pA2)
 
950
        madd.d  rC30, rC30, ra3, rb0
 
951
                                        ldc1    rA3, 176(pA3)
 
952
        madd.d  rC01, rC01, ra0, rb1
 
953
                                        ldc1    rB1, 176(pB1)
 
954
        madd.d  rC11, rC11, ra1, rb1
 
955
                                        ldc1    rB2, 176(pB2)
 
956
        madd.d  rC21, rC21, ra2, rb1
 
957
                                        ldc1    rB3, 176(pB3)
 
958
        madd.d  rC31, rC31, ra3, rb1
 
959
        madd.d  rC02, rC02, ra0, rb2
 
960
        madd.d  rC12, rC12, ra1, rb2
 
961
        madd.d  rC22, rC22, ra2, rb2
 
962
                                        prefB(192+KB*8*4(pB0))
 
963
        madd.d  rC32, rC32, ra3, rb2
 
964
                                        prefB(192+KB*8*4(pB1))
 
965
        madd.d  rC03, rC03, ra0, rb3
 
966
                                        prefB(192+KB*8*4(pB2))
 
967
        madd.d  rC13, rC13, ra1, rb3
 
968
                                        prefB(192+KB*8*4(pB3))
 
969
        madd.d  rC23, rC23, ra2, rb3
 
970
        madd.d  rC33, rC33, ra3, rb3
 
971
#endif
 
972
#if KB > 24
 
973
                                        ldc1    rb0, 184(pB0)
 
974
        madd.d  rC00, rC00, rA0, rB0
 
975
                                        ldc1    ra0, 184(pA0)
 
976
        madd.d  rC10, rC10, rA1, rB0
 
977
                                        ldc1    ra1, 184(pA1)
 
978
        madd.d  rC20, rC20, rA2, rB0
 
979
                                        ldc1    ra2, 184(pA2)
 
980
        madd.d  rC30, rC30, rA3, rB0
 
981
                                        ldc1    ra3, 184(pA3)
 
982
        madd.d  rC01, rC01, rA0, rB1
 
983
                                        ldc1    rb1, 184(pB1)
 
984
        madd.d  rC11, rC11, rA1, rB1
 
985
                                        ldc1    rb2, 184(pB2)
 
986
        madd.d  rC21, rC21, rA2, rB1
 
987
                                        ldc1    rb3, 184(pB3)
 
988
        madd.d  rC31, rC31, rA3, rB1
 
989
        madd.d  rC02, rC02, rA0, rB2
 
990
        madd.d  rC12, rC12, rA1, rB2
 
991
        madd.d  rC22, rC22, rA2, rB2
 
992
                                        prefB(224+KB*8*4(pB0))
 
993
        madd.d  rC32, rC32, rA3, rB2
 
994
                                        prefB(224+KB*8*4(pB1))
 
995
        madd.d  rC03, rC03, rA0, rB3
 
996
                                        prefB(224+KB*8*4(pB2))
 
997
        madd.d  rC13, rC13, rA1, rB3
 
998
                                        prefB(224+KB*8*4(pB3))
 
999
#if KB <= 32
 
1000
   #undef prefB
 
1001
   #define prefB(mem)
 
1002
#endif
 
1003
        madd.d  rC23, rC23, rA2, rB3
 
1004
        madd.d  rC33, rC33, rA3, rB3
 
1005
                                        ldc1    rB0, 192(pB0)
 
1006
        madd.d  rC00, rC00, ra0, rb0
 
1007
                                        ldc1    rA0, 192(pA0)
 
1008
        madd.d  rC10, rC10, ra1, rb0
 
1009
                                        ldc1    rA1, 192(pA1)
 
1010
        madd.d  rC20, rC20, ra2, rb0
 
1011
                                        ldc1    rA2, 192(pA2)
 
1012
        madd.d  rC30, rC30, ra3, rb0
 
1013
                                        ldc1    rA3, 192(pA3)
 
1014
        madd.d  rC01, rC01, ra0, rb1
 
1015
                                        ldc1    rB1, 192(pB1)
 
1016
        madd.d  rC11, rC11, ra1, rb1
 
1017
                                        ldc1    rB2, 192(pB2)
 
1018
        madd.d  rC21, rC21, ra2, rb1
 
1019
                                        ldc1    rB3, 192(pB3)
 
1020
        madd.d  rC31, rC31, ra3, rb1
 
1021
                                        prefB(256+KB*8*4(pB0))
 
1022
        madd.d  rC02, rC02, ra0, rb2
 
1023
                                        prefB(256+KB*8*4(pB1))
 
1024
        madd.d  rC12, rC12, ra1, rb2
 
1025
                                        prefB(256+KB*8*4(pB2))
 
1026
        madd.d  rC22, rC22, ra2, rb2
 
1027
                                        prefB(256+KB*8*4(pB3))
 
1028
#if KB <= 36
 
1029
   #undef prefB
 
1030
   #define prefB(mem)
 
1031
#endif
 
1032
        madd.d  rC32, rC32, ra3, rb2
 
1033
                                        prefB(288+KB*8*4(pB0))
 
1034
        madd.d  rC03, rC03, ra0, rb3
 
1035
                                        prefB(288+KB*8*4(pB1))
 
1036
        madd.d  rC13, rC13, ra1, rb3
 
1037
                                        prefB(288+KB*8*4(pB2))
 
1038
        madd.d  rC23, rC23, ra2, rb3
 
1039
                                        prefB(288+KB*8*4(pB3))
 
1040
#if KB <= 40
 
1041
   #undef prefB
 
1042
   #define prefB(mem)
 
1043
#endif
 
1044
        madd.d  rC33, rC33, ra3, rb3
 
1045
#endif
 
1046
#if KB > 26
 
1047
                                        ldc1    rb0, 200(pB0)
 
1048
        madd.d  rC00, rC00, rA0, rB0
 
1049
                                        ldc1    ra0, 200(pA0)
 
1050
        madd.d  rC10, rC10, rA1, rB0
 
1051
                                        ldc1    ra1, 200(pA1)
 
1052
        madd.d  rC20, rC20, rA2, rB0
 
1053
                                        ldc1    ra2, 200(pA2)
 
1054
        madd.d  rC30, rC30, rA3, rB0
 
1055
                                        ldc1    ra3, 200(pA3)
 
1056
        madd.d  rC01, rC01, rA0, rB1
 
1057
                                        ldc1    rb1, 200(pB1)
 
1058
        madd.d  rC11, rC11, rA1, rB1
 
1059
                                        ldc1    rb2, 200(pB2)
 
1060
        madd.d  rC21, rC21, rA2, rB1
 
1061
                                        ldc1    rb3, 200(pB3)
 
1062
        madd.d  rC31, rC31, rA3, rB1
 
1063
        madd.d  rC02, rC02, rA0, rB2
 
1064
        madd.d  rC12, rC12, rA1, rB2
 
1065
        madd.d  rC22, rC22, rA2, rB2
 
1066
                                        prefB(320+KB*8*4(pB0))
 
1067
        madd.d  rC32, rC32, rA3, rB2
 
1068
                                        prefB(320+KB*8*4(pB1))
 
1069
        madd.d  rC03, rC03, rA0, rB3
 
1070
                                        prefB(320+KB*8*4(pB2))
 
1071
        madd.d  rC13, rC13, rA1, rB3
 
1072
                                        prefB(320+KB*8*4(pB3))
 
1073
#if KB <= 44
 
1074
   #undef prefB
 
1075
   #define prefB(mem)
 
1076
#endif
 
1077
        madd.d  rC23, rC23, rA2, rB3
 
1078
        madd.d  rC33, rC33, rA3, rB3
 
1079
                                        ldc1    rB0, 208(pB0)
 
1080
        madd.d  rC00, rC00, ra0, rb0
 
1081
                                        ldc1    rA0, 208(pA0)
 
1082
        madd.d  rC10, rC10, ra1, rb0
 
1083
                                        ldc1    rA1, 208(pA1)
 
1084
        madd.d  rC20, rC20, ra2, rb0
 
1085
                                        ldc1    rA2, 208(pA2)
 
1086
        madd.d  rC30, rC30, ra3, rb0
 
1087
                                        ldc1    rA3, 208(pA3)
 
1088
        madd.d  rC01, rC01, ra0, rb1
 
1089
                                        ldc1    rB1, 208(pB1)
 
1090
        madd.d  rC11, rC11, ra1, rb1
 
1091
                                        ldc1    rB2, 208(pB2)
 
1092
        madd.d  rC21, rC21, ra2, rb1
 
1093
                                        ldc1    rB3, 208(pB3)
 
1094
        madd.d  rC31, rC31, ra3, rb1
 
1095
                                        prefC(CMUL(32)(pC0))
 
1096
        madd.d  rC02, rC02, ra0, rb2
 
1097
                                        prefC(CMUL(32)(pC1))
 
1098
        madd.d  rC12, rC12, ra1, rb2
 
1099
                                        prefC(CMUL(32)(pC2))
 
1100
        madd.d  rC22, rC22, ra2, rb2
 
1101
                                        prefC(CMUL(32)(pC3))
 
1102
        madd.d  rC32, rC32, ra3, rb2
 
1103
        madd.d  rC03, rC03, ra0, rb3
 
1104
        madd.d  rC13, rC13, ra1, rb3
 
1105
        madd.d  rC23, rC23, ra2, rb3
 
1106
        madd.d  rC33, rC33, ra3, rb3
 
1107
#endif
 
1108
#if KB > 28
 
1109
                                        ldc1    rb0, 216(pB0)
 
1110
        madd.d  rC00, rC00, rA0, rB0
 
1111
                                        ldc1    ra0, 216(pA0)
 
1112
        madd.d  rC10, rC10, rA1, rB0
 
1113
                                        ldc1    ra1, 216(pA1)
 
1114
        madd.d  rC20, rC20, rA2, rB0
 
1115
                                        ldc1    ra2, 216(pA2)
 
1116
        madd.d  rC30, rC30, rA3, rB0
 
1117
                                        ldc1    ra3, 216(pA3)
 
1118
        madd.d  rC01, rC01, rA0, rB1
 
1119
                                        ldc1    rb1, 216(pB1)
 
1120
        madd.d  rC11, rC11, rA1, rB1
 
1121
                                        ldc1    rb2, 216(pB2)
 
1122
        madd.d  rC21, rC21, rA2, rB1
 
1123
                                        ldc1    rb3, 216(pB3)
 
1124
        madd.d  rC31, rC31, rA3, rB1
 
1125
        madd.d  rC02, rC02, rA0, rB2
 
1126
        madd.d  rC12, rC12, rA1, rB2
 
1127
        madd.d  rC22, rC22, rA2, rB2
 
1128
                                        prefB(352+KB*8*4(pB0))
 
1129
        madd.d  rC32, rC32, rA3, rB2
 
1130
                                        prefB(352+KB*8*4(pB1))
 
1131
        madd.d  rC03, rC03, rA0, rB3
 
1132
                                        prefB(352+KB*8*4(pB2))
 
1133
        madd.d  rC13, rC13, rA1, rB3
 
1134
                                        prefB(352+KB*8*4(pB3))
 
1135
#if KB <= 48
 
1136
   #undef prefB
 
1137
   #define prefB(mem)
 
1138
#endif
 
1139
        madd.d  rC23, rC23, rA2, rB3
 
1140
        madd.d  rC33, rC33, rA3, rB3
 
1141
                                        ldc1    rB0, 224(pB0)
 
1142
        madd.d  rC00, rC00, ra0, rb0
 
1143
                                        ldc1    rA0, 224(pA0)
 
1144
        madd.d  rC10, rC10, ra1, rb0
 
1145
                                        ldc1    rA1, 224(pA1)
 
1146
        madd.d  rC20, rC20, ra2, rb0
 
1147
                                        ldc1    rA2, 224(pA2)
 
1148
        madd.d  rC30, rC30, ra3, rb0
 
1149
                                        ldc1    rA3, 224(pA3)
 
1150
        madd.d  rC01, rC01, ra0, rb1
 
1151
                                        ldc1    rB1, 224(pB1)
 
1152
        madd.d  rC11, rC11, ra1, rb1
 
1153
                                        ldc1    rB2, 224(pB2)
 
1154
        madd.d  rC21, rC21, ra2, rb1
 
1155
                                        ldc1    rB3, 224(pB3)
 
1156
        madd.d  rC31, rC31, ra3, rb1
 
1157
        madd.d  rC02, rC02, ra0, rb2
 
1158
        madd.d  rC12, rC12, ra1, rb2
 
1159
        madd.d  rC22, rC22, ra2, rb2
 
1160
                                        prefB(384+KB*8*4(pB0))
 
1161
        madd.d  rC32, rC32, ra3, rb2
 
1162
                                        prefB(384+KB*8*4(pB1))
 
1163
        madd.d  rC03, rC03, ra0, rb3
 
1164
                                        prefB(384+KB*8*4(pB2))
 
1165
        madd.d  rC13, rC13, ra1, rb3
 
1166
                                        prefB(384+KB*8*4(pB3))
 
1167
#if KB <= 52
 
1168
   #undef prefB
 
1169
   #define prefB(mem)
 
1170
#endif
 
1171
        madd.d  rC23, rC23, ra2, rb3
 
1172
        madd.d  rC33, rC33, ra3, rb3
 
1173
#endif
 
1174
#if KB > 30
 
1175
                                        ldc1    rb0, 232(pB0)
 
1176
        madd.d  rC00, rC00, rA0, rB0
 
1177
                                        ldc1    ra0, 232(pA0)
 
1178
        madd.d  rC10, rC10, rA1, rB0
 
1179
                                        ldc1    ra1, 232(pA1)
 
1180
        madd.d  rC20, rC20, rA2, rB0
 
1181
                                        ldc1    ra2, 232(pA2)
 
1182
        madd.d  rC30, rC30, rA3, rB0
 
1183
                                        ldc1    ra3, 232(pA3)
 
1184
        madd.d  rC01, rC01, rA0, rB1
 
1185
                                        ldc1    rb1, 232(pB1)
 
1186
        madd.d  rC11, rC11, rA1, rB1
 
1187
                                        ldc1    rb2, 232(pB2)
 
1188
        madd.d  rC21, rC21, rA2, rB1
 
1189
                                        ldc1    rb3, 232(pB3)
 
1190
        madd.d  rC31, rC31, rA3, rB1
 
1191
        madd.d  rC02, rC02, rA0, rB2
 
1192
        madd.d  rC12, rC12, rA1, rB2
 
1193
        madd.d  rC22, rC22, rA2, rB2
 
1194
        madd.d  rC32, rC32, rA3, rB2
 
1195
        madd.d  rC03, rC03, rA0, rB3
 
1196
        madd.d  rC13, rC13, rA1, rB3
 
1197
        madd.d  rC23, rC23, rA2, rB3
 
1198
        madd.d  rC33, rC33, rA3, rB3
 
1199
                                        ldc1    rB0, 240(pB0)
 
1200
        madd.d  rC00, rC00, ra0, rb0
 
1201
                                        ldc1    rA0, 240(pA0)
 
1202
        madd.d  rC10, rC10, ra1, rb0
 
1203
                                        ldc1    rA1, 240(pA1)
 
1204
        madd.d  rC20, rC20, ra2, rb0
 
1205
                                        ldc1    rA2, 240(pA2)
 
1206
        madd.d  rC30, rC30, ra3, rb0
 
1207
                                        ldc1    rA3, 240(pA3)
 
1208
        madd.d  rC01, rC01, ra0, rb1
 
1209
                                        ldc1    rB1, 240(pB1)
 
1210
        madd.d  rC11, rC11, ra1, rb1
 
1211
                                        ldc1    rB2, 240(pB2)
 
1212
        madd.d  rC21, rC21, ra2, rb1
 
1213
                                        ldc1    rB3, 240(pB3)
 
1214
        madd.d  rC31, rC31, ra3, rb1
 
1215
                                        prefB(416+KB*8*4(pB0))
 
1216
        madd.d  rC02, rC02, ra0, rb2
 
1217
                                        prefB(416+KB*8*4(pB1))
 
1218
        madd.d  rC12, rC12, ra1, rb2
 
1219
                                        prefB(416+KB*8*4(pB2))
 
1220
        madd.d  rC22, rC22, ra2, rb2
 
1221
                                        prefB(416+KB*8*4(pB3))
 
1222
#if KB <= 56
 
1223
   #undef prefB
 
1224
   #define prefB(mem)
 
1225
#endif
 
1226
        madd.d  rC32, rC32, ra3, rb2
 
1227
                                        prefB(448+KB*8*4(pB0))
 
1228
        madd.d  rC03, rC03, ra0, rb3
 
1229
                                        prefB(448+KB*8*4(pB1))
 
1230
        madd.d  rC13, rC13, ra1, rb3
 
1231
                                        prefB(448+KB*8*4(pB2))
 
1232
        madd.d  rC23, rC23, ra2, rb3
 
1233
                                        prefB(448+KB*8*4(pB3))
 
1234
        madd.d  rC33, rC33, ra3, rb3
 
1235
#endif
 
1236
#if KB > 32
 
1237
                                        ldc1    rb0, 248(pB0)
 
1238
        madd.d  rC00, rC00, rA0, rB0
 
1239
                                        ldc1    ra0, 248(pA0)
 
1240
        madd.d  rC10, rC10, rA1, rB0
 
1241
                                        ldc1    ra1, 248(pA1)
 
1242
        madd.d  rC20, rC20, rA2, rB0
 
1243
                                        ldc1    ra2, 248(pA2)
 
1244
        madd.d  rC30, rC30, rA3, rB0
 
1245
                                        ldc1    ra3, 248(pA3)
 
1246
        madd.d  rC01, rC01, rA0, rB1
 
1247
                                        ldc1    rb1, 248(pB1)
 
1248
        madd.d  rC11, rC11, rA1, rB1
 
1249
                                        ldc1    rb2, 248(pB2)
 
1250
        madd.d  rC21, rC21, rA2, rB1
 
1251
                                        ldc1    rb3, 248(pB3)
 
1252
        madd.d  rC31, rC31, rA3, rB1
 
1253
        madd.d  rC02, rC02, rA0, rB2
 
1254
        madd.d  rC12, rC12, rA1, rB2
 
1255
        madd.d  rC22, rC22, rA2, rB2
 
1256
        madd.d  rC32, rC32, rA3, rB2
 
1257
        madd.d  rC03, rC03, rA0, rB3
 
1258
        madd.d  rC13, rC13, rA1, rB3
 
1259
        madd.d  rC23, rC23, rA2, rB3
 
1260
        madd.d  rC33, rC33, rA3, rB3
 
1261
                                        ldc1    rB0, 256(pB0)
 
1262
        madd.d  rC00, rC00, ra0, rb0
 
1263
                                        ldc1    rA0, 256(pA0)
 
1264
        madd.d  rC10, rC10, ra1, rb0
 
1265
                                        ldc1    rA1, 256(pA1)
 
1266
        madd.d  rC20, rC20, ra2, rb0
 
1267
                                        ldc1    rA2, 256(pA2)
 
1268
        madd.d  rC30, rC30, ra3, rb0
 
1269
                                        ldc1    rA3, 256(pA3)
 
1270
        madd.d  rC01, rC01, ra0, rb1
 
1271
                                        ldc1    rB1, 256(pB1)
 
1272
        madd.d  rC11, rC11, ra1, rb1
 
1273
                                        ldc1    rB2, 256(pB2)
 
1274
        madd.d  rC21, rC21, ra2, rb1
 
1275
                                        ldc1    rB3, 256(pB3)
 
1276
        madd.d  rC31, rC31, ra3, rb1
 
1277
        madd.d  rC02, rC02, ra0, rb2
 
1278
        madd.d  rC12, rC12, ra1, rb2
 
1279
        madd.d  rC22, rC22, ra2, rb2
 
1280
        madd.d  rC32, rC32, ra3, rb2
 
1281
        madd.d  rC03, rC03, ra0, rb3
 
1282
        madd.d  rC13, rC13, ra1, rb3
 
1283
        madd.d  rC23, rC23, ra2, rb3
 
1284
        madd.d  rC33, rC33, ra3, rb3
 
1285
#endif
 
1286
#if KB > 34
 
1287
                                        ldc1    rb0, 264(pB0)
 
1288
        madd.d  rC00, rC00, rA0, rB0
 
1289
                                        ldc1    ra0, 264(pA0)
 
1290
        madd.d  rC10, rC10, rA1, rB0
 
1291
                                        ldc1    ra1, 264(pA1)
 
1292
        madd.d  rC20, rC20, rA2, rB0
 
1293
                                        ldc1    ra2, 264(pA2)
 
1294
        madd.d  rC30, rC30, rA3, rB0
 
1295
                                        ldc1    ra3, 264(pA3)
 
1296
        madd.d  rC01, rC01, rA0, rB1
 
1297
                                        ldc1    rb1, 264(pB1)
 
1298
        madd.d  rC11, rC11, rA1, rB1
 
1299
                                        ldc1    rb2, 264(pB2)
 
1300
        madd.d  rC21, rC21, rA2, rB1
 
1301
                                        ldc1    rb3, 264(pB3)
 
1302
        madd.d  rC31, rC31, rA3, rB1
 
1303
        madd.d  rC02, rC02, rA0, rB2
 
1304
        madd.d  rC12, rC12, rA1, rB2
 
1305
        madd.d  rC22, rC22, rA2, rB2
 
1306
        madd.d  rC32, rC32, rA3, rB2
 
1307
        madd.d  rC03, rC03, rA0, rB3
 
1308
        madd.d  rC13, rC13, rA1, rB3
 
1309
        madd.d  rC23, rC23, rA2, rB3
 
1310
        madd.d  rC33, rC33, rA3, rB3
 
1311
                                        ldc1    rB0, 272(pB0)
 
1312
        madd.d  rC00, rC00, ra0, rb0
 
1313
                                        ldc1    rA0, 272(pA0)
 
1314
        madd.d  rC10, rC10, ra1, rb0
 
1315
                                        ldc1    rA1, 272(pA1)
 
1316
        madd.d  rC20, rC20, ra2, rb0
 
1317
                                        ldc1    rA2, 272(pA2)
 
1318
        madd.d  rC30, rC30, ra3, rb0
 
1319
                                        ldc1    rA3, 272(pA3)
 
1320
        madd.d  rC01, rC01, ra0, rb1
 
1321
                                        ldc1    rB1, 272(pB1)
 
1322
        madd.d  rC11, rC11, ra1, rb1
 
1323
                                        ldc1    rB2, 272(pB2)
 
1324
        madd.d  rC21, rC21, ra2, rb1
 
1325
                                        ldc1    rB3, 272(pB3)
 
1326
        madd.d  rC31, rC31, ra3, rb1
 
1327
        madd.d  rC02, rC02, ra0, rb2
 
1328
        madd.d  rC12, rC12, ra1, rb2
 
1329
        madd.d  rC22, rC22, ra2, rb2
 
1330
        madd.d  rC32, rC32, ra3, rb2
 
1331
        madd.d  rC03, rC03, ra0, rb3
 
1332
        madd.d  rC13, rC13, ra1, rb3
 
1333
        madd.d  rC23, rC23, ra2, rb3
 
1334
        madd.d  rC33, rC33, ra3, rb3
 
1335
#endif
 
1336
#if KB > 36
 
1337
                                        ldc1    rb0, 280(pB0)
 
1338
        madd.d  rC00, rC00, rA0, rB0
 
1339
                                        ldc1    ra0, 280(pA0)
 
1340
        madd.d  rC10, rC10, rA1, rB0
 
1341
                                        ldc1    ra1, 280(pA1)
 
1342
        madd.d  rC20, rC20, rA2, rB0
 
1343
                                        ldc1    ra2, 280(pA2)
 
1344
        madd.d  rC30, rC30, rA3, rB0
 
1345
                                        ldc1    ra3, 280(pA3)
 
1346
        madd.d  rC01, rC01, rA0, rB1
 
1347
                                        ldc1    rb1, 280(pB1)
 
1348
        madd.d  rC11, rC11, rA1, rB1
 
1349
                                        ldc1    rb2, 280(pB2)
 
1350
        madd.d  rC21, rC21, rA2, rB1
 
1351
                                        ldc1    rb3, 280(pB3)
 
1352
        madd.d  rC31, rC31, rA3, rB1
 
1353
        madd.d  rC02, rC02, rA0, rB2
 
1354
        madd.d  rC12, rC12, rA1, rB2
 
1355
        madd.d  rC22, rC22, rA2, rB2
 
1356
        madd.d  rC32, rC32, rA3, rB2
 
1357
        madd.d  rC03, rC03, rA0, rB3
 
1358
        madd.d  rC13, rC13, rA1, rB3
 
1359
        madd.d  rC23, rC23, rA2, rB3
 
1360
        madd.d  rC33, rC33, rA3, rB3
 
1361
                                        ldc1    rB0, 288(pB0)
 
1362
        madd.d  rC00, rC00, ra0, rb0
 
1363
                                        ldc1    rA0, 288(pA0)
 
1364
        madd.d  rC10, rC10, ra1, rb0
 
1365
                                        ldc1    rA1, 288(pA1)
 
1366
        madd.d  rC20, rC20, ra2, rb0
 
1367
                                        ldc1    rA2, 288(pA2)
 
1368
        madd.d  rC30, rC30, ra3, rb0
 
1369
                                        ldc1    rA3, 288(pA3)
 
1370
        madd.d  rC01, rC01, ra0, rb1
 
1371
                                        ldc1    rB1, 288(pB1)
 
1372
        madd.d  rC11, rC11, ra1, rb1
 
1373
                                        ldc1    rB2, 288(pB2)
 
1374
        madd.d  rC21, rC21, ra2, rb1
 
1375
                                        ldc1    rB3, 288(pB3)
 
1376
        madd.d  rC31, rC31, ra3, rb1
 
1377
        madd.d  rC02, rC02, ra0, rb2
 
1378
        madd.d  rC12, rC12, ra1, rb2
 
1379
        madd.d  rC22, rC22, ra2, rb2
 
1380
        madd.d  rC32, rC32, ra3, rb2
 
1381
        madd.d  rC03, rC03, ra0, rb3
 
1382
        madd.d  rC13, rC13, ra1, rb3
 
1383
        madd.d  rC23, rC23, ra2, rb3
 
1384
        madd.d  rC33, rC33, ra3, rb3
 
1385
#endif
 
1386
#if KB > 38
 
1387
                                        ldc1    rb0, 296(pB0)
 
1388
        madd.d  rC00, rC00, rA0, rB0
 
1389
                                        ldc1    ra0, 296(pA0)
 
1390
        madd.d  rC10, rC10, rA1, rB0
 
1391
                                        ldc1    ra1, 296(pA1)
 
1392
        madd.d  rC20, rC20, rA2, rB0
 
1393
                                        ldc1    ra2, 296(pA2)
 
1394
        madd.d  rC30, rC30, rA3, rB0
 
1395
                                        ldc1    ra3, 296(pA3)
 
1396
        madd.d  rC01, rC01, rA0, rB1
 
1397
                                        ldc1    rb1, 296(pB1)
 
1398
        madd.d  rC11, rC11, rA1, rB1
 
1399
                                        ldc1    rb2, 296(pB2)
 
1400
        madd.d  rC21, rC21, rA2, rB1
 
1401
                                        ldc1    rb3, 296(pB3)
 
1402
        madd.d  rC31, rC31, rA3, rB1
 
1403
        madd.d  rC02, rC02, rA0, rB2
 
1404
        madd.d  rC12, rC12, rA1, rB2
 
1405
        madd.d  rC22, rC22, rA2, rB2
 
1406
        madd.d  rC32, rC32, rA3, rB2
 
1407
        madd.d  rC03, rC03, rA0, rB3
 
1408
        madd.d  rC13, rC13, rA1, rB3
 
1409
        madd.d  rC23, rC23, rA2, rB3
 
1410
        madd.d  rC33, rC33, rA3, rB3
 
1411
                                        ldc1    rB0, 304(pB0)
 
1412
        madd.d  rC00, rC00, ra0, rb0
 
1413
                                        ldc1    rA0, 304(pA0)
 
1414
        madd.d  rC10, rC10, ra1, rb0
 
1415
                                        ldc1    rA1, 304(pA1)
 
1416
        madd.d  rC20, rC20, ra2, rb0
 
1417
                                        ldc1    rA2, 304(pA2)
 
1418
        madd.d  rC30, rC30, ra3, rb0
 
1419
                                        ldc1    rA3, 304(pA3)
 
1420
        madd.d  rC01, rC01, ra0, rb1
 
1421
                                        ldc1    rB1, 304(pB1)
 
1422
        madd.d  rC11, rC11, ra1, rb1
 
1423
                                        ldc1    rB2, 304(pB2)
 
1424
        madd.d  rC21, rC21, ra2, rb1
 
1425
                                        ldc1    rB3, 304(pB3)
 
1426
        madd.d  rC31, rC31, ra3, rb1
 
1427
        madd.d  rC02, rC02, ra0, rb2
 
1428
        madd.d  rC12, rC12, ra1, rb2
 
1429
        madd.d  rC22, rC22, ra2, rb2
 
1430
        madd.d  rC32, rC32, ra3, rb2
 
1431
        madd.d  rC03, rC03, ra0, rb3
 
1432
        madd.d  rC13, rC13, ra1, rb3
 
1433
        madd.d  rC23, rC23, ra2, rb3
 
1434
        madd.d  rC33, rC33, ra3, rb3
 
1435
#endif
 
1436
#if KB > 40
 
1437
                                        ldc1    rb0, 312(pB0)
 
1438
        madd.d  rC00, rC00, rA0, rB0
 
1439
                                        ldc1    ra0, 312(pA0)
 
1440
        madd.d  rC10, rC10, rA1, rB0
 
1441
                                        ldc1    ra1, 312(pA1)
 
1442
        madd.d  rC20, rC20, rA2, rB0
 
1443
                                        ldc1    ra2, 312(pA2)
 
1444
        madd.d  rC30, rC30, rA3, rB0
 
1445
                                        ldc1    ra3, 312(pA3)
 
1446
        madd.d  rC01, rC01, rA0, rB1
 
1447
                                        ldc1    rb1, 312(pB1)
 
1448
        madd.d  rC11, rC11, rA1, rB1
 
1449
                                        ldc1    rb2, 312(pB2)
 
1450
        madd.d  rC21, rC21, rA2, rB1
 
1451
                                        ldc1    rb3, 312(pB3)
 
1452
        madd.d  rC31, rC31, rA3, rB1
 
1453
        madd.d  rC02, rC02, rA0, rB2
 
1454
        madd.d  rC12, rC12, rA1, rB2
 
1455
        madd.d  rC22, rC22, rA2, rB2
 
1456
        madd.d  rC32, rC32, rA3, rB2
 
1457
        madd.d  rC03, rC03, rA0, rB3
 
1458
        madd.d  rC13, rC13, rA1, rB3
 
1459
        madd.d  rC23, rC23, rA2, rB3
 
1460
        madd.d  rC33, rC33, rA3, rB3
 
1461
                                        ldc1    rB0, 320(pB0)
 
1462
        madd.d  rC00, rC00, ra0, rb0
 
1463
                                        ldc1    rA0, 320(pA0)
 
1464
        madd.d  rC10, rC10, ra1, rb0
 
1465
                                        ldc1    rA1, 320(pA1)
 
1466
        madd.d  rC20, rC20, ra2, rb0
 
1467
                                        ldc1    rA2, 320(pA2)
 
1468
        madd.d  rC30, rC30, ra3, rb0
 
1469
                                        ldc1    rA3, 320(pA3)
 
1470
        madd.d  rC01, rC01, ra0, rb1
 
1471
                                        ldc1    rB1, 320(pB1)
 
1472
        madd.d  rC11, rC11, ra1, rb1
 
1473
                                        ldc1    rB2, 320(pB2)
 
1474
        madd.d  rC21, rC21, ra2, rb1
 
1475
                                        ldc1    rB3, 320(pB3)
 
1476
        madd.d  rC31, rC31, ra3, rb1
 
1477
        madd.d  rC02, rC02, ra0, rb2
 
1478
        madd.d  rC12, rC12, ra1, rb2
 
1479
        madd.d  rC22, rC22, ra2, rb2
 
1480
        madd.d  rC32, rC32, ra3, rb2
 
1481
        madd.d  rC03, rC03, ra0, rb3
 
1482
        madd.d  rC13, rC13, ra1, rb3
 
1483
        madd.d  rC23, rC23, ra2, rb3
 
1484
        madd.d  rC33, rC33, ra3, rb3
 
1485
#endif
 
1486
#if KB > 42
 
1487
                                        ldc1    rb0, 328(pB0)
 
1488
        madd.d  rC00, rC00, rA0, rB0
 
1489
                                        ldc1    ra0, 328(pA0)
 
1490
        madd.d  rC10, rC10, rA1, rB0
 
1491
                                        ldc1    ra1, 328(pA1)
 
1492
        madd.d  rC20, rC20, rA2, rB0
 
1493
                                        ldc1    ra2, 328(pA2)
 
1494
        madd.d  rC30, rC30, rA3, rB0
 
1495
                                        ldc1    ra3, 328(pA3)
 
1496
        madd.d  rC01, rC01, rA0, rB1
 
1497
                                        ldc1    rb1, 328(pB1)
 
1498
        madd.d  rC11, rC11, rA1, rB1
 
1499
                                        ldc1    rb2, 328(pB2)
 
1500
        madd.d  rC21, rC21, rA2, rB1
 
1501
                                        ldc1    rb3, 328(pB3)
 
1502
        madd.d  rC31, rC31, rA3, rB1
 
1503
        madd.d  rC02, rC02, rA0, rB2
 
1504
        madd.d  rC12, rC12, rA1, rB2
 
1505
        madd.d  rC22, rC22, rA2, rB2
 
1506
        madd.d  rC32, rC32, rA3, rB2
 
1507
        madd.d  rC03, rC03, rA0, rB3
 
1508
        madd.d  rC13, rC13, rA1, rB3
 
1509
        madd.d  rC23, rC23, rA2, rB3
 
1510
        madd.d  rC33, rC33, rA3, rB3
 
1511
                                        ldc1    rB0, 336(pB0)
 
1512
        madd.d  rC00, rC00, ra0, rb0
 
1513
                                        ldc1    rA0, 336(pA0)
 
1514
        madd.d  rC10, rC10, ra1, rb0
 
1515
                                        ldc1    rA1, 336(pA1)
 
1516
        madd.d  rC20, rC20, ra2, rb0
 
1517
                                        ldc1    rA2, 336(pA2)
 
1518
        madd.d  rC30, rC30, ra3, rb0
 
1519
                                        ldc1    rA3, 336(pA3)
 
1520
        madd.d  rC01, rC01, ra0, rb1
 
1521
                                        ldc1    rB1, 336(pB1)
 
1522
        madd.d  rC11, rC11, ra1, rb1
 
1523
                                        ldc1    rB2, 336(pB2)
 
1524
        madd.d  rC21, rC21, ra2, rb1
 
1525
                                        ldc1    rB3, 336(pB3)
 
1526
        madd.d  rC31, rC31, ra3, rb1
 
1527
        madd.d  rC02, rC02, ra0, rb2
 
1528
        madd.d  rC12, rC12, ra1, rb2
 
1529
        madd.d  rC22, rC22, ra2, rb2
 
1530
        madd.d  rC32, rC32, ra3, rb2
 
1531
        madd.d  rC03, rC03, ra0, rb3
 
1532
        madd.d  rC13, rC13, ra1, rb3
 
1533
        madd.d  rC23, rC23, ra2, rb3
 
1534
        madd.d  rC33, rC33, ra3, rb3
 
1535
#endif
 
1536
#if KB > 44
 
1537
                                        ldc1    rb0, 344(pB0)
 
1538
        madd.d  rC00, rC00, rA0, rB0
 
1539
                                        ldc1    ra0, 344(pA0)
 
1540
        madd.d  rC10, rC10, rA1, rB0
 
1541
                                        ldc1    ra1, 344(pA1)
 
1542
        madd.d  rC20, rC20, rA2, rB0
 
1543
                                        ldc1    ra2, 344(pA2)
 
1544
        madd.d  rC30, rC30, rA3, rB0
 
1545
                                        ldc1    ra3, 344(pA3)
 
1546
        madd.d  rC01, rC01, rA0, rB1
 
1547
                                        ldc1    rb1, 344(pB1)
 
1548
        madd.d  rC11, rC11, rA1, rB1
 
1549
                                        ldc1    rb2, 344(pB2)
 
1550
        madd.d  rC21, rC21, rA2, rB1
 
1551
                                        ldc1    rb3, 344(pB3)
 
1552
        madd.d  rC31, rC31, rA3, rB1
 
1553
        madd.d  rC02, rC02, rA0, rB2
 
1554
        madd.d  rC12, rC12, rA1, rB2
 
1555
        madd.d  rC22, rC22, rA2, rB2
 
1556
        madd.d  rC32, rC32, rA3, rB2
 
1557
        madd.d  rC03, rC03, rA0, rB3
 
1558
        madd.d  rC13, rC13, rA1, rB3
 
1559
        madd.d  rC23, rC23, rA2, rB3
 
1560
        madd.d  rC33, rC33, rA3, rB3
 
1561
                                        ldc1    rB0, 352(pB0)
 
1562
        madd.d  rC00, rC00, ra0, rb0
 
1563
                                        ldc1    rA0, 352(pA0)
 
1564
        madd.d  rC10, rC10, ra1, rb0
 
1565
                                        ldc1    rA1, 352(pA1)
 
1566
        madd.d  rC20, rC20, ra2, rb0
 
1567
                                        ldc1    rA2, 352(pA2)
 
1568
        madd.d  rC30, rC30, ra3, rb0
 
1569
                                        ldc1    rA3, 352(pA3)
 
1570
        madd.d  rC01, rC01, ra0, rb1
 
1571
                                        ldc1    rB1, 352(pB1)
 
1572
        madd.d  rC11, rC11, ra1, rb1
 
1573
                                        ldc1    rB2, 352(pB2)
 
1574
        madd.d  rC21, rC21, ra2, rb1
 
1575
                                        ldc1    rB3, 352(pB3)
 
1576
        madd.d  rC31, rC31, ra3, rb1
 
1577
        madd.d  rC02, rC02, ra0, rb2
 
1578
        madd.d  rC12, rC12, ra1, rb2
 
1579
        madd.d  rC22, rC22, ra2, rb2
 
1580
        madd.d  rC32, rC32, ra3, rb2
 
1581
        madd.d  rC03, rC03, ra0, rb3
 
1582
        madd.d  rC13, rC13, ra1, rb3
 
1583
        madd.d  rC23, rC23, ra2, rb3
 
1584
        madd.d  rC33, rC33, ra3, rb3
 
1585
#endif
 
1586
#if KB > 46
 
1587
                                        ldc1    rb0, 360(pB0)
 
1588
        madd.d  rC00, rC00, rA0, rB0
 
1589
                                        ldc1    ra0, 360(pA0)
 
1590
        madd.d  rC10, rC10, rA1, rB0
 
1591
                                        ldc1    ra1, 360(pA1)
 
1592
        madd.d  rC20, rC20, rA2, rB0
 
1593
                                        ldc1    ra2, 360(pA2)
 
1594
        madd.d  rC30, rC30, rA3, rB0
 
1595
                                        ldc1    ra3, 360(pA3)
 
1596
        madd.d  rC01, rC01, rA0, rB1
 
1597
                                        ldc1    rb1, 360(pB1)
 
1598
        madd.d  rC11, rC11, rA1, rB1
 
1599
                                        ldc1    rb2, 360(pB2)
 
1600
        madd.d  rC21, rC21, rA2, rB1
 
1601
                                        ldc1    rb3, 360(pB3)
 
1602
        madd.d  rC31, rC31, rA3, rB1
 
1603
        madd.d  rC02, rC02, rA0, rB2
 
1604
        madd.d  rC12, rC12, rA1, rB2
 
1605
        madd.d  rC22, rC22, rA2, rB2
 
1606
        madd.d  rC32, rC32, rA3, rB2
 
1607
        madd.d  rC03, rC03, rA0, rB3
 
1608
        madd.d  rC13, rC13, rA1, rB3
 
1609
        madd.d  rC23, rC23, rA2, rB3
 
1610
        madd.d  rC33, rC33, rA3, rB3
 
1611
                                        ldc1    rB0, 368(pB0)
 
1612
        madd.d  rC00, rC00, ra0, rb0
 
1613
                                        ldc1    rA0, 368(pA0)
 
1614
        madd.d  rC10, rC10, ra1, rb0
 
1615
                                        ldc1    rA1, 368(pA1)
 
1616
        madd.d  rC20, rC20, ra2, rb0
 
1617
                                        ldc1    rA2, 368(pA2)
 
1618
        madd.d  rC30, rC30, ra3, rb0
 
1619
                                        ldc1    rA3, 368(pA3)
 
1620
        madd.d  rC01, rC01, ra0, rb1
 
1621
                                        ldc1    rB1, 368(pB1)
 
1622
        madd.d  rC11, rC11, ra1, rb1
 
1623
                                        ldc1    rB2, 368(pB2)
 
1624
        madd.d  rC21, rC21, ra2, rb1
 
1625
                                        ldc1    rB3, 368(pB3)
 
1626
        madd.d  rC31, rC31, ra3, rb1
 
1627
        madd.d  rC02, rC02, ra0, rb2
 
1628
        madd.d  rC12, rC12, ra1, rb2
 
1629
        madd.d  rC22, rC22, ra2, rb2
 
1630
        madd.d  rC32, rC32, ra3, rb2
 
1631
        madd.d  rC03, rC03, ra0, rb3
 
1632
        madd.d  rC13, rC13, ra1, rb3
 
1633
        madd.d  rC23, rC23, ra2, rb3
 
1634
        madd.d  rC33, rC33, ra3, rb3
 
1635
#endif
 
1636
#if KB > 48
 
1637
                                        ldc1    rb0, 376(pB0)
 
1638
        madd.d  rC00, rC00, rA0, rB0
 
1639
                                        ldc1    ra0, 376(pA0)
 
1640
        madd.d  rC10, rC10, rA1, rB0
 
1641
                                        ldc1    ra1, 376(pA1)
 
1642
        madd.d  rC20, rC20, rA2, rB0
 
1643
                                        ldc1    ra2, 376(pA2)
 
1644
        madd.d  rC30, rC30, rA3, rB0
 
1645
                                        ldc1    ra3, 376(pA3)
 
1646
        madd.d  rC01, rC01, rA0, rB1
 
1647
                                        ldc1    rb1, 376(pB1)
 
1648
        madd.d  rC11, rC11, rA1, rB1
 
1649
                                        ldc1    rb2, 376(pB2)
 
1650
        madd.d  rC21, rC21, rA2, rB1
 
1651
                                        ldc1    rb3, 376(pB3)
 
1652
        madd.d  rC31, rC31, rA3, rB1
 
1653
        madd.d  rC02, rC02, rA0, rB2
 
1654
        madd.d  rC12, rC12, rA1, rB2
 
1655
        madd.d  rC22, rC22, rA2, rB2
 
1656
        madd.d  rC32, rC32, rA3, rB2
 
1657
        madd.d  rC03, rC03, rA0, rB3
 
1658
        madd.d  rC13, rC13, rA1, rB3
 
1659
        madd.d  rC23, rC23, rA2, rB3
 
1660
        madd.d  rC33, rC33, rA3, rB3
 
1661
                                        ldc1    rB0, 384(pB0)
 
1662
        madd.d  rC00, rC00, ra0, rb0
 
1663
                                        ldc1    rA0, 384(pA0)
 
1664
        madd.d  rC10, rC10, ra1, rb0
 
1665
                                        ldc1    rA1, 384(pA1)
 
1666
        madd.d  rC20, rC20, ra2, rb0
 
1667
                                        ldc1    rA2, 384(pA2)
 
1668
        madd.d  rC30, rC30, ra3, rb0
 
1669
                                        ldc1    rA3, 384(pA3)
 
1670
        madd.d  rC01, rC01, ra0, rb1
 
1671
                                        ldc1    rB1, 384(pB1)
 
1672
        madd.d  rC11, rC11, ra1, rb1
 
1673
                                        ldc1    rB2, 384(pB2)
 
1674
        madd.d  rC21, rC21, ra2, rb1
 
1675
                                        ldc1    rB3, 384(pB3)
 
1676
        madd.d  rC31, rC31, ra3, rb1
 
1677
        madd.d  rC02, rC02, ra0, rb2
 
1678
        madd.d  rC12, rC12, ra1, rb2
 
1679
        madd.d  rC22, rC22, ra2, rb2
 
1680
        madd.d  rC32, rC32, ra3, rb2
 
1681
        madd.d  rC03, rC03, ra0, rb3
 
1682
        madd.d  rC13, rC13, ra1, rb3
 
1683
        madd.d  rC23, rC23, ra2, rb3
 
1684
        madd.d  rC33, rC33, ra3, rb3
 
1685
#endif
 
1686
#if KB > 50
 
1687
                                        ldc1    rb0, 392(pB0)
 
1688
        madd.d  rC00, rC00, rA0, rB0
 
1689
                                        ldc1    ra0, 392(pA0)
 
1690
        madd.d  rC10, rC10, rA1, rB0
 
1691
                                        ldc1    ra1, 392(pA1)
 
1692
        madd.d  rC20, rC20, rA2, rB0
 
1693
                                        ldc1    ra2, 392(pA2)
 
1694
        madd.d  rC30, rC30, rA3, rB0
 
1695
                                        ldc1    ra3, 392(pA3)
 
1696
        madd.d  rC01, rC01, rA0, rB1
 
1697
                                        ldc1    rb1, 392(pB1)
 
1698
        madd.d  rC11, rC11, rA1, rB1
 
1699
                                        ldc1    rb2, 392(pB2)
 
1700
        madd.d  rC21, rC21, rA2, rB1
 
1701
                                        ldc1    rb3, 392(pB3)
 
1702
        madd.d  rC31, rC31, rA3, rB1
 
1703
        madd.d  rC02, rC02, rA0, rB2
 
1704
        madd.d  rC12, rC12, rA1, rB2
 
1705
        madd.d  rC22, rC22, rA2, rB2
 
1706
        madd.d  rC32, rC32, rA3, rB2
 
1707
        madd.d  rC03, rC03, rA0, rB3
 
1708
        madd.d  rC13, rC13, rA1, rB3
 
1709
        madd.d  rC23, rC23, rA2, rB3
 
1710
        madd.d  rC33, rC33, rA3, rB3
 
1711
                                        ldc1    rB0, 400(pB0)
 
1712
        madd.d  rC00, rC00, ra0, rb0
 
1713
                                        ldc1    rA0, 400(pA0)
 
1714
        madd.d  rC10, rC10, ra1, rb0
 
1715
                                        ldc1    rA1, 400(pA1)
 
1716
        madd.d  rC20, rC20, ra2, rb0
 
1717
                                        ldc1    rA2, 400(pA2)
 
1718
        madd.d  rC30, rC30, ra3, rb0
 
1719
                                        ldc1    rA3, 400(pA3)
 
1720
        madd.d  rC01, rC01, ra0, rb1
 
1721
                                        ldc1    rB1, 400(pB1)
 
1722
        madd.d  rC11, rC11, ra1, rb1
 
1723
                                        ldc1    rB2, 400(pB2)
 
1724
        madd.d  rC21, rC21, ra2, rb1
 
1725
                                        ldc1    rB3, 400(pB3)
 
1726
        madd.d  rC31, rC31, ra3, rb1
 
1727
        madd.d  rC02, rC02, ra0, rb2
 
1728
        madd.d  rC12, rC12, ra1, rb2
 
1729
        madd.d  rC22, rC22, ra2, rb2
 
1730
        madd.d  rC32, rC32, ra3, rb2
 
1731
        madd.d  rC03, rC03, ra0, rb3
 
1732
        madd.d  rC13, rC13, ra1, rb3
 
1733
        madd.d  rC23, rC23, ra2, rb3
 
1734
        madd.d  rC33, rC33, ra3, rb3
 
1735
#endif
 
1736
#if KB > 52
 
1737
                                        ldc1    rb0, 408(pB0)
 
1738
        madd.d  rC00, rC00, rA0, rB0
 
1739
                                        ldc1    ra0, 408(pA0)
 
1740
        madd.d  rC10, rC10, rA1, rB0
 
1741
                                        ldc1    ra1, 408(pA1)
 
1742
        madd.d  rC20, rC20, rA2, rB0
 
1743
                                        ldc1    ra2, 408(pA2)
 
1744
        madd.d  rC30, rC30, rA3, rB0
 
1745
                                        ldc1    ra3, 408(pA3)
 
1746
        madd.d  rC01, rC01, rA0, rB1
 
1747
                                        ldc1    rb1, 408(pB1)
 
1748
        madd.d  rC11, rC11, rA1, rB1
 
1749
                                        ldc1    rb2, 408(pB2)
 
1750
        madd.d  rC21, rC21, rA2, rB1
 
1751
                                        ldc1    rb3, 408(pB3)
 
1752
        madd.d  rC31, rC31, rA3, rB1
 
1753
        madd.d  rC02, rC02, rA0, rB2
 
1754
        madd.d  rC12, rC12, rA1, rB2
 
1755
        madd.d  rC22, rC22, rA2, rB2
 
1756
        madd.d  rC32, rC32, rA3, rB2
 
1757
        madd.d  rC03, rC03, rA0, rB3
 
1758
        madd.d  rC13, rC13, rA1, rB3
 
1759
        madd.d  rC23, rC23, rA2, rB3
 
1760
        madd.d  rC33, rC33, rA3, rB3
 
1761
                                        ldc1    rB0, 416(pB0)
 
1762
        madd.d  rC00, rC00, ra0, rb0
 
1763
                                        ldc1    rA0, 416(pA0)
 
1764
        madd.d  rC10, rC10, ra1, rb0
 
1765
                                        ldc1    rA1, 416(pA1)
 
1766
        madd.d  rC20, rC20, ra2, rb0
 
1767
                                        ldc1    rA2, 416(pA2)
 
1768
        madd.d  rC30, rC30, ra3, rb0
 
1769
                                        ldc1    rA3, 416(pA3)
 
1770
        madd.d  rC01, rC01, ra0, rb1
 
1771
                                        ldc1    rB1, 416(pB1)
 
1772
        madd.d  rC11, rC11, ra1, rb1
 
1773
                                        ldc1    rB2, 416(pB2)
 
1774
        madd.d  rC21, rC21, ra2, rb1
 
1775
                                        ldc1    rB3, 416(pB3)
 
1776
        madd.d  rC31, rC31, ra3, rb1
 
1777
        madd.d  rC02, rC02, ra0, rb2
 
1778
        madd.d  rC12, rC12, ra1, rb2
 
1779
        madd.d  rC22, rC22, ra2, rb2
 
1780
        madd.d  rC32, rC32, ra3, rb2
 
1781
        madd.d  rC03, rC03, ra0, rb3
 
1782
        madd.d  rC13, rC13, ra1, rb3
 
1783
        madd.d  rC23, rC23, ra2, rb3
 
1784
        madd.d  rC33, rC33, ra3, rb3
 
1785
#endif
 
1786
#if KB > 54
 
1787
                                        ldc1    rb0, 424(pB0)
 
1788
        madd.d  rC00, rC00, rA0, rB0
 
1789
                                        ldc1    ra0, 424(pA0)
 
1790
        madd.d  rC10, rC10, rA1, rB0
 
1791
                                        ldc1    ra1, 424(pA1)
 
1792
        madd.d  rC20, rC20, rA2, rB0
 
1793
                                        ldc1    ra2, 424(pA2)
 
1794
        madd.d  rC30, rC30, rA3, rB0
 
1795
                                        ldc1    ra3, 424(pA3)
 
1796
        madd.d  rC01, rC01, rA0, rB1
 
1797
                                        ldc1    rb1, 424(pB1)
 
1798
        madd.d  rC11, rC11, rA1, rB1
 
1799
                                        ldc1    rb2, 424(pB2)
 
1800
        madd.d  rC21, rC21, rA2, rB1
 
1801
                                        ldc1    rb3, 424(pB3)
 
1802
        madd.d  rC31, rC31, rA3, rB1
 
1803
        madd.d  rC02, rC02, rA0, rB2
 
1804
        madd.d  rC12, rC12, rA1, rB2
 
1805
        madd.d  rC22, rC22, rA2, rB2
 
1806
        madd.d  rC32, rC32, rA3, rB2
 
1807
        madd.d  rC03, rC03, rA0, rB3
 
1808
        madd.d  rC13, rC13, rA1, rB3
 
1809
        madd.d  rC23, rC23, rA2, rB3
 
1810
        madd.d  rC33, rC33, rA3, rB3
 
1811
                                        ldc1    rB0, 432(pB0)
 
1812
        madd.d  rC00, rC00, ra0, rb0
 
1813
                                        ldc1    rA0, 432(pA0)
 
1814
        madd.d  rC10, rC10, ra1, rb0
 
1815
                                        ldc1    rA1, 432(pA1)
 
1816
        madd.d  rC20, rC20, ra2, rb0
 
1817
                                        ldc1    rA2, 432(pA2)
 
1818
        madd.d  rC30, rC30, ra3, rb0
 
1819
                                        ldc1    rA3, 432(pA3)
 
1820
        madd.d  rC01, rC01, ra0, rb1
 
1821
                                        ldc1    rB1, 432(pB1)
 
1822
        madd.d  rC11, rC11, ra1, rb1
 
1823
                                        ldc1    rB2, 432(pB2)
 
1824
        madd.d  rC21, rC21, ra2, rb1
 
1825
                                        ldc1    rB3, 432(pB3)
 
1826
        madd.d  rC31, rC31, ra3, rb1
 
1827
        madd.d  rC02, rC02, ra0, rb2
 
1828
        madd.d  rC12, rC12, ra1, rb2
 
1829
        madd.d  rC22, rC22, ra2, rb2
 
1830
        madd.d  rC32, rC32, ra3, rb2
 
1831
        madd.d  rC03, rC03, ra0, rb3
 
1832
        madd.d  rC13, rC13, ra1, rb3
 
1833
        madd.d  rC23, rC23, ra2, rb3
 
1834
        madd.d  rC33, rC33, ra3, rb3
 
1835
#endif
 
1836
#if KB > 56
 
1837
                                        ldc1    rb0, 440(pB0)
 
1838
        madd.d  rC00, rC00, rA0, rB0
 
1839
                                        ldc1    ra0, 440(pA0)
 
1840
        madd.d  rC10, rC10, rA1, rB0
 
1841
                                        ldc1    ra1, 440(pA1)
 
1842
        madd.d  rC20, rC20, rA2, rB0
 
1843
                                        ldc1    ra2, 440(pA2)
 
1844
        madd.d  rC30, rC30, rA3, rB0
 
1845
                                        ldc1    ra3, 440(pA3)
 
1846
        madd.d  rC01, rC01, rA0, rB1
 
1847
                                        ldc1    rb1, 440(pB1)
 
1848
        madd.d  rC11, rC11, rA1, rB1
 
1849
                                        ldc1    rb2, 440(pB2)
 
1850
        madd.d  rC21, rC21, rA2, rB1
 
1851
                                        ldc1    rb3, 440(pB3)
 
1852
        madd.d  rC31, rC31, rA3, rB1
 
1853
        madd.d  rC02, rC02, rA0, rB2
 
1854
        madd.d  rC12, rC12, rA1, rB2
 
1855
        madd.d  rC22, rC22, rA2, rB2
 
1856
        madd.d  rC32, rC32, rA3, rB2
 
1857
        madd.d  rC03, rC03, rA0, rB3
 
1858
        madd.d  rC13, rC13, rA1, rB3
 
1859
        madd.d  rC23, rC23, rA2, rB3
 
1860
        madd.d  rC33, rC33, rA3, rB3
 
1861
                                        ldc1    rB0, 448(pB0)
 
1862
        madd.d  rC00, rC00, ra0, rb0
 
1863
                                        ldc1    rA0, 448(pA0)
 
1864
        madd.d  rC10, rC10, ra1, rb0
 
1865
                                        ldc1    rA1, 448(pA1)
 
1866
        madd.d  rC20, rC20, ra2, rb0
 
1867
                                        ldc1    rA2, 448(pA2)
 
1868
        madd.d  rC30, rC30, ra3, rb0
 
1869
                                        ldc1    rA3, 448(pA3)
 
1870
        madd.d  rC01, rC01, ra0, rb1
 
1871
                                        ldc1    rB1, 448(pB1)
 
1872
        madd.d  rC11, rC11, ra1, rb1
 
1873
                                        ldc1    rB2, 448(pB2)
 
1874
        madd.d  rC21, rC21, ra2, rb1
 
1875
                                        ldc1    rB3, 448(pB3)
 
1876
        madd.d  rC31, rC31, ra3, rb1
 
1877
        madd.d  rC02, rC02, ra0, rb2
 
1878
        madd.d  rC12, rC12, ra1, rb2
 
1879
        madd.d  rC22, rC22, ra2, rb2
 
1880
        madd.d  rC32, rC32, ra3, rb2
 
1881
        madd.d  rC03, rC03, ra0, rb3
 
1882
        madd.d  rC13, rC13, ra1, rb3
 
1883
        madd.d  rC23, rC23, ra2, rb3
 
1884
        madd.d  rC33, rC33, ra3, rb3
 
1885
#endif
 
1886
#if KB > 58
 
1887
                                        ldc1    rb0, 456(pB0)
 
1888
        madd.d  rC00, rC00, rA0, rB0
 
1889
                                        ldc1    ra0, 456(pA0)
 
1890
        madd.d  rC10, rC10, rA1, rB0
 
1891
                                        ldc1    ra1, 456(pA1)
 
1892
        madd.d  rC20, rC20, rA2, rB0
 
1893
                                        ldc1    ra2, 456(pA2)
 
1894
        madd.d  rC30, rC30, rA3, rB0
 
1895
                                        ldc1    ra3, 456(pA3)
 
1896
        madd.d  rC01, rC01, rA0, rB1
 
1897
                                        ldc1    rb1, 456(pB1)
 
1898
        madd.d  rC11, rC11, rA1, rB1
 
1899
                                        ldc1    rb2, 456(pB2)
 
1900
        madd.d  rC21, rC21, rA2, rB1
 
1901
                                        ldc1    rb3, 456(pB3)
 
1902
        madd.d  rC31, rC31, rA3, rB1
 
1903
        madd.d  rC02, rC02, rA0, rB2
 
1904
        madd.d  rC12, rC12, rA1, rB2
 
1905
        madd.d  rC22, rC22, rA2, rB2
 
1906
        madd.d  rC32, rC32, rA3, rB2
 
1907
        madd.d  rC03, rC03, rA0, rB3
 
1908
        madd.d  rC13, rC13, rA1, rB3
 
1909
        madd.d  rC23, rC23, rA2, rB3
 
1910
        madd.d  rC33, rC33, rA3, rB3
 
1911
                                        ldc1    rB0, 464(pB0)
 
1912
        madd.d  rC00, rC00, ra0, rb0
 
1913
                                        ldc1    rA0, 464(pA0)
 
1914
        madd.d  rC10, rC10, ra1, rb0
 
1915
                                        ldc1    rA1, 464(pA1)
 
1916
        madd.d  rC20, rC20, ra2, rb0
 
1917
                                        ldc1    rA2, 464(pA2)
 
1918
        madd.d  rC30, rC30, ra3, rb0
 
1919
                                        ldc1    rA3, 464(pA3)
 
1920
        madd.d  rC01, rC01, ra0, rb1
 
1921
                                        ldc1    rB1, 464(pB1)
 
1922
        madd.d  rC11, rC11, ra1, rb1
 
1923
                                        ldc1    rB2, 464(pB2)
 
1924
        madd.d  rC21, rC21, ra2, rb1
 
1925
                                        ldc1    rB3, 464(pB3)
 
1926
        madd.d  rC31, rC31, ra3, rb1
 
1927
        madd.d  rC02, rC02, ra0, rb2
 
1928
        madd.d  rC12, rC12, ra1, rb2
 
1929
        madd.d  rC22, rC22, ra2, rb2
 
1930
        madd.d  rC32, rC32, ra3, rb2
 
1931
        madd.d  rC03, rC03, ra0, rb3
 
1932
        madd.d  rC13, rC13, ra1, rb3
 
1933
        madd.d  rC23, rC23, ra2, rb3
 
1934
        madd.d  rC33, rC33, ra3, rb3
 
1935
#endif
 
1936
#if KB > 60
 
1937
                                        ldc1    rb0, 472(pB0)
 
1938
        madd.d  rC00, rC00, rA0, rB0
 
1939
                                        ldc1    ra0, 472(pA0)
 
1940
        madd.d  rC10, rC10, rA1, rB0
 
1941
                                        ldc1    ra1, 472(pA1)
 
1942
        madd.d  rC20, rC20, rA2, rB0
 
1943
                                        ldc1    ra2, 472(pA2)
 
1944
        madd.d  rC30, rC30, rA3, rB0
 
1945
                                        ldc1    ra3, 472(pA3)
 
1946
        madd.d  rC01, rC01, rA0, rB1
 
1947
                                        ldc1    rb1, 472(pB1)
 
1948
        madd.d  rC11, rC11, rA1, rB1
 
1949
                                        ldc1    rb2, 472(pB2)
 
1950
        madd.d  rC21, rC21, rA2, rB1
 
1951
                                        ldc1    rb3, 472(pB3)
 
1952
        madd.d  rC31, rC31, rA3, rB1
 
1953
        madd.d  rC02, rC02, rA0, rB2
 
1954
        madd.d  rC12, rC12, rA1, rB2
 
1955
        madd.d  rC22, rC22, rA2, rB2
 
1956
        madd.d  rC32, rC32, rA3, rB2
 
1957
        madd.d  rC03, rC03, rA0, rB3
 
1958
        madd.d  rC13, rC13, rA1, rB3
 
1959
        madd.d  rC23, rC23, rA2, rB3
 
1960
        madd.d  rC33, rC33, rA3, rB3
 
1961
                                        ldc1    rB0, 480(pB0)
 
1962
        madd.d  rC00, rC00, ra0, rb0
 
1963
                                        ldc1    rA0, 480(pA0)
 
1964
        madd.d  rC10, rC10, ra1, rb0
 
1965
                                        ldc1    rA1, 480(pA1)
 
1966
        madd.d  rC20, rC20, ra2, rb0
 
1967
                                        ldc1    rA2, 480(pA2)
 
1968
        madd.d  rC30, rC30, ra3, rb0
 
1969
                                        ldc1    rA3, 480(pA3)
 
1970
        madd.d  rC01, rC01, ra0, rb1
 
1971
                                        ldc1    rB1, 480(pB1)
 
1972
        madd.d  rC11, rC11, ra1, rb1
 
1973
                                        ldc1    rB2, 480(pB2)
 
1974
        madd.d  rC21, rC21, ra2, rb1
 
1975
                                        ldc1    rB3, 480(pB3)
 
1976
        madd.d  rC31, rC31, ra3, rb1
 
1977
        madd.d  rC02, rC02, ra0, rb2
 
1978
        madd.d  rC12, rC12, ra1, rb2
 
1979
        madd.d  rC22, rC22, ra2, rb2
 
1980
        madd.d  rC32, rC32, ra3, rb2
 
1981
        madd.d  rC03, rC03, ra0, rb3
 
1982
        madd.d  rC13, rC13, ra1, rb3
 
1983
        madd.d  rC23, rC23, ra2, rb3
 
1984
        madd.d  rC33, rC33, ra3, rb3
 
1985
#endif
 
1986
#if KB > 62
 
1987
                                        ldc1    rb0, 488(pB0)
 
1988
        madd.d  rC00, rC00, rA0, rB0
 
1989
                                        ldc1    ra0, 488(pA0)
 
1990
        madd.d  rC10, rC10, rA1, rB0
 
1991
                                        ldc1    ra1, 488(pA1)
 
1992
        madd.d  rC20, rC20, rA2, rB0
 
1993
                                        ldc1    ra2, 488(pA2)
 
1994
        madd.d  rC30, rC30, rA3, rB0
 
1995
                                        ldc1    ra3, 488(pA3)
 
1996
        madd.d  rC01, rC01, rA0, rB1
 
1997
                                        ldc1    rb1, 488(pB1)
 
1998
        madd.d  rC11, rC11, rA1, rB1
 
1999
                                        ldc1    rb2, 488(pB2)
 
2000
        madd.d  rC21, rC21, rA2, rB1
 
2001
                                        ldc1    rb3, 488(pB3)
 
2002
        madd.d  rC31, rC31, rA3, rB1
 
2003
        madd.d  rC02, rC02, rA0, rB2
 
2004
        madd.d  rC12, rC12, rA1, rB2
 
2005
        madd.d  rC22, rC22, rA2, rB2
 
2006
        madd.d  rC32, rC32, rA3, rB2
 
2007
        madd.d  rC03, rC03, rA0, rB3
 
2008
        madd.d  rC13, rC13, rA1, rB3
 
2009
        madd.d  rC23, rC23, rA2, rB3
 
2010
        madd.d  rC33, rC33, rA3, rB3
 
2011
                                        ldc1    rB0, 496(pB0)
 
2012
        madd.d  rC00, rC00, ra0, rb0
 
2013
                                        ldc1    rA0, 496(pA0)
 
2014
        madd.d  rC10, rC10, ra1, rb0
 
2015
                                        ldc1    rA1, 496(pA1)
 
2016
        madd.d  rC20, rC20, ra2, rb0
 
2017
                                        ldc1    rA2, 496(pA2)
 
2018
        madd.d  rC30, rC30, ra3, rb0
 
2019
                                        ldc1    rA3, 496(pA3)
 
2020
        madd.d  rC01, rC01, ra0, rb1
 
2021
                                        ldc1    rB1, 496(pB1)
 
2022
        madd.d  rC11, rC11, ra1, rb1
 
2023
                                        ldc1    rB2, 496(pB2)
 
2024
        madd.d  rC21, rC21, ra2, rb1
 
2025
                                        ldc1    rB3, 496(pB3)
 
2026
        madd.d  rC31, rC31, ra3, rb1
 
2027
        madd.d  rC02, rC02, ra0, rb2
 
2028
        madd.d  rC12, rC12, ra1, rb2
 
2029
        madd.d  rC22, rC22, ra2, rb2
 
2030
        madd.d  rC32, rC32, ra3, rb2
 
2031
        madd.d  rC03, rC03, ra0, rb3
 
2032
        madd.d  rC13, rC13, ra1, rb3
 
2033
        madd.d  rC23, rC23, ra2, rb3
 
2034
        madd.d  rC33, rC33, ra3, rb3
 
2035
#endif
 
2036
#if KB > 64
 
2037
                                        ldc1    rb0, 504(pB0)
 
2038
        madd.d  rC00, rC00, rA0, rB0
 
2039
                                        ldc1    ra0, 504(pA0)
 
2040
        madd.d  rC10, rC10, rA1, rB0
 
2041
                                        ldc1    ra1, 504(pA1)
 
2042
        madd.d  rC20, rC20, rA2, rB0
 
2043
                                        ldc1    ra2, 504(pA2)
 
2044
        madd.d  rC30, rC30, rA3, rB0
 
2045
                                        ldc1    ra3, 504(pA3)
 
2046
        madd.d  rC01, rC01, rA0, rB1
 
2047
                                        ldc1    rb1, 504(pB1)
 
2048
        madd.d  rC11, rC11, rA1, rB1
 
2049
                                        ldc1    rb2, 504(pB2)
 
2050
        madd.d  rC21, rC21, rA2, rB1
 
2051
                                        ldc1    rb3, 504(pB3)
 
2052
        madd.d  rC31, rC31, rA3, rB1
 
2053
        madd.d  rC02, rC02, rA0, rB2
 
2054
        madd.d  rC12, rC12, rA1, rB2
 
2055
        madd.d  rC22, rC22, rA2, rB2
 
2056
        madd.d  rC32, rC32, rA3, rB2
 
2057
        madd.d  rC03, rC03, rA0, rB3
 
2058
        madd.d  rC13, rC13, rA1, rB3
 
2059
        madd.d  rC23, rC23, rA2, rB3
 
2060
        madd.d  rC33, rC33, rA3, rB3
 
2061
                                        ldc1    rB0, 512(pB0)
 
2062
        madd.d  rC00, rC00, ra0, rb0
 
2063
                                        ldc1    rA0, 512(pA0)
 
2064
        madd.d  rC10, rC10, ra1, rb0
 
2065
                                        ldc1    rA1, 512(pA1)
 
2066
        madd.d  rC20, rC20, ra2, rb0
 
2067
                                        ldc1    rA2, 512(pA2)
 
2068
        madd.d  rC30, rC30, ra3, rb0
 
2069
                                        ldc1    rA3, 512(pA3)
 
2070
        madd.d  rC01, rC01, ra0, rb1
 
2071
                                        ldc1    rB1, 512(pB1)
 
2072
        madd.d  rC11, rC11, ra1, rb1
 
2073
                                        ldc1    rB2, 512(pB2)
 
2074
        madd.d  rC21, rC21, ra2, rb1
 
2075
                                        ldc1    rB3, 512(pB3)
 
2076
        madd.d  rC31, rC31, ra3, rb1
 
2077
        madd.d  rC02, rC02, ra0, rb2
 
2078
        madd.d  rC12, rC12, ra1, rb2
 
2079
        madd.d  rC22, rC22, ra2, rb2
 
2080
        madd.d  rC32, rC32, ra3, rb2
 
2081
        madd.d  rC03, rC03, ra0, rb3
 
2082
        madd.d  rC13, rC13, ra1, rb3
 
2083
        madd.d  rC23, rC23, ra2, rb3
 
2084
        madd.d  rC33, rC33, ra3, rb3
 
2085
#endif
 
2086
#if KB > 66
 
2087
                                        ldc1    rb0, 520(pB0)
 
2088
        madd.d  rC00, rC00, rA0, rB0
 
2089
                                        ldc1    ra0, 520(pA0)
 
2090
        madd.d  rC10, rC10, rA1, rB0
 
2091
                                        ldc1    ra1, 520(pA1)
 
2092
        madd.d  rC20, rC20, rA2, rB0
 
2093
                                        ldc1    ra2, 520(pA2)
 
2094
        madd.d  rC30, rC30, rA3, rB0
 
2095
                                        ldc1    ra3, 520(pA3)
 
2096
        madd.d  rC01, rC01, rA0, rB1
 
2097
                                        ldc1    rb1, 520(pB1)
 
2098
        madd.d  rC11, rC11, rA1, rB1
 
2099
                                        ldc1    rb2, 520(pB2)
 
2100
        madd.d  rC21, rC21, rA2, rB1
 
2101
                                        ldc1    rb3, 520(pB3)
 
2102
        madd.d  rC31, rC31, rA3, rB1
 
2103
        madd.d  rC02, rC02, rA0, rB2
 
2104
        madd.d  rC12, rC12, rA1, rB2
 
2105
        madd.d  rC22, rC22, rA2, rB2
 
2106
        madd.d  rC32, rC32, rA3, rB2
 
2107
        madd.d  rC03, rC03, rA0, rB3
 
2108
        madd.d  rC13, rC13, rA1, rB3
 
2109
        madd.d  rC23, rC23, rA2, rB3
 
2110
        madd.d  rC33, rC33, rA3, rB3
 
2111
                                        ldc1    rB0, 528(pB0)
 
2112
        madd.d  rC00, rC00, ra0, rb0
 
2113
                                        ldc1    rA0, 528(pA0)
 
2114
        madd.d  rC10, rC10, ra1, rb0
 
2115
                                        ldc1    rA1, 528(pA1)
 
2116
        madd.d  rC20, rC20, ra2, rb0
 
2117
                                        ldc1    rA2, 528(pA2)
 
2118
        madd.d  rC30, rC30, ra3, rb0
 
2119
                                        ldc1    rA3, 528(pA3)
 
2120
        madd.d  rC01, rC01, ra0, rb1
 
2121
                                        ldc1    rB1, 528(pB1)
 
2122
        madd.d  rC11, rC11, ra1, rb1
 
2123
                                        ldc1    rB2, 528(pB2)
 
2124
        madd.d  rC21, rC21, ra2, rb1
 
2125
                                        ldc1    rB3, 528(pB3)
 
2126
        madd.d  rC31, rC31, ra3, rb1
 
2127
        madd.d  rC02, rC02, ra0, rb2
 
2128
        madd.d  rC12, rC12, ra1, rb2
 
2129
        madd.d  rC22, rC22, ra2, rb2
 
2130
        madd.d  rC32, rC32, ra3, rb2
 
2131
        madd.d  rC03, rC03, ra0, rb3
 
2132
        madd.d  rC13, rC13, ra1, rb3
 
2133
        madd.d  rC23, rC23, ra2, rb3
 
2134
        madd.d  rC33, rC33, ra3, rb3
 
2135
#endif
 
2136
#if KB > 68
 
2137
                                        ldc1    rb0, 536(pB0)
 
2138
        madd.d  rC00, rC00, rA0, rB0
 
2139
                                        ldc1    ra0, 536(pA0)
 
2140
        madd.d  rC10, rC10, rA1, rB0
 
2141
                                        ldc1    ra1, 536(pA1)
 
2142
        madd.d  rC20, rC20, rA2, rB0
 
2143
                                        ldc1    ra2, 536(pA2)
 
2144
        madd.d  rC30, rC30, rA3, rB0
 
2145
                                        ldc1    ra3, 536(pA3)
 
2146
        madd.d  rC01, rC01, rA0, rB1
 
2147
                                        ldc1    rb1, 536(pB1)
 
2148
        madd.d  rC11, rC11, rA1, rB1
 
2149
                                        ldc1    rb2, 536(pB2)
 
2150
        madd.d  rC21, rC21, rA2, rB1
 
2151
                                        ldc1    rb3, 536(pB3)
 
2152
        madd.d  rC31, rC31, rA3, rB1
 
2153
        madd.d  rC02, rC02, rA0, rB2
 
2154
        madd.d  rC12, rC12, rA1, rB2
 
2155
        madd.d  rC22, rC22, rA2, rB2
 
2156
        madd.d  rC32, rC32, rA3, rB2
 
2157
        madd.d  rC03, rC03, rA0, rB3
 
2158
        madd.d  rC13, rC13, rA1, rB3
 
2159
        madd.d  rC23, rC23, rA2, rB3
 
2160
        madd.d  rC33, rC33, rA3, rB3
 
2161
                                        ldc1    rB0, 544(pB0)
 
2162
        madd.d  rC00, rC00, ra0, rb0
 
2163
                                        ldc1    rA0, 544(pA0)
 
2164
        madd.d  rC10, rC10, ra1, rb0
 
2165
                                        ldc1    rA1, 544(pA1)
 
2166
        madd.d  rC20, rC20, ra2, rb0
 
2167
                                        ldc1    rA2, 544(pA2)
 
2168
        madd.d  rC30, rC30, ra3, rb0
 
2169
                                        ldc1    rA3, 544(pA3)
 
2170
        madd.d  rC01, rC01, ra0, rb1
 
2171
                                        ldc1    rB1, 544(pB1)
 
2172
        madd.d  rC11, rC11, ra1, rb1
 
2173
                                        ldc1    rB2, 544(pB2)
 
2174
        madd.d  rC21, rC21, ra2, rb1
 
2175
                                        ldc1    rB3, 544(pB3)
 
2176
        madd.d  rC31, rC31, ra3, rb1
 
2177
        madd.d  rC02, rC02, ra0, rb2
 
2178
        madd.d  rC12, rC12, ra1, rb2
 
2179
        madd.d  rC22, rC22, ra2, rb2
 
2180
        madd.d  rC32, rC32, ra3, rb2
 
2181
        madd.d  rC03, rC03, ra0, rb3
 
2182
        madd.d  rC13, rC13, ra1, rb3
 
2183
        madd.d  rC23, rC23, ra2, rb3
 
2184
        madd.d  rC33, rC33, ra3, rb3
 
2185
#endif
 
2186
#if KB > 70
 
2187
                                        ldc1    rb0, 552(pB0)
 
2188
        madd.d  rC00, rC00, rA0, rB0
 
2189
                                        ldc1    ra0, 552(pA0)
 
2190
        madd.d  rC10, rC10, rA1, rB0
 
2191
                                        ldc1    ra1, 552(pA1)
 
2192
        madd.d  rC20, rC20, rA2, rB0
 
2193
                                        ldc1    ra2, 552(pA2)
 
2194
        madd.d  rC30, rC30, rA3, rB0
 
2195
                                        ldc1    ra3, 552(pA3)
 
2196
        madd.d  rC01, rC01, rA0, rB1
 
2197
                                        ldc1    rb1, 552(pB1)
 
2198
        madd.d  rC11, rC11, rA1, rB1
 
2199
                                        ldc1    rb2, 552(pB2)
 
2200
        madd.d  rC21, rC21, rA2, rB1
 
2201
                                        ldc1    rb3, 552(pB3)
 
2202
        madd.d  rC31, rC31, rA3, rB1
 
2203
        madd.d  rC02, rC02, rA0, rB2
 
2204
        madd.d  rC12, rC12, rA1, rB2
 
2205
        madd.d  rC22, rC22, rA2, rB2
 
2206
        madd.d  rC32, rC32, rA3, rB2
 
2207
        madd.d  rC03, rC03, rA0, rB3
 
2208
        madd.d  rC13, rC13, rA1, rB3
 
2209
        madd.d  rC23, rC23, rA2, rB3
 
2210
        madd.d  rC33, rC33, rA3, rB3
 
2211
                                        ldc1    rB0, 560(pB0)
 
2212
        madd.d  rC00, rC00, ra0, rb0
 
2213
                                        ldc1    rA0, 560(pA0)
 
2214
        madd.d  rC10, rC10, ra1, rb0
 
2215
                                        ldc1    rA1, 560(pA1)
 
2216
        madd.d  rC20, rC20, ra2, rb0
 
2217
                                        ldc1    rA2, 560(pA2)
 
2218
        madd.d  rC30, rC30, ra3, rb0
 
2219
                                        ldc1    rA3, 560(pA3)
 
2220
        madd.d  rC01, rC01, ra0, rb1
 
2221
                                        ldc1    rB1, 560(pB1)
 
2222
        madd.d  rC11, rC11, ra1, rb1
 
2223
                                        ldc1    rB2, 560(pB2)
 
2224
        madd.d  rC21, rC21, ra2, rb1
 
2225
                                        ldc1    rB3, 560(pB3)
 
2226
        madd.d  rC31, rC31, ra3, rb1
 
2227
        madd.d  rC02, rC02, ra0, rb2
 
2228
        madd.d  rC12, rC12, ra1, rb2
 
2229
        madd.d  rC22, rC22, ra2, rb2
 
2230
        madd.d  rC32, rC32, ra3, rb2
 
2231
        madd.d  rC03, rC03, ra0, rb3
 
2232
        madd.d  rC13, rC13, ra1, rb3
 
2233
        madd.d  rC23, rC23, ra2, rb3
 
2234
        madd.d  rC33, rC33, ra3, rb3
 
2235
#endif
 
2236
#if KB > 72
 
2237
                                        ldc1    rb0, 568(pB0)
 
2238
        madd.d  rC00, rC00, rA0, rB0
 
2239
                                        ldc1    ra0, 568(pA0)
 
2240
        madd.d  rC10, rC10, rA1, rB0
 
2241
                                        ldc1    ra1, 568(pA1)
 
2242
        madd.d  rC20, rC20, rA2, rB0
 
2243
                                        ldc1    ra2, 568(pA2)
 
2244
        madd.d  rC30, rC30, rA3, rB0
 
2245
                                        ldc1    ra3, 568(pA3)
 
2246
        madd.d  rC01, rC01, rA0, rB1
 
2247
                                        ldc1    rb1, 568(pB1)
 
2248
        madd.d  rC11, rC11, rA1, rB1
 
2249
                                        ldc1    rb2, 568(pB2)
 
2250
        madd.d  rC21, rC21, rA2, rB1
 
2251
                                        ldc1    rb3, 568(pB3)
 
2252
        madd.d  rC31, rC31, rA3, rB1
 
2253
        madd.d  rC02, rC02, rA0, rB2
 
2254
        madd.d  rC12, rC12, rA1, rB2
 
2255
        madd.d  rC22, rC22, rA2, rB2
 
2256
        madd.d  rC32, rC32, rA3, rB2
 
2257
        madd.d  rC03, rC03, rA0, rB3
 
2258
        madd.d  rC13, rC13, rA1, rB3
 
2259
        madd.d  rC23, rC23, rA2, rB3
 
2260
        madd.d  rC33, rC33, rA3, rB3
 
2261
                                        ldc1    rB0, 576(pB0)
 
2262
        madd.d  rC00, rC00, ra0, rb0
 
2263
                                        ldc1    rA0, 576(pA0)
 
2264
        madd.d  rC10, rC10, ra1, rb0
 
2265
                                        ldc1    rA1, 576(pA1)
 
2266
        madd.d  rC20, rC20, ra2, rb0
 
2267
                                        ldc1    rA2, 576(pA2)
 
2268
        madd.d  rC30, rC30, ra3, rb0
 
2269
                                        ldc1    rA3, 576(pA3)
 
2270
        madd.d  rC01, rC01, ra0, rb1
 
2271
                                        ldc1    rB1, 576(pB1)
 
2272
        madd.d  rC11, rC11, ra1, rb1
 
2273
                                        ldc1    rB2, 576(pB2)
 
2274
        madd.d  rC21, rC21, ra2, rb1
 
2275
                                        ldc1    rB3, 576(pB3)
 
2276
        madd.d  rC31, rC31, ra3, rb1
 
2277
        madd.d  rC02, rC02, ra0, rb2
 
2278
        madd.d  rC12, rC12, ra1, rb2
 
2279
        madd.d  rC22, rC22, ra2, rb2
 
2280
        madd.d  rC32, rC32, ra3, rb2
 
2281
        madd.d  rC03, rC03, ra0, rb3
 
2282
        madd.d  rC13, rC13, ra1, rb3
 
2283
        madd.d  rC23, rC23, ra2, rb3
 
2284
        madd.d  rC33, rC33, ra3, rb3
 
2285
#endif
 
2286
#if KB > 74
 
2287
                                        ldc1    rb0, 584(pB0)
 
2288
        madd.d  rC00, rC00, rA0, rB0
 
2289
                                        ldc1    ra0, 584(pA0)
 
2290
        madd.d  rC10, rC10, rA1, rB0
 
2291
                                        ldc1    ra1, 584(pA1)
 
2292
        madd.d  rC20, rC20, rA2, rB0
 
2293
                                        ldc1    ra2, 584(pA2)
 
2294
        madd.d  rC30, rC30, rA3, rB0
 
2295
                                        ldc1    ra3, 584(pA3)
 
2296
        madd.d  rC01, rC01, rA0, rB1
 
2297
                                        ldc1    rb1, 584(pB1)
 
2298
        madd.d  rC11, rC11, rA1, rB1
 
2299
                                        ldc1    rb2, 584(pB2)
 
2300
        madd.d  rC21, rC21, rA2, rB1
 
2301
                                        ldc1    rb3, 584(pB3)
 
2302
        madd.d  rC31, rC31, rA3, rB1
 
2303
        madd.d  rC02, rC02, rA0, rB2
 
2304
        madd.d  rC12, rC12, rA1, rB2
 
2305
        madd.d  rC22, rC22, rA2, rB2
 
2306
        madd.d  rC32, rC32, rA3, rB2
 
2307
        madd.d  rC03, rC03, rA0, rB3
 
2308
        madd.d  rC13, rC13, rA1, rB3
 
2309
        madd.d  rC23, rC23, rA2, rB3
 
2310
        madd.d  rC33, rC33, rA3, rB3
 
2311
                                        ldc1    rB0, 592(pB0)
 
2312
        madd.d  rC00, rC00, ra0, rb0
 
2313
                                        ldc1    rA0, 592(pA0)
 
2314
        madd.d  rC10, rC10, ra1, rb0
 
2315
                                        ldc1    rA1, 592(pA1)
 
2316
        madd.d  rC20, rC20, ra2, rb0
 
2317
                                        ldc1    rA2, 592(pA2)
 
2318
        madd.d  rC30, rC30, ra3, rb0
 
2319
                                        ldc1    rA3, 592(pA3)
 
2320
        madd.d  rC01, rC01, ra0, rb1
 
2321
                                        ldc1    rB1, 592(pB1)
 
2322
        madd.d  rC11, rC11, ra1, rb1
 
2323
                                        ldc1    rB2, 592(pB2)
 
2324
        madd.d  rC21, rC21, ra2, rb1
 
2325
                                        ldc1    rB3, 592(pB3)
 
2326
        madd.d  rC31, rC31, ra3, rb1
 
2327
        madd.d  rC02, rC02, ra0, rb2
 
2328
        madd.d  rC12, rC12, ra1, rb2
 
2329
        madd.d  rC22, rC22, ra2, rb2
 
2330
        madd.d  rC32, rC32, ra3, rb2
 
2331
        madd.d  rC03, rC03, ra0, rb3
 
2332
        madd.d  rC13, rC13, ra1, rb3
 
2333
        madd.d  rC23, rC23, ra2, rb3
 
2334
        madd.d  rC33, rC33, ra3, rb3
 
2335
#endif
 
2336
#if KB > 76
 
2337
                                        ldc1    rb0, 600(pB0)
 
2338
        madd.d  rC00, rC00, rA0, rB0
 
2339
                                        ldc1    ra0, 600(pA0)
 
2340
        madd.d  rC10, rC10, rA1, rB0
 
2341
                                        ldc1    ra1, 600(pA1)
 
2342
        madd.d  rC20, rC20, rA2, rB0
 
2343
                                        ldc1    ra2, 600(pA2)
 
2344
        madd.d  rC30, rC30, rA3, rB0
 
2345
                                        ldc1    ra3, 600(pA3)
 
2346
        madd.d  rC01, rC01, rA0, rB1
 
2347
                                        ldc1    rb1, 600(pB1)
 
2348
        madd.d  rC11, rC11, rA1, rB1
 
2349
                                        ldc1    rb2, 600(pB2)
 
2350
        madd.d  rC21, rC21, rA2, rB1
 
2351
                                        ldc1    rb3, 600(pB3)
 
2352
        madd.d  rC31, rC31, rA3, rB1
 
2353
        madd.d  rC02, rC02, rA0, rB2
 
2354
        madd.d  rC12, rC12, rA1, rB2
 
2355
        madd.d  rC22, rC22, rA2, rB2
 
2356
        madd.d  rC32, rC32, rA3, rB2
 
2357
        madd.d  rC03, rC03, rA0, rB3
 
2358
        madd.d  rC13, rC13, rA1, rB3
 
2359
        madd.d  rC23, rC23, rA2, rB3
 
2360
        madd.d  rC33, rC33, rA3, rB3
 
2361
                                        ldc1    rB0, 608(pB0)
 
2362
        madd.d  rC00, rC00, ra0, rb0
 
2363
                                        ldc1    rA0, 608(pA0)
 
2364
        madd.d  rC10, rC10, ra1, rb0
 
2365
                                        ldc1    rA1, 608(pA1)
 
2366
        madd.d  rC20, rC20, ra2, rb0
 
2367
                                        ldc1    rA2, 608(pA2)
 
2368
        madd.d  rC30, rC30, ra3, rb0
 
2369
                                        ldc1    rA3, 608(pA3)
 
2370
        madd.d  rC01, rC01, ra0, rb1
 
2371
                                        ldc1    rB1, 608(pB1)
 
2372
        madd.d  rC11, rC11, ra1, rb1
 
2373
                                        ldc1    rB2, 608(pB2)
 
2374
        madd.d  rC21, rC21, ra2, rb1
 
2375
                                        ldc1    rB3, 608(pB3)
 
2376
        madd.d  rC31, rC31, ra3, rb1
 
2377
        madd.d  rC02, rC02, ra0, rb2
 
2378
        madd.d  rC12, rC12, ra1, rb2
 
2379
        madd.d  rC22, rC22, ra2, rb2
 
2380
        madd.d  rC32, rC32, ra3, rb2
 
2381
        madd.d  rC03, rC03, ra0, rb3
 
2382
        madd.d  rC13, rC13, ra1, rb3
 
2383
        madd.d  rC23, rC23, ra2, rb3
 
2384
        madd.d  rC33, rC33, ra3, rb3
 
2385
#endif
 
2386
#if KB > 78
 
2387
                                        ldc1    rb0, 616(pB0)
 
2388
        madd.d  rC00, rC00, rA0, rB0
 
2389
                                        ldc1    ra0, 616(pA0)
 
2390
        madd.d  rC10, rC10, rA1, rB0
 
2391
                                        ldc1    ra1, 616(pA1)
 
2392
        madd.d  rC20, rC20, rA2, rB0
 
2393
                                        ldc1    ra2, 616(pA2)
 
2394
        madd.d  rC30, rC30, rA3, rB0
 
2395
                                        ldc1    ra3, 616(pA3)
 
2396
        madd.d  rC01, rC01, rA0, rB1
 
2397
                                        ldc1    rb1, 616(pB1)
 
2398
        madd.d  rC11, rC11, rA1, rB1
 
2399
                                        ldc1    rb2, 616(pB2)
 
2400
        madd.d  rC21, rC21, rA2, rB1
 
2401
                                        ldc1    rb3, 616(pB3)
 
2402
        madd.d  rC31, rC31, rA3, rB1
 
2403
        madd.d  rC02, rC02, rA0, rB2
 
2404
        madd.d  rC12, rC12, rA1, rB2
 
2405
        madd.d  rC22, rC22, rA2, rB2
 
2406
        madd.d  rC32, rC32, rA3, rB2
 
2407
        madd.d  rC03, rC03, rA0, rB3
 
2408
        madd.d  rC13, rC13, rA1, rB3
 
2409
        madd.d  rC23, rC23, rA2, rB3
 
2410
        madd.d  rC33, rC33, rA3, rB3
 
2411
                                        ldc1    rB0, 624(pB0)
 
2412
        madd.d  rC00, rC00, ra0, rb0
 
2413
                                        ldc1    rA0, 624(pA0)
 
2414
        madd.d  rC10, rC10, ra1, rb0
 
2415
                                        ldc1    rA1, 624(pA1)
 
2416
        madd.d  rC20, rC20, ra2, rb0
 
2417
                                        ldc1    rA2, 624(pA2)
 
2418
        madd.d  rC30, rC30, ra3, rb0
 
2419
                                        ldc1    rA3, 624(pA3)
 
2420
        madd.d  rC01, rC01, ra0, rb1
 
2421
                                        ldc1    rB1, 624(pB1)
 
2422
        madd.d  rC11, rC11, ra1, rb1
 
2423
                                        ldc1    rB2, 624(pB2)
 
2424
        madd.d  rC21, rC21, ra2, rb1
 
2425
                                        ldc1    rB3, 624(pB3)
 
2426
        madd.d  rC31, rC31, ra3, rb1
 
2427
        madd.d  rC02, rC02, ra0, rb2
 
2428
        madd.d  rC12, rC12, ra1, rb2
 
2429
        madd.d  rC22, rC22, ra2, rb2
 
2430
        madd.d  rC32, rC32, ra3, rb2
 
2431
        madd.d  rC03, rC03, ra0, rb3
 
2432
        madd.d  rC13, rC13, ra1, rb3
 
2433
        madd.d  rC23, rC23, ra2, rb3
 
2434
        madd.d  rC33, rC33, ra3, rb3
 
2435
#endif
 
2436
#if KB > 80
 
2437
                                        ldc1    rb0, 632(pB0)
 
2438
        madd.d  rC00, rC00, rA0, rB0
 
2439
                                        ldc1    ra0, 632(pA0)
 
2440
        madd.d  rC10, rC10, rA1, rB0
 
2441
                                        ldc1    ra1, 632(pA1)
 
2442
        madd.d  rC20, rC20, rA2, rB0
 
2443
                                        ldc1    ra2, 632(pA2)
 
2444
        madd.d  rC30, rC30, rA3, rB0
 
2445
                                        ldc1    ra3, 632(pA3)
 
2446
        madd.d  rC01, rC01, rA0, rB1
 
2447
                                        ldc1    rb1, 632(pB1)
 
2448
        madd.d  rC11, rC11, rA1, rB1
 
2449
                                        ldc1    rb2, 632(pB2)
 
2450
        madd.d  rC21, rC21, rA2, rB1
 
2451
                                        ldc1    rb3, 632(pB3)
 
2452
        madd.d  rC31, rC31, rA3, rB1
 
2453
        madd.d  rC02, rC02, rA0, rB2
 
2454
        madd.d  rC12, rC12, rA1, rB2
 
2455
        madd.d  rC22, rC22, rA2, rB2
 
2456
        madd.d  rC32, rC32, rA3, rB2
 
2457
        madd.d  rC03, rC03, rA0, rB3
 
2458
        madd.d  rC13, rC13, rA1, rB3
 
2459
        madd.d  rC23, rC23, rA2, rB3
 
2460
        madd.d  rC33, rC33, rA3, rB3
 
2461
                                        ldc1    rB0, 640(pB0)
 
2462
        madd.d  rC00, rC00, ra0, rb0
 
2463
                                        ldc1    rA0, 640(pA0)
 
2464
        madd.d  rC10, rC10, ra1, rb0
 
2465
                                        ldc1    rA1, 640(pA1)
 
2466
        madd.d  rC20, rC20, ra2, rb0
 
2467
                                        ldc1    rA2, 640(pA2)
 
2468
        madd.d  rC30, rC30, ra3, rb0
 
2469
                                        ldc1    rA3, 640(pA3)
 
2470
        madd.d  rC01, rC01, ra0, rb1
 
2471
                                        ldc1    rB1, 640(pB1)
 
2472
        madd.d  rC11, rC11, ra1, rb1
 
2473
                                        ldc1    rB2, 640(pB2)
 
2474
        madd.d  rC21, rC21, ra2, rb1
 
2475
                                        ldc1    rB3, 640(pB3)
 
2476
        madd.d  rC31, rC31, ra3, rb1
 
2477
        madd.d  rC02, rC02, ra0, rb2
 
2478
        madd.d  rC12, rC12, ra1, rb2
 
2479
        madd.d  rC22, rC22, ra2, rb2
 
2480
        madd.d  rC32, rC32, ra3, rb2
 
2481
        madd.d  rC03, rC03, ra0, rb3
 
2482
        madd.d  rC13, rC13, ra1, rb3
 
2483
        madd.d  rC23, rC23, ra2, rb3
 
2484
        madd.d  rC33, rC33, ra3, rb3
 
2485
#endif
 
2486
/*       daddiu  K, K, 8
 
2487
         bne K, K0, KLOOP
 
2488
         madd.d  rC33, rC33, ra3, rb3    // in delay slot!
 
2489
*/
 
2490
/*
 
2491
 *      Drain ld/use pipe
 
2492
 */
 
2493
/*      move    K, K0 */
 
2494
                                        ldc1    rb0, KB*8-8(pB0)
 
2495
        madd.d  rC00, rC00, rA0, rB0
 
2496
                                        ldc1    ra0, KB*8-8(pA0)
 
2497
        madd.d  rC10, rC10, rA1, rB0
 
2498
                                        ldc1    ra1, KB*8-8(pA1)
 
2499
        madd.d  rC20, rC20, rA2, rB0
 
2500
                                        ldc1    ra2, KB*8-8(pA2)
 
2501
        madd.d  rC30, rC30, rA3, rB0
 
2502
                                        ldc1    ra3, KB*8-8(pA3)
 
2503
        madd.d  rC01, rC01, rA0, rB1
 
2504
                                        ldc1    rb1, KB*8-8(pB1)
 
2505
        madd.d  rC11, rC11, rA1, rB1
 
2506
                                        ldc1    rb2, KB*8-8(pB2)
 
2507
        madd.d  rC21, rC21, rA2, rB1
 
2508
                                        ldc1    rb3, KB*8-8(pB3)
 
2509
        madd.d  rC31, rC31, rA3, rB1
 
2510
                                        daddu   pA0, pA0, incAm
 
2511
        madd.d  rC02, rC02, rA0, rB2
 
2512
                                        daddu   pA1, pA1, incAm
 
2513
        madd.d  rC12, rC12, rA1, rB2
 
2514
                                        daddu   pA2, pA2, incAm
 
2515
        madd.d  rC22, rC22, rA2, rB2
 
2516
                                        daddu   pA3, pA3, incAm
 
2517
        madd.d  rC32, rC32, rA3, rB2
 
2518
                                        daddiu  pC0, pC0, CMUL(32)
 
2519
        madd.d  rC03, rC03, rA0, rB3
 
2520
                                        daddiu  pC1, pC1, CMUL(32)
 
2521
        madd.d  rC13, rC13, rA1, rB3
 
2522
                                        daddiu  pC2, pC2, CMUL(32)
 
2523
        madd.d  rC23, rC23, rA2, rB3
 
2524
                                        daddiu  pC3, pC3, CMUL(32)
 
2525
        madd.d  rC33, rC33, rA3, rB3
 
2526
 
 
2527
        madd.d  rC00, rC00, ra0, rb0
 
2528
        madd.d  rC10, rC10, ra1, rb0
 
2529
        madd.d  rC20, rC20, ra2, rb0
 
2530
        madd.d  rC30, rC30, ra3, rb0
 
2531
        madd.d  rC01, rC01, ra0, rb1
 
2532
                                        sdc1    rC00, -CMUL(32)(pC0)
 
2533
        madd.d  rC11, rC11, ra1, rb1
 
2534
                                        sdc1    rC10, -CMUL(24)(pC0)
 
2535
        madd.d  rC21, rC21, ra2, rb1
 
2536
                                        sdc1    rC20, -CMUL(16)(pC0)
 
2537
        madd.d  rC31, rC31, ra3, rb1
 
2538
                                        sdc1    rC30, -CMUL(8)(pC0)
 
2539
        madd.d  rC02, rC02, ra0, rb2
 
2540
                                        sdc1    rC01, -CMUL(32)(pC1)
 
2541
        madd.d  rC12, rC12, ra1, rb2
 
2542
                                        sdc1    rC11, -CMUL(24)(pC1)
 
2543
        madd.d  rC22, rC22, ra2, rb2
 
2544
                                        sdc1    rC21, -CMUL(16)(pC1)
 
2545
        madd.d  rC32, rC32, ra3, rb2
 
2546
                                        sdc1    rC31, -CMUL(8)(pC1)
 
2547
        madd.d  rC03, rC03, ra0, rb3
 
2548
                                        sdc1    rC02, -CMUL(32)(pC2)
 
2549
        madd.d  rC13, rC13, ra1, rb3
 
2550
                                        sdc1    rC12, -CMUL(24)(pC2)
 
2551
        madd.d  rC23, rC23, ra2, rb3
 
2552
                                        sdc1    rC22, -CMUL(16)(pC2)
 
2553
        madd.d  rC33, rC33, ra3, rb3
 
2554
                                        sdc1    rC32, -CMUL(8)(pC2)
 
2555
        sdc1    rC03, -CMUL(32)(pC3)
 
2556
        sdc1    rC13, -CMUL(24)(pC3)
 
2557
        sdc1    rC23, -CMUL(16)(pC3)
 
2558
        bne pA0, stAm, MLOOP
 
2559
        sdc1    rC33, -CMUL(8)(pC3)
 
2560
 
 
2561
        dsubu   pA0, pA0, incAn
 
2562
        dsubu   pA1, pA1, incAn
 
2563
        dsubu   pA2, pA2, incAn
 
2564
        dsubu   pA3, pA3, incAn
 
2565
        daddu   pC0, pC0, incCn
 
2566
        daddu   pC1, pC1, incCn
 
2567
        daddu   pC2, pC2, incCn
 
2568
        daddu   pC3, pC3, incCn
 
2569
        daddu   pB0, pB0, incBn
 
2570
        daddu   pB1, pB1, incBn
 
2571
        daddu   pB2, pB2, incBn
 
2572
        bne pB0, stBn, NLOOP
 
2573
        daddu   pB3, pB3, incBn         /* delay slot! */
 
2574
DONE:
 
2575
/*
 
2576
 *      Epilogue: restore registers and return
 
2577
 */
 
2578
        ld      $16, 0($sp)
 
2579
        ld      $17, 8($sp)
 
2580
        ld      $18, 16($sp)
 
2581
        ld      $19, 24($sp)
 
2582
        ld      $20, 32($sp)
 
2583
        ld      $21, 40($sp)
 
2584
        ld      $22, 64($sp)
 
2585
        ld      $23, 72($sp)
 
2586
        ld      $30, 80($sp)
 
2587
#ifdef ATL_USE64BITS
 
2588
        ldc1    $f24, 88($sp)
 
2589
        ldc1    $f25, 96($sp)
 
2590
        ldc1    $f26, 104($sp)
 
2591
        ldc1    $f27, 112($sp)
 
2592
        ldc1    $f28, 120($sp)
 
2593
        ldc1    $f29, 128($sp)
 
2594
        ldc1    $f30, 136($sp)
 
2595
        ldc1    $f31, 144($sp)
 
2596
#else
 
2597
        ldc1    $f20, 88($sp)
 
2598
        ldc1    $f22, 96($sp)
 
2599
        ldc1    $f24, 104($sp)
 
2600
        ldc1    $f26, 112($sp)
 
2601
        ldc1    $f28, 120($sp)
 
2602
        ldc1    $f30, 128($sp)
 
2603
#endif
 
2604
        j       $31
 
2605
        daddiu  $sp, $sp, FSIZE         /* delay slot of return statement */
 
2606
 
 
2607
/*      end of file MIPS assembler BS */
 
2608
        .set    macro
 
2609
        .set    reorder
 
2610
        .set    at
 
2611
#ifndef ATL_OS_IRIX
 
2612
        .size   ATL_USERMM,.-ATL_USERMM
 
2613
#endif
 
2614
        .end    ATL_USERMM