xref: /onnv-gate/usr/src/common/crypto/sha1/sparc/sun4u/sha1_asm.s (revision 2108:85763fef9ea6)
10Sstevel@tonic-gate/*
20Sstevel@tonic-gate * CDDL HEADER START
30Sstevel@tonic-gate *
40Sstevel@tonic-gate * The contents of this file are subject to the terms of the
5*2108Svk199839 * Common Development and Distribution License (the "License").
6*2108Svk199839 * You may not use this file except in compliance with the License.
70Sstevel@tonic-gate *
80Sstevel@tonic-gate * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
90Sstevel@tonic-gate * or http://www.opensolaris.org/os/licensing.
100Sstevel@tonic-gate * See the License for the specific language governing permissions
110Sstevel@tonic-gate * and limitations under the License.
120Sstevel@tonic-gate *
130Sstevel@tonic-gate * When distributing Covered Code, include this CDDL HEADER in each
140Sstevel@tonic-gate * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
150Sstevel@tonic-gate * If applicable, add the following below this CDDL HEADER, with the
160Sstevel@tonic-gate * fields enclosed by brackets "[]" replaced with your own identifying
170Sstevel@tonic-gate * information: Portions Copyright [yyyy] [name of copyright owner]
180Sstevel@tonic-gate *
190Sstevel@tonic-gate * CDDL HEADER END
200Sstevel@tonic-gate */
210Sstevel@tonic-gate/*
22*2108Svk199839 * Copyright 2006 Sun Microsystems, Inc.  All rights reserved.
230Sstevel@tonic-gate * Use is subject to license terms.
240Sstevel@tonic-gate */
250Sstevel@tonic-gate
260Sstevel@tonic-gate#pragma ident	"%Z%%M%	%I%	%E% SMI"
270Sstevel@tonic-gate
280Sstevel@tonic-gate#include <sys/asm_linkage.h>
290Sstevel@tonic-gate#include <sys/stack.h>
300Sstevel@tonic-gate
310Sstevel@tonic-gate#ifdef _KERNEL
320Sstevel@tonic-gate
330Sstevel@tonic-gate#include <sys/privregs.h>
340Sstevel@tonic-gate#include <sys/regset.h>
350Sstevel@tonic-gate#include <sys/vis.h>
360Sstevel@tonic-gate#include <sys/machthread.h>
370Sstevel@tonic-gate
380Sstevel@tonic-gate#endif /* _KERNEL */
390Sstevel@tonic-gate
400Sstevel@tonic-gate#if defined(lint)
410Sstevel@tonic-gate
420Sstevel@tonic-gate#ifdef _KERNEL
430Sstevel@tonic-gate
440Sstevel@tonic-gate/* ARGSUSED */
450Sstevel@tonic-gateint
460Sstevel@tonic-gatesha1_savefp(kfpu_t *fpu, int svfp_ok)
470Sstevel@tonic-gate{ return(0); }
480Sstevel@tonic-gate
490Sstevel@tonic-gate/* ARGSUSED */
500Sstevel@tonic-gatevoid
510Sstevel@tonic-gatesha1_restorefp(kfpu_t *fpu)
520Sstevel@tonic-gate{}
530Sstevel@tonic-gate
540Sstevel@tonic-gate#endif /* _KERNEL */
550Sstevel@tonic-gate
560Sstevel@tonic-gate/* ARGSUSED */
570Sstevel@tonic-gatevoid
580Sstevel@tonic-gateSHA1TransformVIS(uint64_t *X0, uint64_t *blk, uint32_t *cstate, uint64_t *VIS)
590Sstevel@tonic-gate{}
600Sstevel@tonic-gate
610Sstevel@tonic-gate#else /* defined(lint) */
620Sstevel@tonic-gate
630Sstevel@tonic-gate#ifdef _KERNEL
640Sstevel@tonic-gate
650Sstevel@tonic-gate#define	FZERO				\
660Sstevel@tonic-gate	fzero	%f0			;\
670Sstevel@tonic-gate	fzero	%f2			;\
680Sstevel@tonic-gate	faddd	%f0, %f2, %f4		;\
690Sstevel@tonic-gate	fmuld	%f0, %f2, %f6		;\
700Sstevel@tonic-gate	faddd	%f0, %f2, %f8		;\
710Sstevel@tonic-gate	fmuld	%f0, %f2, %f10		;\
720Sstevel@tonic-gate	faddd	%f0, %f2, %f12		;\
730Sstevel@tonic-gate	fmuld	%f0, %f2, %f14		;\
740Sstevel@tonic-gate	faddd	%f0, %f2, %f16		;\
750Sstevel@tonic-gate	fmuld	%f0, %f2, %f18		;\
760Sstevel@tonic-gate	faddd	%f0, %f2, %f20		;\
770Sstevel@tonic-gate	fmuld	%f0, %f2, %f22		;\
780Sstevel@tonic-gate	faddd	%f0, %f2, %f24		;\
790Sstevel@tonic-gate	fmuld	%f0, %f2, %f26		;\
800Sstevel@tonic-gate	faddd	%f0, %f2, %f28		;\
810Sstevel@tonic-gate	fmuld	%f0, %f2, %f30		;\
820Sstevel@tonic-gate	faddd	%f0, %f2, %f32		;\
830Sstevel@tonic-gate	fmuld	%f0, %f2, %f34		;\
840Sstevel@tonic-gate	faddd	%f0, %f2, %f36		;\
850Sstevel@tonic-gate	fmuld	%f0, %f2, %f38		;\
860Sstevel@tonic-gate	faddd	%f0, %f2, %f40		;\
870Sstevel@tonic-gate	fmuld	%f0, %f2, %f42		;\
880Sstevel@tonic-gate	faddd	%f0, %f2, %f44		;\
890Sstevel@tonic-gate	fmuld	%f0, %f2, %f46		;\
900Sstevel@tonic-gate	faddd	%f0, %f2, %f48		;\
910Sstevel@tonic-gate	fmuld	%f0, %f2, %f50		;\
920Sstevel@tonic-gate	faddd	%f0, %f2, %f52		;\
930Sstevel@tonic-gate	fmuld	%f0, %f2, %f54		;\
940Sstevel@tonic-gate	faddd	%f0, %f2, %f56		;\
950Sstevel@tonic-gate	fmuld	%f0, %f2, %f58		;\
960Sstevel@tonic-gate	faddd	%f0, %f2, %f60		;\
970Sstevel@tonic-gate	fmuld	%f0, %f2, %f62
980Sstevel@tonic-gate
990Sstevel@tonic-gate#include "assym.h"
1000Sstevel@tonic-gate
1010Sstevel@tonic-gate	ENTRY(sha1_savefp)
1020Sstevel@tonic-gate	rd	%fprs, %o2
1030Sstevel@tonic-gate	st	%o2, [%o0 + FPU_FPRS]
1040Sstevel@tonic-gate	andcc	%o2, FPRS_FEF, %g0
1050Sstevel@tonic-gate	bz,a,pt	%icc, 1f
1060Sstevel@tonic-gate	wr	%g0, FPRS_FEF, %fprs
1070Sstevel@tonic-gate	brz,pt	%o1, 2f
1080Sstevel@tonic-gate	nop
1090Sstevel@tonic-gate	rd	%gsr, %o3
1100Sstevel@tonic-gate	stx	%o3, [%o0 + FPU_GSR]
111*2108Svk199839	stx	%fsr, [%o0 + FPU_FSR]
1120Sstevel@tonic-gate	BSTORE_FPREGS(%o0, %o4)
1130Sstevel@tonic-gate1:
1140Sstevel@tonic-gate	retl
1150Sstevel@tonic-gate	or	%g0, 1, %o0
1160Sstevel@tonic-gate2:
1170Sstevel@tonic-gate	retl
1180Sstevel@tonic-gate	clr	%o0
1190Sstevel@tonic-gate	SET_SIZE(sha1_savefp)
1200Sstevel@tonic-gate
1210Sstevel@tonic-gate	ENTRY(sha1_restorefp)
1220Sstevel@tonic-gate	ld	[%o0 + FPU_FPRS], %o1
1230Sstevel@tonic-gate	andcc	%o1, FPRS_FEF, %g0
1240Sstevel@tonic-gate	bz,pt	%icc, 1f
1250Sstevel@tonic-gate	nop
1260Sstevel@tonic-gate	BLOAD_FPREGS(%o0, %o2)
1270Sstevel@tonic-gate	wr	%o1, 0, %fprs
128*2108Svk199839	ldx	[%o0 + FPU_FSR], %fsr
1290Sstevel@tonic-gate	ldx	[%o0 + FPU_GSR], %o3
1300Sstevel@tonic-gate	retl
1310Sstevel@tonic-gate	wr	%o3, 0, %gsr
1320Sstevel@tonic-gate1:
1330Sstevel@tonic-gate	FZERO
1340Sstevel@tonic-gate	retl
1350Sstevel@tonic-gate	wr	%o1, 0, %fprs
1360Sstevel@tonic-gate	SET_SIZE(sha1_restorefp)
1370Sstevel@tonic-gate
1380Sstevel@tonic-gate#endif /* _KERNEL */
1390Sstevel@tonic-gate
1400Sstevel@tonic-gate	ENTRY(SHA1TransformVIS)
1410Sstevel@tonic-gate	save		%sp, -SA(MINFRAME), %sp
1420Sstevel@tonic-gate
1430Sstevel@tonic-gate	ld		[%i2 + 0], %o0
1440Sstevel@tonic-gate	mov		5, %g1
1450Sstevel@tonic-gate
1460Sstevel@tonic-gate	ld		[%i2 + 4], %o1
1470Sstevel@tonic-gate	alignaddr	%g0, %g1, %g0
1480Sstevel@tonic-gate
1490Sstevel@tonic-gate	ld		[%i2 + 8], %o2
1500Sstevel@tonic-gate
1510Sstevel@tonic-gate	ld		[%i2 + 12], %o3
1520Sstevel@tonic-gate
1530Sstevel@tonic-gate	ld		[%i2 + 16], %o4
1540Sstevel@tonic-gate
1550Sstevel@tonic-gate	ld		[%i3 + 0 + 16], %g1
1560Sstevel@tonic-gate
1570Sstevel@tonic-gate! Starting round 0
1580Sstevel@tonic-gate	sll		%o0, 5, %l0
1590Sstevel@tonic-gate	and		%o1, %o2, %l1
1600Sstevel@tonic-gate	ld		[%i1 + (0 * 4)], %l2
1610Sstevel@tonic-gate
1620Sstevel@tonic-gate	srl		%o0, 27, %l3
1630Sstevel@tonic-gate	andn		%o3, %o1, %l4
1640Sstevel@tonic-gate	ld		[%i1 + 0], %f16
1650Sstevel@tonic-gate
1660Sstevel@tonic-gate	sll		%o1, 30, %l5
1670Sstevel@tonic-gate	xor		%l1, %l4, %l1
1680Sstevel@tonic-gate	ld		[%i1 + 4], %f17
1690Sstevel@tonic-gate
1700Sstevel@tonic-gate	srl		%o1,  2, %l7
1710Sstevel@tonic-gate	or		%l0, %l3, %l0
1720Sstevel@tonic-gate	ld		[%i1 + 8], %f30
1730Sstevel@tonic-gate
1740Sstevel@tonic-gate	add		%l0, %l1, %l0
1750Sstevel@tonic-gate	add		%o4, %g1, %l1
1760Sstevel@tonic-gate	ld		[%i1 + 12], %f31
1770Sstevel@tonic-gate
1780Sstevel@tonic-gate	or		%l5, %l7, %o1
1790Sstevel@tonic-gate	add		%l0, %l1, %l0
1800Sstevel@tonic-gate	ld		[%i1 + 16], %f28
1810Sstevel@tonic-gate
1820Sstevel@tonic-gate	add		%l0, %l2, %o5
1830Sstevel@tonic-gate	ld		[%i1 + 20], %f29
1840Sstevel@tonic-gate
1850Sstevel@tonic-gate! Starting round 1
1860Sstevel@tonic-gate	sll		%o5, 5, %l0
1870Sstevel@tonic-gate	and		%o0, %o1, %l1
1880Sstevel@tonic-gate	ld		[%i1 + (1 * 4)], %l2
1890Sstevel@tonic-gate
1900Sstevel@tonic-gate	srl		%o5, 27, %l3
1910Sstevel@tonic-gate	andn		%o2, %o0, %l4
1920Sstevel@tonic-gate	ld		[%i1 + 24], %f26
1930Sstevel@tonic-gate
1940Sstevel@tonic-gate	sll		%o0, 30, %l5
1950Sstevel@tonic-gate	xor		%l1, %l4, %l1
1960Sstevel@tonic-gate	ld		[%i1 + 28], %f27
1970Sstevel@tonic-gate	fzero		%f52
1980Sstevel@tonic-gate
1990Sstevel@tonic-gate	srl		%o0,  2, %l7
2000Sstevel@tonic-gate	or		%l0, %l3, %l0
2010Sstevel@tonic-gate	ld		[%i1 + 32], %f24
2020Sstevel@tonic-gate
2030Sstevel@tonic-gate	add		%l0, %l1, %l0
2040Sstevel@tonic-gate	add		%o3, %g1, %l1
2050Sstevel@tonic-gate	ld		[%i1 + 36], %f25
2060Sstevel@tonic-gate
2070Sstevel@tonic-gate	or		%l5, %l7, %o0
2080Sstevel@tonic-gate	add		%l0, %l1, %l0
2090Sstevel@tonic-gate	ld		[%i1 + 40], %f22
2100Sstevel@tonic-gate
2110Sstevel@tonic-gate	add		%l0, %l2, %o4
2120Sstevel@tonic-gate	ld		[%i1 + 44], %f23
2130Sstevel@tonic-gate
2140Sstevel@tonic-gate! Starting round 2
2150Sstevel@tonic-gate	sll		%o4, 5, %l0
2160Sstevel@tonic-gate	and		%o5, %o0, %l1
2170Sstevel@tonic-gate	ld		[%i1 + (2 * 4)], %l2
2180Sstevel@tonic-gate
2190Sstevel@tonic-gate	srl		%o4, 27, %l3
2200Sstevel@tonic-gate	andn		%o1, %o5, %l4
2210Sstevel@tonic-gate	ld		[%i1 + 48], %f20
2220Sstevel@tonic-gate
2230Sstevel@tonic-gate	sll		%o5, 30, %l5
2240Sstevel@tonic-gate	xor		%l1, %l4, %l1
2250Sstevel@tonic-gate	ld		[%i1 + 52], %f21
2260Sstevel@tonic-gate
2270Sstevel@tonic-gate	srl		%o5,  2, %l7
2280Sstevel@tonic-gate	or		%l0, %l3, %l0
2290Sstevel@tonic-gate	fxor		%f16, %f30, %f38
2300Sstevel@tonic-gate	ld		[%i1 + 56], %f18
2310Sstevel@tonic-gate
2320Sstevel@tonic-gate	add		%l0, %l1, %l0
2330Sstevel@tonic-gate	add		%o2, %g1, %l1
2340Sstevel@tonic-gate	fxor		%f28, %f30, %f14
2350Sstevel@tonic-gate	ld		[%i1 + 60], %f19
2360Sstevel@tonic-gate
2370Sstevel@tonic-gate	or		%l5, %l7, %o5
2380Sstevel@tonic-gate	add		%l0, %l1, %l0
2390Sstevel@tonic-gate	ld		[%i1 + 52], %f0
2400Sstevel@tonic-gate
2410Sstevel@tonic-gate	add		%l0, %l2, %o3
2420Sstevel@tonic-gate
2430Sstevel@tonic-gate! Starting round 3
2440Sstevel@tonic-gate	sll		%o3, 5, %l0
2450Sstevel@tonic-gate	and		%o4, %o5, %l1
2460Sstevel@tonic-gate	ld		[%i1 + (3 * 4)], %l2
2470Sstevel@tonic-gate
2480Sstevel@tonic-gate	srl		%o3, 27, %l3
2490Sstevel@tonic-gate	andn		%o0, %o4, %l4
2500Sstevel@tonic-gate	ld		[%i1 + 56], %f1
2510Sstevel@tonic-gate
2520Sstevel@tonic-gate	sll		%o4, 30, %l5
2530Sstevel@tonic-gate	xor		%l1, %l4, %l1
2540Sstevel@tonic-gate	ldd		[%i3 + 8], %f54
2550Sstevel@tonic-gate	fxor		%f38, %f24, %f38
2560Sstevel@tonic-gate
2570Sstevel@tonic-gate	srl		%o4,  2, %l7
2580Sstevel@tonic-gate	or		%l0, %l3, %l0
2590Sstevel@tonic-gate	ldd		[%i3 + 0], %f50
2600Sstevel@tonic-gate	fxor		%f14, %f22, %f14
2610Sstevel@tonic-gate
2620Sstevel@tonic-gate	add		%l0, %l1, %l0
2630Sstevel@tonic-gate	add		%o1, %g1, %l1
2640Sstevel@tonic-gate	ld		[%i1 + 60], %f8
2650Sstevel@tonic-gate
2660Sstevel@tonic-gate	or		%l5, %l7, %o4
2670Sstevel@tonic-gate	add		%l0, %l1, %l0
2680Sstevel@tonic-gate
2690Sstevel@tonic-gate	add		%l0, %l2, %o2
2700Sstevel@tonic-gate
2710Sstevel@tonic-gate! Starting round 4
2720Sstevel@tonic-gate	and		%o3, %o4, %l1
2730Sstevel@tonic-gate	sll		%o2, 5, %l0
2740Sstevel@tonic-gate	ld		[%i1 + (4 * 4)], %l2
2750Sstevel@tonic-gate	fxor		%f38, %f0, %f36
2760Sstevel@tonic-gate
2770Sstevel@tonic-gate	srl		%o2, 27, %l3
2780Sstevel@tonic-gate	andn		%o5, %o3, %l4
2790Sstevel@tonic-gate	fxors		%f14, %f8, %f12
2800Sstevel@tonic-gate
2810Sstevel@tonic-gate	sll		%o3, 30, %l5
2820Sstevel@tonic-gate	xor		%l1, %l4, %l1
2830Sstevel@tonic-gate	fxor		%f28, %f30, %f14
2840Sstevel@tonic-gate
2850Sstevel@tonic-gate	srl		%o3,  2, %l7
2860Sstevel@tonic-gate	or		%l0, %l3, %l0
2870Sstevel@tonic-gate	fand		%f50, %f36, %f2
2880Sstevel@tonic-gate
2890Sstevel@tonic-gate	add		%l0, %l1, %l0
2900Sstevel@tonic-gate	add		%o0, %g1, %l1
2910Sstevel@tonic-gate	fand		%f50, %f12, %f10
2920Sstevel@tonic-gate
2930Sstevel@tonic-gate	or		%l5, %l7, %o3
2940Sstevel@tonic-gate	add		%l0, %l1, %l0
2950Sstevel@tonic-gate	fpadd32		%f36, %f36, %f4
2960Sstevel@tonic-gate
2970Sstevel@tonic-gate	add		%l0, %l2, %o1
2980Sstevel@tonic-gate! Starting round 5
2990Sstevel@tonic-gate	and		%o2, %o3, %l1
3000Sstevel@tonic-gate	sll		%o1, 5, %l0
3010Sstevel@tonic-gate	ld		[%i1 + (5 * 4)], %l2
3020Sstevel@tonic-gate	faligndata	%f52, %f2, %f2
3030Sstevel@tonic-gate
3040Sstevel@tonic-gate	srl		%o1, 27, %l3
3050Sstevel@tonic-gate	andn		%o4, %o2, %l4
3060Sstevel@tonic-gate	faligndata	%f52, %f10, %f10
3070Sstevel@tonic-gate
3080Sstevel@tonic-gate	sll		%o2, 30, %l5
3090Sstevel@tonic-gate	xor		%l1, %l4, %l1
3100Sstevel@tonic-gate	fpadd32s	%f12, %f12, %f12
3110Sstevel@tonic-gate
3120Sstevel@tonic-gate	srl		%o2,  2, %l7
3130Sstevel@tonic-gate	or		%l0, %l3, %l0
3140Sstevel@tonic-gate	fxor		%f26, %f28, %f38
3150Sstevel@tonic-gate	fmul8x16	%f2, %f54, %f6
3160Sstevel@tonic-gate
3170Sstevel@tonic-gate	add		%l0, %l1, %l0
3180Sstevel@tonic-gate	add		%o5, %g1, %l1
3190Sstevel@tonic-gate	fxor		%f14, %f22, %f14
3200Sstevel@tonic-gate	fmul8x16	%f3, %f54, %f2
3210Sstevel@tonic-gate
3220Sstevel@tonic-gate	or		%l5, %l7, %o2
3230Sstevel@tonic-gate	add		%l0, %l1, %l0
3240Sstevel@tonic-gate	fmul8x16	%f10, %f54, %f10
3250Sstevel@tonic-gate
3260Sstevel@tonic-gate	add		%l0, %l2, %o0
3270Sstevel@tonic-gate
3280Sstevel@tonic-gate! Starting round 6
3290Sstevel@tonic-gate	and		%o1, %o2, %l1
3300Sstevel@tonic-gate	sll		%o0, 5, %l0
3310Sstevel@tonic-gate	ld		[%i1 + (6 * 4)], %l2
3320Sstevel@tonic-gate	fxor		%f38, %f20, %f38
3330Sstevel@tonic-gate
3340Sstevel@tonic-gate	srl		%o0, 27, %l3
3350Sstevel@tonic-gate	andn		%o3, %o1, %l4
3360Sstevel@tonic-gate	fors		%f4, %f7, %f8
3370Sstevel@tonic-gate	st		%f8, [%i0 + (16*4) + (0)]
3380Sstevel@tonic-gate
3390Sstevel@tonic-gate	sll		%o1, 30, %l5
3400Sstevel@tonic-gate	xor		%l1, %l4, %l1
3410Sstevel@tonic-gate	fors		%f5, %f3, %f0
3420Sstevel@tonic-gate	st		%f0, [%i0 + (16*4) + (4)]
3430Sstevel@tonic-gate
3440Sstevel@tonic-gate	srl		%o1,  2, %l7
3450Sstevel@tonic-gate	or		%l0, %l3, %l0
3460Sstevel@tonic-gate	fors		%f12, %f11, %f1
3470Sstevel@tonic-gate	st		%f1, [%i0 + (16*4) + (8)]
3480Sstevel@tonic-gate
3490Sstevel@tonic-gate	add		%l0, %l1, %l0
3500Sstevel@tonic-gate	add		%o4, %g1, %l1
3510Sstevel@tonic-gate	fors		%f4, %f7, %f16
3520Sstevel@tonic-gate
3530Sstevel@tonic-gate	or		%l5, %l7, %o1
3540Sstevel@tonic-gate	add		%l0, %l1, %l0
3550Sstevel@tonic-gate	fors		%f5, %f3, %f17
3560Sstevel@tonic-gate
3570Sstevel@tonic-gate	add		%l0, %l2, %o5
3580Sstevel@tonic-gate	fors		%f12, %f11, %f9
3590Sstevel@tonic-gate
3600Sstevel@tonic-gate! Starting round 7
3610Sstevel@tonic-gate	and		%o0, %o1, %l1
3620Sstevel@tonic-gate	sll		%o5, 5, %l0
3630Sstevel@tonic-gate	ld		[%i1 + (7 * 4)], %l2
3640Sstevel@tonic-gate	fxor		%f38, %f0, %f36
3650Sstevel@tonic-gate
3660Sstevel@tonic-gate	srl		%o5, 27, %l3
3670Sstevel@tonic-gate	andn		%o2, %o0, %l4
3680Sstevel@tonic-gate	fxors		%f15, %f8, %f12
3690Sstevel@tonic-gate
3700Sstevel@tonic-gate	sll		%o0, 30, %l5
3710Sstevel@tonic-gate	xor		%l1, %l4, %l1
3720Sstevel@tonic-gate	fxor		%f24, %f26, %f38
3730Sstevel@tonic-gate
3740Sstevel@tonic-gate	srl		%o0,  2, %l7
3750Sstevel@tonic-gate	or		%l0, %l3, %l0
3760Sstevel@tonic-gate	fand		%f50, %f36, %f2
3770Sstevel@tonic-gate
3780Sstevel@tonic-gate	add		%l0, %l1, %l0
3790Sstevel@tonic-gate	add		%o3, %g1, %l1
3800Sstevel@tonic-gate	fand		%f50, %f12, %f10
3810Sstevel@tonic-gate
3820Sstevel@tonic-gate	or		%l5, %l7, %o0
3830Sstevel@tonic-gate	add		%l0, %l1, %l0
3840Sstevel@tonic-gate	fpadd32		%f36, %f36, %f4
3850Sstevel@tonic-gate
3860Sstevel@tonic-gate	add		%l0, %l2, %o4
3870Sstevel@tonic-gate! Starting round 8
3880Sstevel@tonic-gate	and		%o5, %o0, %l1
3890Sstevel@tonic-gate	sll		%o4, 5, %l0
3900Sstevel@tonic-gate	ld		[%i1 + (8 * 4)], %l2
3910Sstevel@tonic-gate	faligndata	%f52, %f2, %f2
3920Sstevel@tonic-gate
3930Sstevel@tonic-gate	srl		%o4, 27, %l3
3940Sstevel@tonic-gate	andn		%o1, %o5, %l4
3950Sstevel@tonic-gate	faligndata	%f52, %f10, %f10
3960Sstevel@tonic-gate
3970Sstevel@tonic-gate	sll		%o5, 30, %l5
3980Sstevel@tonic-gate	xor		%l1, %l4, %l1
3990Sstevel@tonic-gate	fpadd32s	%f12, %f12, %f12
4000Sstevel@tonic-gate
4010Sstevel@tonic-gate	srl		%o5,  2, %l7
4020Sstevel@tonic-gate	or		%l0, %l3, %l0
4030Sstevel@tonic-gate	fxor		%f22, %f24, %f14
4040Sstevel@tonic-gate	fmul8x16	%f2, %f54, %f6
4050Sstevel@tonic-gate
4060Sstevel@tonic-gate	add		%l0, %l1, %l0
4070Sstevel@tonic-gate	add		%o2, %g1, %l1
4080Sstevel@tonic-gate	fxor		%f38, %f18, %f38
4090Sstevel@tonic-gate	fmul8x16	%f3, %f54, %f2
4100Sstevel@tonic-gate
4110Sstevel@tonic-gate	or		%l5, %l7, %o5
4120Sstevel@tonic-gate	add		%l0, %l1, %l0
4130Sstevel@tonic-gate	fmovs		%f9, %f30
4140Sstevel@tonic-gate	fmul8x16	%f10, %f54, %f10
4150Sstevel@tonic-gate
4160Sstevel@tonic-gate	add		%l0, %l2, %o3
4170Sstevel@tonic-gate
4180Sstevel@tonic-gate! Starting round 9
4190Sstevel@tonic-gate	and		%o4, %o5, %l1
4200Sstevel@tonic-gate	sll		%o3, 5, %l0
4210Sstevel@tonic-gate	ld		[%i1 + (9 * 4)], %l2
4220Sstevel@tonic-gate	fxor		%f14, %f16, %f14
4230Sstevel@tonic-gate
4240Sstevel@tonic-gate	srl		%o3, 27, %l3
4250Sstevel@tonic-gate	andn		%o0, %o4, %l4
4260Sstevel@tonic-gate	fors		%f4, %f7, %f1
4270Sstevel@tonic-gate	st		%f1, [%i0 + (19*4) + (4)]
4280Sstevel@tonic-gate
4290Sstevel@tonic-gate	sll		%o4, 30, %l5
4300Sstevel@tonic-gate	xor		%l1, %l4, %l1
4310Sstevel@tonic-gate	fors		%f5, %f3, %f8
4320Sstevel@tonic-gate	st		%f8, [%i0 + (19*4) + (8)]
4330Sstevel@tonic-gate
4340Sstevel@tonic-gate	srl		%o4,  2, %l7
4350Sstevel@tonic-gate	or		%l0, %l3, %l0
4360Sstevel@tonic-gate	fors		%f12, %f11, %f0
4370Sstevel@tonic-gate	st		%f0, [%i0 + (19*4) + (0)]
4380Sstevel@tonic-gate
4390Sstevel@tonic-gate	add		%l0, %l1, %l0
4400Sstevel@tonic-gate	add		%o1, %g1, %l1
4410Sstevel@tonic-gate	fors		%f4, %f7, %f28
4420Sstevel@tonic-gate
4430Sstevel@tonic-gate	or		%l5, %l7, %o4
4440Sstevel@tonic-gate	add		%l0, %l1, %l0
4450Sstevel@tonic-gate	fors		%f5, %f3, %f29
4460Sstevel@tonic-gate
4470Sstevel@tonic-gate	add		%l0, %l2, %o2
4480Sstevel@tonic-gate	fors		%f12, %f11, %f31
4490Sstevel@tonic-gate
4500Sstevel@tonic-gate! Starting round 10
4510Sstevel@tonic-gate	and		%o3, %o4, %l1
4520Sstevel@tonic-gate	sll		%o2, 5, %l0
4530Sstevel@tonic-gate	ld		[%i1 + (10 * 4)], %l2
4540Sstevel@tonic-gate	fxor		%f38, %f0, %f36
4550Sstevel@tonic-gate
4560Sstevel@tonic-gate	srl		%o2, 27, %l3
4570Sstevel@tonic-gate	andn		%o5, %o3, %l4
4580Sstevel@tonic-gate	fxors		%f14, %f8, %f12
4590Sstevel@tonic-gate
4600Sstevel@tonic-gate	sll		%o3, 30, %l5
4610Sstevel@tonic-gate	xor		%l1, %l4, %l1
4620Sstevel@tonic-gate	fxor		%f22, %f24, %f14
4630Sstevel@tonic-gate
4640Sstevel@tonic-gate	srl		%o3,  2, %l7
4650Sstevel@tonic-gate	or		%l0, %l3, %l0
4660Sstevel@tonic-gate	fand		%f50, %f36, %f2
4670Sstevel@tonic-gate
4680Sstevel@tonic-gate	add		%l0, %l1, %l0
4690Sstevel@tonic-gate	add		%o0, %g1, %l1
4700Sstevel@tonic-gate	fand		%f50, %f12, %f10
4710Sstevel@tonic-gate
4720Sstevel@tonic-gate	or		%l5, %l7, %o3
4730Sstevel@tonic-gate	add		%l0, %l1, %l0
4740Sstevel@tonic-gate	fpadd32		%f36, %f36, %f4
4750Sstevel@tonic-gate
4760Sstevel@tonic-gate	add		%l0, %l2, %o1
4770Sstevel@tonic-gate
4780Sstevel@tonic-gate! Starting round 11
4790Sstevel@tonic-gate	and		%o2, %o3, %l1
4800Sstevel@tonic-gate	sll		%o1, 5, %l0
4810Sstevel@tonic-gate	ld		[%i1 + (11 * 4)], %l2
4820Sstevel@tonic-gate	faligndata	%f52, %f2, %f2
4830Sstevel@tonic-gate
4840Sstevel@tonic-gate	srl		%o1, 27, %l3
4850Sstevel@tonic-gate	andn		%o4, %o2, %l4
4860Sstevel@tonic-gate	faligndata	%f52, %f10, %f10
4870Sstevel@tonic-gate
4880Sstevel@tonic-gate	sll		%o2, 30, %l5
4890Sstevel@tonic-gate	xor		%l1, %l4, %l1
4900Sstevel@tonic-gate	fpadd32s	%f12, %f12, %f12
4910Sstevel@tonic-gate
4920Sstevel@tonic-gate	srl		%o2,  2, %l7
4930Sstevel@tonic-gate	or		%l0, %l3, %l0
4940Sstevel@tonic-gate	fxor		%f20, %f22, %f38
4950Sstevel@tonic-gate	fmul8x16	%f2, %f54, %f6
4960Sstevel@tonic-gate
4970Sstevel@tonic-gate	add		%l0, %l1, %l0
4980Sstevel@tonic-gate	add		%o5, %g1, %l1
4990Sstevel@tonic-gate	fxor		%f14, %f16, %f14
5000Sstevel@tonic-gate	fmul8x16	%f3, %f54, %f2
5010Sstevel@tonic-gate
5020Sstevel@tonic-gate	or		%l5, %l7, %o2
5030Sstevel@tonic-gate	add		%l0, %l1, %l0
5040Sstevel@tonic-gate	fmul8x16	%f10, %f54, %f10
5050Sstevel@tonic-gate
5060Sstevel@tonic-gate	add		%l0, %l2, %o0
5070Sstevel@tonic-gate
5080Sstevel@tonic-gate! Starting round 12
5090Sstevel@tonic-gate	and		%o1, %o2, %l1
5100Sstevel@tonic-gate	sll		%o0, 5, %l0
5110Sstevel@tonic-gate	ld		[%i1 + (12 * 4)], %l2
5120Sstevel@tonic-gate	fxor		%f38, %f30, %f38
5130Sstevel@tonic-gate
5140Sstevel@tonic-gate	srl		%o0, 27, %l3
5150Sstevel@tonic-gate	andn		%o3, %o1, %l4
5160Sstevel@tonic-gate	fors		%f4, %f7, %f8
5170Sstevel@tonic-gate	st		%f8, [%i0 + (22*4) + (0)]
5180Sstevel@tonic-gate
5190Sstevel@tonic-gate	sll		%o1, 30, %l5
5200Sstevel@tonic-gate	xor		%l1, %l4, %l1
5210Sstevel@tonic-gate	fors		%f5, %f3, %f0
5220Sstevel@tonic-gate	st		%f0, [%i0 + (22*4) + (4)]
5230Sstevel@tonic-gate
5240Sstevel@tonic-gate	srl		%o1,  2, %l7
5250Sstevel@tonic-gate	or		%l0, %l3, %l0
5260Sstevel@tonic-gate	fors		%f12, %f11, %f1
5270Sstevel@tonic-gate	st		%f1, [%i0 + (22*4) + (8)]
5280Sstevel@tonic-gate
5290Sstevel@tonic-gate	add		%l0, %l1, %l0
5300Sstevel@tonic-gate	add		%o4, %g1, %l1
5310Sstevel@tonic-gate	fors		%f4, %f7, %f26
5320Sstevel@tonic-gate
5330Sstevel@tonic-gate	or		%l5, %l7, %o1
5340Sstevel@tonic-gate	add		%l0, %l1, %l0
5350Sstevel@tonic-gate	fors		%f5, %f3, %f27
5360Sstevel@tonic-gate
5370Sstevel@tonic-gate	add		%l0, %l2, %o5
5380Sstevel@tonic-gate	fors		%f12, %f11, %f9
5390Sstevel@tonic-gate
5400Sstevel@tonic-gate! Starting round 13
5410Sstevel@tonic-gate	and		%o0, %o1, %l1
5420Sstevel@tonic-gate	sll		%o5, 5, %l0
5430Sstevel@tonic-gate	ld		[%i1 + (13 * 4)], %l2
5440Sstevel@tonic-gate	fxor		%f38, %f0, %f36
5450Sstevel@tonic-gate
5460Sstevel@tonic-gate	srl		%o5, 27, %l3
5470Sstevel@tonic-gate	andn		%o2, %o0, %l4
5480Sstevel@tonic-gate	fxors		%f15, %f8, %f12
5490Sstevel@tonic-gate
5500Sstevel@tonic-gate	sll		%o0, 30, %l5
5510Sstevel@tonic-gate	xor		%l1, %l4, %l1
5520Sstevel@tonic-gate	fxor		%f18, %f20, %f38
5530Sstevel@tonic-gate
5540Sstevel@tonic-gate	srl		%o0,  2, %l7
5550Sstevel@tonic-gate	or		%l0, %l3, %l0
5560Sstevel@tonic-gate	fand		%f50, %f36, %f2
5570Sstevel@tonic-gate
5580Sstevel@tonic-gate	add		%l0, %l1, %l0
5590Sstevel@tonic-gate	add		%o3, %g1, %l1
5600Sstevel@tonic-gate	fand		%f50, %f12, %f10
5610Sstevel@tonic-gate
5620Sstevel@tonic-gate	or		%l5, %l7, %o0
5630Sstevel@tonic-gate	add		%l0, %l1, %l0
5640Sstevel@tonic-gate	fpadd32		%f36, %f36, %f4
5650Sstevel@tonic-gate
5660Sstevel@tonic-gate	add		%l0, %l2, %o4
5670Sstevel@tonic-gate! Starting round 14
5680Sstevel@tonic-gate	and		%o5, %o0, %l1
5690Sstevel@tonic-gate	sll		%o4, 5, %l0
5700Sstevel@tonic-gate	ld		[%i1 + (14 * 4)], %l2
5710Sstevel@tonic-gate	faligndata	%f52, %f2, %f2
5720Sstevel@tonic-gate
5730Sstevel@tonic-gate	srl		%o4, 27, %l3
5740Sstevel@tonic-gate	andn		%o1, %o5, %l4
5750Sstevel@tonic-gate	faligndata	%f52, %f10, %f10
5760Sstevel@tonic-gate
5770Sstevel@tonic-gate	sll		%o5, 30, %l5
5780Sstevel@tonic-gate	xor		%l1, %l4, %l1
5790Sstevel@tonic-gate	fpadd32s	%f12, %f12, %f12
5800Sstevel@tonic-gate
5810Sstevel@tonic-gate	srl		%o5,  2, %l7
5820Sstevel@tonic-gate	or		%l0, %l3, %l0
5830Sstevel@tonic-gate	fxor		%f16, %f18, %f14
5840Sstevel@tonic-gate	fmul8x16	%f2, %f54, %f6
5850Sstevel@tonic-gate
5860Sstevel@tonic-gate	add		%l0, %l1, %l0
5870Sstevel@tonic-gate	add		%o2, %g1, %l1
5880Sstevel@tonic-gate	fxor		%f38, %f28, %f38
5890Sstevel@tonic-gate	fmul8x16	%f3, %f54, %f2
5900Sstevel@tonic-gate
5910Sstevel@tonic-gate	or		%l5, %l7, %o5
5920Sstevel@tonic-gate	add		%l0, %l1, %l0
5930Sstevel@tonic-gate	fmovs		%f9, %f24
5940Sstevel@tonic-gate	fmul8x16	%f10, %f54, %f10
5950Sstevel@tonic-gate
5960Sstevel@tonic-gate	add		%l0, %l2, %o3
5970Sstevel@tonic-gate
5980Sstevel@tonic-gate! Starting round 15
5990Sstevel@tonic-gate	and		%o4, %o5, %l1
6000Sstevel@tonic-gate	sll		%o3, 5, %l0
6010Sstevel@tonic-gate	ld		[%i1 + (15 * 4)], %l2
6020Sstevel@tonic-gate	fxor		%f14, %f26, %f14
6030Sstevel@tonic-gate
6040Sstevel@tonic-gate	srl		%o3, 27, %l3
6050Sstevel@tonic-gate	andn		%o0, %o4, %l4
6060Sstevel@tonic-gate	fors		%f4, %f7, %f1
6070Sstevel@tonic-gate	st		%f1, [%i0 + (25*4) + (4)]
6080Sstevel@tonic-gate
6090Sstevel@tonic-gate	sll		%o4, 30, %l5
6100Sstevel@tonic-gate	xor		%l1, %l4, %l1
6110Sstevel@tonic-gate	fors		%f5, %f3, %f8
6120Sstevel@tonic-gate	st		%f8, [%i0 + (25*4) + (8)]
6130Sstevel@tonic-gate
6140Sstevel@tonic-gate	srl		%o4,  2, %l7
6150Sstevel@tonic-gate	or		%l0, %l3, %l0
6160Sstevel@tonic-gate	fors		%f12, %f11, %f0
6170Sstevel@tonic-gate	st		%f0, [%i0 + (25*4) + (0)]
6180Sstevel@tonic-gate
6190Sstevel@tonic-gate	add		%l0, %l1, %l0
6200Sstevel@tonic-gate	add		%o1, %g1, %l1
6210Sstevel@tonic-gate	fors		%f4, %f7, %f22
6220Sstevel@tonic-gate
6230Sstevel@tonic-gate	or		%l5, %l7, %o4
6240Sstevel@tonic-gate	add		%l0, %l1, %l0
6250Sstevel@tonic-gate	fors		%f5, %f3, %f23
6260Sstevel@tonic-gate
6270Sstevel@tonic-gate	add		%l0, %l2, %o2
6280Sstevel@tonic-gate	fors		%f12, %f11, %f25
6290Sstevel@tonic-gate
6300Sstevel@tonic-gate! Starting round 16
6310Sstevel@tonic-gate	and		%o3, %o4, %l1
6320Sstevel@tonic-gate	sll		%o2, 5, %l0
6330Sstevel@tonic-gate	ld		[%i0 + (16 * 4)], %l2
6340Sstevel@tonic-gate	fxor		%f38, %f0, %f36
6350Sstevel@tonic-gate
6360Sstevel@tonic-gate	srl		%o2, 27, %l3
6370Sstevel@tonic-gate	andn		%o5, %o3, %l4
6380Sstevel@tonic-gate	fxors		%f14, %f8, %f12
6390Sstevel@tonic-gate
6400Sstevel@tonic-gate	sll		%o3, 30, %l5
6410Sstevel@tonic-gate	xor		%l1, %l4, %l1
6420Sstevel@tonic-gate	fxor		%f16, %f18, %f14
6430Sstevel@tonic-gate
6440Sstevel@tonic-gate	srl		%o3,  2, %l7
6450Sstevel@tonic-gate	or		%l0, %l3, %l0
6460Sstevel@tonic-gate	fand		%f50, %f36, %f2
6470Sstevel@tonic-gate
6480Sstevel@tonic-gate	add		%l0, %l1, %l0
6490Sstevel@tonic-gate	add		%o0, %g1, %l1
6500Sstevel@tonic-gate	fand		%f50, %f12, %f10
6510Sstevel@tonic-gate
6520Sstevel@tonic-gate	or		%l5, %l7, %o3
6530Sstevel@tonic-gate	add		%l0, %l1, %l0
6540Sstevel@tonic-gate	fpadd32		%f36, %f36, %f4
6550Sstevel@tonic-gate
6560Sstevel@tonic-gate	add		%l0, %l2, %o1
6570Sstevel@tonic-gate
6580Sstevel@tonic-gate! Starting round 17
6590Sstevel@tonic-gate	and		%o2, %o3, %l1
6600Sstevel@tonic-gate	sll		%o1, 5, %l0
6610Sstevel@tonic-gate	ld		[%i0 + (17 * 4)], %l2
6620Sstevel@tonic-gate	faligndata	%f52, %f2, %f2
6630Sstevel@tonic-gate
6640Sstevel@tonic-gate	srl		%o1, 27, %l3
6650Sstevel@tonic-gate	andn		%o4, %o2, %l4
6660Sstevel@tonic-gate	faligndata	%f52, %f10, %f10
6670Sstevel@tonic-gate
6680Sstevel@tonic-gate	sll		%o2, 30, %l5
6690Sstevel@tonic-gate	xor		%l1, %l4, %l1
6700Sstevel@tonic-gate	fpadd32s	%f12, %f12, %f12
6710Sstevel@tonic-gate
6720Sstevel@tonic-gate	srl		%o2,  2, %l7
6730Sstevel@tonic-gate	or		%l0, %l3, %l0
6740Sstevel@tonic-gate	fxor		%f30, %f16, %f38
6750Sstevel@tonic-gate	fmul8x16	%f2, %f54, %f6
6760Sstevel@tonic-gate
6770Sstevel@tonic-gate	add		%l0, %l1, %l0
6780Sstevel@tonic-gate	add		%o5, %g1, %l1
6790Sstevel@tonic-gate	fxor		%f14, %f26, %f14
6800Sstevel@tonic-gate	fmul8x16	%f3, %f54, %f2
6810Sstevel@tonic-gate
6820Sstevel@tonic-gate	or		%l5, %l7, %o2
6830Sstevel@tonic-gate	add		%l0, %l1, %l0
6840Sstevel@tonic-gate	fmul8x16	%f10, %f54, %f10
6850Sstevel@tonic-gate
6860Sstevel@tonic-gate	add		%l0, %l2, %o0
6870Sstevel@tonic-gate
6880Sstevel@tonic-gate! Starting round 18
6890Sstevel@tonic-gate	and		%o1, %o2, %l1
6900Sstevel@tonic-gate	sll		%o0, 5, %l0
6910Sstevel@tonic-gate	ld		[%i0 + (18 * 4)], %l2
6920Sstevel@tonic-gate	fxor		%f38, %f24, %f38
6930Sstevel@tonic-gate
6940Sstevel@tonic-gate	srl		%o0, 27, %l3
6950Sstevel@tonic-gate	andn		%o3, %o1, %l4
6960Sstevel@tonic-gate	fors		%f4, %f7, %f8
6970Sstevel@tonic-gate	st		%f8, [%i0 + (28*4) + (0)]
6980Sstevel@tonic-gate
6990Sstevel@tonic-gate	sll		%o1, 30, %l5
7000Sstevel@tonic-gate	xor		%l1, %l4, %l1
7010Sstevel@tonic-gate	fors		%f5, %f3, %f0
7020Sstevel@tonic-gate	st		%f0, [%i0 + (28*4) + (4)]
7030Sstevel@tonic-gate
7040Sstevel@tonic-gate	srl		%o1,  2, %l7
7050Sstevel@tonic-gate	or		%l0, %l3, %l0
7060Sstevel@tonic-gate	fors		%f12, %f11, %f1
7070Sstevel@tonic-gate	st		%f1, [%i0 + (28*4) + (8)]
7080Sstevel@tonic-gate
7090Sstevel@tonic-gate	add		%l0, %l1, %l0
7100Sstevel@tonic-gate	add		%o4, %g1, %l1
7110Sstevel@tonic-gate	fors		%f4, %f7, %f20
7120Sstevel@tonic-gate
7130Sstevel@tonic-gate	or		%l5, %l7, %o1
7140Sstevel@tonic-gate	add		%l0, %l1, %l0
7150Sstevel@tonic-gate	fors		%f5, %f3, %f21
7160Sstevel@tonic-gate
7170Sstevel@tonic-gate	add		%l0, %l2, %o5
7180Sstevel@tonic-gate	fors		%f12, %f11, %f9
7190Sstevel@tonic-gate
7200Sstevel@tonic-gate! Starting round 19
7210Sstevel@tonic-gate	and		%o0, %o1, %l1
7220Sstevel@tonic-gate	sll		%o5, 5, %l0
7230Sstevel@tonic-gate	ld		[%i0 + (19 * 4)], %l2
7240Sstevel@tonic-gate	fxor		%f38, %f0, %f36
7250Sstevel@tonic-gate
7260Sstevel@tonic-gate	srl		%o5, 27, %l3
7270Sstevel@tonic-gate	andn		%o2, %o0, %l4
7280Sstevel@tonic-gate	fxors		%f15, %f8, %f12
7290Sstevel@tonic-gate
7300Sstevel@tonic-gate	sll		%o0, 30, %l5
7310Sstevel@tonic-gate	xor		%l1, %l4, %l1
7320Sstevel@tonic-gate	fxor		%f28, %f30, %f38
7330Sstevel@tonic-gate
7340Sstevel@tonic-gate	srl		%o0,  2, %l7
7350Sstevel@tonic-gate	or		%l0, %l3, %l0
7360Sstevel@tonic-gate	fand		%f50, %f36, %f2
7370Sstevel@tonic-gate
7380Sstevel@tonic-gate	add		%l0, %l1, %l0
7390Sstevel@tonic-gate	add		%o3, %g1, %l1
7400Sstevel@tonic-gate	fand		%f50, %f12, %f10
7410Sstevel@tonic-gate
7420Sstevel@tonic-gate	or		%l5, %l7, %o0
7430Sstevel@tonic-gate	add		%l0, %l1, %l0
7440Sstevel@tonic-gate	fpadd32		%f36, %f36, %f4
7450Sstevel@tonic-gate
7460Sstevel@tonic-gate	add		%l0, %l2, %o4
7470Sstevel@tonic-gate
7480Sstevel@tonic-gate	ld 		[%i3 + 4 + 16], %g1
7490Sstevel@tonic-gate
7500Sstevel@tonic-gate! Starting round 20
7510Sstevel@tonic-gate	sll		%o4, 5, %l0
7520Sstevel@tonic-gate	xor		%o5, %o0, %l1
7530Sstevel@tonic-gate	ld		[%i0 + (20 * 4)], %l2
7540Sstevel@tonic-gate	faligndata	%f52, %f2, %f2
7550Sstevel@tonic-gate
7560Sstevel@tonic-gate	srl		%o4, 27, %l3
7570Sstevel@tonic-gate	xor		%l1, %o1, %l1
7580Sstevel@tonic-gate	faligndata	%f52, %f10, %f10
7590Sstevel@tonic-gate
7600Sstevel@tonic-gate	sll		%o5, 30, %l5
7610Sstevel@tonic-gate	or		%l0, %l3, %l0
7620Sstevel@tonic-gate	fpadd32s	%f12, %f12, %f12
7630Sstevel@tonic-gate
7640Sstevel@tonic-gate	add		%o2, %g1, %l4
7650Sstevel@tonic-gate	add		%l0, %l1, %l0
7660Sstevel@tonic-gate	fxor		%f26, %f28, %f14
7670Sstevel@tonic-gate	fmul8x16	%f2, %f54, %f6
7680Sstevel@tonic-gate
7690Sstevel@tonic-gate	srl		%o5,  2, %l7
7700Sstevel@tonic-gate	add		%l0, %l4, %l0
7710Sstevel@tonic-gate	fxor		%f38, %f22, %f38
7720Sstevel@tonic-gate	fmul8x16	%f3, %f54, %f2
7730Sstevel@tonic-gate
7740Sstevel@tonic-gate	or		%l5, %l7, %o5
7750Sstevel@tonic-gate	add		%l0, %l2, %o3
7760Sstevel@tonic-gate	fmovs		%f9, %f18
7770Sstevel@tonic-gate	fmul8x16	%f10, %f54, %f10
7780Sstevel@tonic-gate
7790Sstevel@tonic-gate! Starting round 21
7800Sstevel@tonic-gate	sll		%o3, 5, %l0
7810Sstevel@tonic-gate	xor		%o4, %o5, %l1
7820Sstevel@tonic-gate	ld		[%i0 + (21 * 4)], %l2
7830Sstevel@tonic-gate
7840Sstevel@tonic-gate	fxor		%f14, %f20, %f14
7850Sstevel@tonic-gate	srl		%o3, 27, %l3
7860Sstevel@tonic-gate	xor		%l1, %o0, %l1
7870Sstevel@tonic-gate	fors		%f4, %f7, %f1
7880Sstevel@tonic-gate	st		%f1, [%i0 + (31*4) + (4)]
7890Sstevel@tonic-gate
7900Sstevel@tonic-gate	sll		%o4, 30, %l5
7910Sstevel@tonic-gate	or		%l0, %l3, %l0
7920Sstevel@tonic-gate	fors		%f5, %f3, %f8
7930Sstevel@tonic-gate	st		%f8, [%i0 + (31*4) + (8)]
7940Sstevel@tonic-gate
7950Sstevel@tonic-gate	add		%o1, %g1, %l4
7960Sstevel@tonic-gate	add		%l0, %l1, %l0
7970Sstevel@tonic-gate	fors		%f12, %f11, %f0
7980Sstevel@tonic-gate	st		%f0, [%i0 + (31*4) + (0)]
7990Sstevel@tonic-gate
8000Sstevel@tonic-gate	srl		%o4,  2, %l7
8010Sstevel@tonic-gate	add		%l0, %l4, %l0
8020Sstevel@tonic-gate	fors		%f4, %f7, %f16
8030Sstevel@tonic-gate
8040Sstevel@tonic-gate	or		%l5, %l7, %o4
8050Sstevel@tonic-gate	add		%l0, %l2, %o2
8060Sstevel@tonic-gate	fors		%f5, %f3, %f17
8070Sstevel@tonic-gate
8080Sstevel@tonic-gate	fors		%f12, %f11, %f19
8090Sstevel@tonic-gate
8100Sstevel@tonic-gate! Starting round 22
8110Sstevel@tonic-gate	sll		%o2, 5, %l0
8120Sstevel@tonic-gate	xor		%o3, %o4, %l1
8130Sstevel@tonic-gate	ld		[%i0 + (22 * 4)], %l2
8140Sstevel@tonic-gate	fxor		%f38, %f0, %f36
8150Sstevel@tonic-gate
8160Sstevel@tonic-gate	srl		%o2, 27, %l3
8170Sstevel@tonic-gate	xor		%l1, %o5, %l1
8180Sstevel@tonic-gate	fxors		%f14, %f8, %f12
8190Sstevel@tonic-gate
8200Sstevel@tonic-gate	sll		%o3, 30, %l5
8210Sstevel@tonic-gate	or		%l0, %l3, %l0
8220Sstevel@tonic-gate	fxor		%f26, %f28, %f14
8230Sstevel@tonic-gate
8240Sstevel@tonic-gate	add		%o0, %g1, %l4
8250Sstevel@tonic-gate	add		%l0, %l1, %l0
8260Sstevel@tonic-gate	fand		%f50, %f36, %f2
8270Sstevel@tonic-gate
8280Sstevel@tonic-gate	srl		%o3,  2, %l7
8290Sstevel@tonic-gate	add		%l0, %l4, %l0
8300Sstevel@tonic-gate	fand		%f50, %f12, %f10
8310Sstevel@tonic-gate
8320Sstevel@tonic-gate	or		%l5, %l7, %o3
8330Sstevel@tonic-gate	add		%l0, %l2, %o1
8340Sstevel@tonic-gate
8350Sstevel@tonic-gate	fpadd32		%f36, %f36, %f4
8360Sstevel@tonic-gate
8370Sstevel@tonic-gate! Starting round 23
8380Sstevel@tonic-gate	sll		%o1, 5, %l0
8390Sstevel@tonic-gate	xor		%o2, %o3, %l1
8400Sstevel@tonic-gate	ld		[%i0 + (23 * 4)], %l2
8410Sstevel@tonic-gate	faligndata	%f52, %f2, %f2
8420Sstevel@tonic-gate
8430Sstevel@tonic-gate	srl		%o1, 27, %l3
8440Sstevel@tonic-gate	xor		%l1, %o4, %l1
8450Sstevel@tonic-gate
8460Sstevel@tonic-gate	faligndata	%f52, %f10, %f10
8470Sstevel@tonic-gate
8480Sstevel@tonic-gate	sll		%o2, 30, %l5
8490Sstevel@tonic-gate	or		%l0, %l3, %l0
8500Sstevel@tonic-gate	fpadd32s	%f12, %f12, %f12
8510Sstevel@tonic-gate
8520Sstevel@tonic-gate	add		%o5, %g1, %l4
8530Sstevel@tonic-gate	add		%l0, %l1, %l0
8540Sstevel@tonic-gate	fxor		%f24, %f26, %f38
8550Sstevel@tonic-gate	fmul8x16	%f2, %f54, %f6
8560Sstevel@tonic-gate
8570Sstevel@tonic-gate	srl		%o2,  2, %l7
8580Sstevel@tonic-gate	add		%l0, %l4, %l0
8590Sstevel@tonic-gate	fxor		%f14, %f20, %f14
8600Sstevel@tonic-gate	fmul8x16	%f3, %f54, %f2
8610Sstevel@tonic-gate
8620Sstevel@tonic-gate	or		%l5, %l7, %o2
8630Sstevel@tonic-gate	add		%l0, %l2, %o0
8640Sstevel@tonic-gate	fmul8x16	%f10, %f54, %f10
8650Sstevel@tonic-gate
8660Sstevel@tonic-gate! Starting round 24
8670Sstevel@tonic-gate	sll		%o0, 5, %l0
8680Sstevel@tonic-gate	xor		%o1, %o2, %l1
8690Sstevel@tonic-gate	ld		[%i0 + (24 * 4)], %l2
8700Sstevel@tonic-gate
8710Sstevel@tonic-gate	fxor		%f38, %f18, %f38
8720Sstevel@tonic-gate	srl		%o0, 27, %l3
8730Sstevel@tonic-gate	xor		%l1, %o3, %l1
8740Sstevel@tonic-gate	fors		%f4, %f7, %f8
8750Sstevel@tonic-gate	st		%f8, [%i0 + (34*4) + (0)]
8760Sstevel@tonic-gate
8770Sstevel@tonic-gate	sll		%o1, 30, %l5
8780Sstevel@tonic-gate	or		%l0, %l3, %l0
8790Sstevel@tonic-gate	fors		%f5, %f3, %f0
8800Sstevel@tonic-gate	st		%f0, [%i0 + (34*4) + (4)]
8810Sstevel@tonic-gate
8820Sstevel@tonic-gate	add		%o4, %g1, %l4
8830Sstevel@tonic-gate	add		%l0, %l1, %l0
8840Sstevel@tonic-gate	fors		%f12, %f11, %f1
8850Sstevel@tonic-gate	st		%f1, [%i0 + (34*4) + (8)]
8860Sstevel@tonic-gate
8870Sstevel@tonic-gate	srl		%o1,  2, %l7
8880Sstevel@tonic-gate	add		%l0, %l4, %l0
8890Sstevel@tonic-gate	fors		%f4, %f7, %f30
8900Sstevel@tonic-gate
8910Sstevel@tonic-gate	or		%l5, %l7, %o1
8920Sstevel@tonic-gate	add		%l0, %l2, %o5
8930Sstevel@tonic-gate	fors		%f5, %f3, %f31
8940Sstevel@tonic-gate
8950Sstevel@tonic-gate	fors		%f12, %f11, %f9
8960Sstevel@tonic-gate
8970Sstevel@tonic-gate! Starting round 25
8980Sstevel@tonic-gate	sll		%o5, 5, %l0
8990Sstevel@tonic-gate	xor		%o0, %o1, %l1
9000Sstevel@tonic-gate	ld		[%i0 + (25 * 4)], %l2
9010Sstevel@tonic-gate	fxor		%f38, %f0, %f36
9020Sstevel@tonic-gate
9030Sstevel@tonic-gate	srl		%o5, 27, %l3
9040Sstevel@tonic-gate	xor		%l1, %o2, %l1
9050Sstevel@tonic-gate	fxors		%f15, %f8, %f12
9060Sstevel@tonic-gate
9070Sstevel@tonic-gate	sll		%o0, 30, %l5
9080Sstevel@tonic-gate	or		%l0, %l3, %l0
9090Sstevel@tonic-gate	fxor		%f22, %f24, %f38
9100Sstevel@tonic-gate
9110Sstevel@tonic-gate	add		%o3, %g1, %l4
9120Sstevel@tonic-gate	add		%l0, %l1, %l0
9130Sstevel@tonic-gate	fand		%f50, %f36, %f2
9140Sstevel@tonic-gate
9150Sstevel@tonic-gate	srl		%o0,  2, %l7
9160Sstevel@tonic-gate	add		%l0, %l4, %l0
9170Sstevel@tonic-gate	fand		%f50, %f12, %f10
9180Sstevel@tonic-gate
9190Sstevel@tonic-gate	or		%l5, %l7, %o0
9200Sstevel@tonic-gate	add		%l0, %l2, %o4
9210Sstevel@tonic-gate
9220Sstevel@tonic-gate	fpadd32		%f36, %f36, %f4
9230Sstevel@tonic-gate
9240Sstevel@tonic-gate! Starting round 26
9250Sstevel@tonic-gate	sll		%o4, 5, %l0
9260Sstevel@tonic-gate	xor		%o5, %o0, %l1
9270Sstevel@tonic-gate	ld		[%i0 + (26 * 4)], %l2
9280Sstevel@tonic-gate	faligndata	%f52, %f2, %f2
9290Sstevel@tonic-gate
9300Sstevel@tonic-gate	srl		%o4, 27, %l3
9310Sstevel@tonic-gate	xor		%l1, %o1, %l1
9320Sstevel@tonic-gate
9330Sstevel@tonic-gate	faligndata	%f52, %f10, %f10
9340Sstevel@tonic-gate
9350Sstevel@tonic-gate	sll		%o5, 30, %l5
9360Sstevel@tonic-gate	or		%l0, %l3, %l0
9370Sstevel@tonic-gate	fpadd32s	%f12, %f12, %f12
9380Sstevel@tonic-gate
9390Sstevel@tonic-gate	add		%o2, %g1, %l4
9400Sstevel@tonic-gate	add		%l0, %l1, %l0
9410Sstevel@tonic-gate	fxor		%f20, %f22, %f14
9420Sstevel@tonic-gate	fmul8x16	%f2, %f54, %f6
9430Sstevel@tonic-gate
9440Sstevel@tonic-gate	srl		%o5,  2, %l7
9450Sstevel@tonic-gate	add		%l0, %l4, %l0
9460Sstevel@tonic-gate	fxor		%f38, %f16, %f38
9470Sstevel@tonic-gate	fmul8x16	%f3, %f54, %f2
9480Sstevel@tonic-gate
9490Sstevel@tonic-gate	or		%l5, %l7, %o5
9500Sstevel@tonic-gate	add		%l0, %l2, %o3
9510Sstevel@tonic-gate	fmovs		%f9, %f28
9520Sstevel@tonic-gate	fmul8x16	%f10, %f54, %f10
9530Sstevel@tonic-gate
9540Sstevel@tonic-gate! Starting round 27
9550Sstevel@tonic-gate	sll		%o3, 5, %l0
9560Sstevel@tonic-gate	xor		%o4, %o5, %l1
9570Sstevel@tonic-gate	ld		[%i0 + (27 * 4)], %l2
9580Sstevel@tonic-gate
9590Sstevel@tonic-gate	fxor		%f14, %f30, %f14
9600Sstevel@tonic-gate	srl		%o3, 27, %l3
9610Sstevel@tonic-gate	xor		%l1, %o0, %l1
9620Sstevel@tonic-gate	fors		%f4, %f7, %f1
9630Sstevel@tonic-gate	st		%f1, [%i0 + (37*4) + (4)]
9640Sstevel@tonic-gate
9650Sstevel@tonic-gate	sll		%o4, 30, %l5
9660Sstevel@tonic-gate	or		%l0, %l3, %l0
9670Sstevel@tonic-gate	fors		%f5, %f3, %f8
9680Sstevel@tonic-gate	st		%f8, [%i0 + (37*4) + (8)]
9690Sstevel@tonic-gate
9700Sstevel@tonic-gate	add		%o1, %g1, %l4
9710Sstevel@tonic-gate	add		%l0, %l1, %l0
9720Sstevel@tonic-gate	fors		%f12, %f11, %f0
9730Sstevel@tonic-gate	st		%f0, [%i0 + (37*4) + (0)]
9740Sstevel@tonic-gate
9750Sstevel@tonic-gate	srl		%o4,  2, %l7
9760Sstevel@tonic-gate	add		%l0, %l4, %l0
9770Sstevel@tonic-gate	fors		%f4, %f7, %f26
9780Sstevel@tonic-gate
9790Sstevel@tonic-gate	or		%l5, %l7, %o4
9800Sstevel@tonic-gate	add		%l0, %l2, %o2
9810Sstevel@tonic-gate	fors		%f5, %f3, %f27
9820Sstevel@tonic-gate
9830Sstevel@tonic-gate	fors		%f12, %f11, %f29
9840Sstevel@tonic-gate
9850Sstevel@tonic-gate! Starting round 28
9860Sstevel@tonic-gate	sll		%o2, 5, %l0
9870Sstevel@tonic-gate	xor		%o3, %o4, %l1
9880Sstevel@tonic-gate	ld		[%i0 + (28 * 4)], %l2
9890Sstevel@tonic-gate	fxor		%f38, %f0, %f36
9900Sstevel@tonic-gate
9910Sstevel@tonic-gate	srl		%o2, 27, %l3
9920Sstevel@tonic-gate	xor		%l1, %o5, %l1
9930Sstevel@tonic-gate	fxors		%f14, %f8, %f12
9940Sstevel@tonic-gate
9950Sstevel@tonic-gate	sll		%o3, 30, %l5
9960Sstevel@tonic-gate	or		%l0, %l3, %l0
9970Sstevel@tonic-gate	fxor		%f20, %f22, %f14
9980Sstevel@tonic-gate
9990Sstevel@tonic-gate	add		%o0, %g1, %l4
10000Sstevel@tonic-gate	add		%l0, %l1, %l0
10010Sstevel@tonic-gate	fand		%f50, %f36, %f2
10020Sstevel@tonic-gate
10030Sstevel@tonic-gate	srl		%o3,  2, %l7
10040Sstevel@tonic-gate	add		%l0, %l4, %l0
10050Sstevel@tonic-gate	fand		%f50, %f12, %f10
10060Sstevel@tonic-gate
10070Sstevel@tonic-gate	or		%l5, %l7, %o3
10080Sstevel@tonic-gate	add		%l0, %l2, %o1
10090Sstevel@tonic-gate
10100Sstevel@tonic-gate	fpadd32		%f36, %f36, %f4
10110Sstevel@tonic-gate
10120Sstevel@tonic-gate! Starting round 29
10130Sstevel@tonic-gate	sll		%o1, 5, %l0
10140Sstevel@tonic-gate	xor		%o2, %o3, %l1
10150Sstevel@tonic-gate	ld		[%i0 + (29 * 4)], %l2
10160Sstevel@tonic-gate	faligndata	%f52, %f2, %f2
10170Sstevel@tonic-gate
10180Sstevel@tonic-gate	srl		%o1, 27, %l3
10190Sstevel@tonic-gate	xor		%l1, %o4, %l1
10200Sstevel@tonic-gate
10210Sstevel@tonic-gate	faligndata	%f52, %f10, %f10
10220Sstevel@tonic-gate
10230Sstevel@tonic-gate	sll		%o2, 30, %l5
10240Sstevel@tonic-gate	or		%l0, %l3, %l0
10250Sstevel@tonic-gate	fpadd32s	%f12, %f12, %f12
10260Sstevel@tonic-gate
10270Sstevel@tonic-gate	add		%o5, %g1, %l4
10280Sstevel@tonic-gate	add		%l0, %l1, %l0
10290Sstevel@tonic-gate	fxor		%f18, %f20, %f38
10300Sstevel@tonic-gate	fmul8x16	%f2, %f54, %f6
10310Sstevel@tonic-gate
10320Sstevel@tonic-gate	srl		%o2,  2, %l7
10330Sstevel@tonic-gate	add		%l0, %l4, %l0
10340Sstevel@tonic-gate	fxor		%f14, %f30, %f14
10350Sstevel@tonic-gate	fmul8x16	%f3, %f54, %f2
10360Sstevel@tonic-gate
10370Sstevel@tonic-gate	or		%l5, %l7, %o2
10380Sstevel@tonic-gate	add		%l0, %l2, %o0
10390Sstevel@tonic-gate	fmul8x16	%f10, %f54, %f10
10400Sstevel@tonic-gate
10410Sstevel@tonic-gate! Starting round 30
10420Sstevel@tonic-gate	sll		%o0, 5, %l0
10430Sstevel@tonic-gate	xor		%o1, %o2, %l1
10440Sstevel@tonic-gate	ld		[%i0 + (30 * 4)], %l2
10450Sstevel@tonic-gate
10460Sstevel@tonic-gate	fxor		%f38, %f28, %f38
10470Sstevel@tonic-gate	srl		%o0, 27, %l3
10480Sstevel@tonic-gate	xor		%l1, %o3, %l1
10490Sstevel@tonic-gate	fors		%f4, %f7, %f8
10500Sstevel@tonic-gate	st		%f8, [%i0 + (40*4) + (0)]
10510Sstevel@tonic-gate
10520Sstevel@tonic-gate	sll		%o1, 30, %l5
10530Sstevel@tonic-gate	or		%l0, %l3, %l0
10540Sstevel@tonic-gate	fors		%f5, %f3, %f0
10550Sstevel@tonic-gate	st		%f0, [%i0 + (40*4) + (4)]
10560Sstevel@tonic-gate
10570Sstevel@tonic-gate	add		%o4, %g1, %l4
10580Sstevel@tonic-gate	add		%l0, %l1, %l0
10590Sstevel@tonic-gate	fors		%f12, %f11, %f1
10600Sstevel@tonic-gate	st		%f1, [%i0 + (40*4) + (8)]
10610Sstevel@tonic-gate
10620Sstevel@tonic-gate	srl		%o1,  2, %l7
10630Sstevel@tonic-gate	add		%l0, %l4, %l0
10640Sstevel@tonic-gate	fors		%f4, %f7, %f24
10650Sstevel@tonic-gate
10660Sstevel@tonic-gate	or		%l5, %l7, %o1
10670Sstevel@tonic-gate	add		%l0, %l2, %o5
10680Sstevel@tonic-gate	fors		%f5, %f3, %f25
10690Sstevel@tonic-gate
10700Sstevel@tonic-gate	fors		%f12, %f11, %f9
10710Sstevel@tonic-gate
10720Sstevel@tonic-gate! Starting round 31
10730Sstevel@tonic-gate	sll		%o5, 5, %l0
10740Sstevel@tonic-gate	xor		%o0, %o1, %l1
10750Sstevel@tonic-gate	ld		[%i0 + (31 * 4)], %l2
10760Sstevel@tonic-gate	fxor		%f38, %f0, %f36
10770Sstevel@tonic-gate
10780Sstevel@tonic-gate	srl		%o5, 27, %l3
10790Sstevel@tonic-gate	xor		%l1, %o2, %l1
10800Sstevel@tonic-gate	fxors		%f15, %f8, %f12
10810Sstevel@tonic-gate
10820Sstevel@tonic-gate	sll		%o0, 30, %l5
10830Sstevel@tonic-gate	or		%l0, %l3, %l0
10840Sstevel@tonic-gate	fxor		%f16, %f18, %f38
10850Sstevel@tonic-gate
10860Sstevel@tonic-gate	add		%o3, %g1, %l4
10870Sstevel@tonic-gate	add		%l0, %l1, %l0
10880Sstevel@tonic-gate	fand		%f50, %f36, %f2
10890Sstevel@tonic-gate
10900Sstevel@tonic-gate	srl		%o0,  2, %l7
10910Sstevel@tonic-gate	add		%l0, %l4, %l0
10920Sstevel@tonic-gate	fand		%f50, %f12, %f10
10930Sstevel@tonic-gate
10940Sstevel@tonic-gate	or		%l5, %l7, %o0
10950Sstevel@tonic-gate	add		%l0, %l2, %o4
10960Sstevel@tonic-gate	fpadd32		%f36, %f36, %f4
10970Sstevel@tonic-gate
10980Sstevel@tonic-gate! Starting round 32
10990Sstevel@tonic-gate	sll		%o4, 5, %l0
11000Sstevel@tonic-gate	xor		%o5, %o0, %l1
11010Sstevel@tonic-gate	ld		[%i0 + (32 * 4)], %l2
11020Sstevel@tonic-gate	faligndata	%f52, %f2, %f2
11030Sstevel@tonic-gate
11040Sstevel@tonic-gate	srl		%o4, 27, %l3
11050Sstevel@tonic-gate	xor		%l1, %o1, %l1
11060Sstevel@tonic-gate	faligndata	%f52, %f10, %f10
11070Sstevel@tonic-gate
11080Sstevel@tonic-gate	sll		%o5, 30, %l5
11090Sstevel@tonic-gate	or		%l0, %l3, %l0
11100Sstevel@tonic-gate	fpadd32s	%f12, %f12, %f12
11110Sstevel@tonic-gate
11120Sstevel@tonic-gate	add		%o2, %g1, %l4
11130Sstevel@tonic-gate	add		%l0, %l1, %l0
11140Sstevel@tonic-gate	fxor		%f30, %f16, %f14
11150Sstevel@tonic-gate	fmul8x16	%f2, %f54, %f6
11160Sstevel@tonic-gate
11170Sstevel@tonic-gate	srl		%o5,  2, %l7
11180Sstevel@tonic-gate	add		%l0, %l4, %l0
11190Sstevel@tonic-gate	fxor		%f38, %f26, %f38
11200Sstevel@tonic-gate	fmul8x16	%f3, %f54, %f2
11210Sstevel@tonic-gate
11220Sstevel@tonic-gate	or		%l5, %l7, %o5
11230Sstevel@tonic-gate	add		%l0, %l2, %o3
11240Sstevel@tonic-gate	fmovs		%f9, %f22
11250Sstevel@tonic-gate	fmul8x16	%f10, %f54, %f10
11260Sstevel@tonic-gate
11270Sstevel@tonic-gate! Starting round 33
11280Sstevel@tonic-gate	sll		%o3, 5, %l0
11290Sstevel@tonic-gate	xor		%o4, %o5, %l1
11300Sstevel@tonic-gate	ld		[%i0 + (33 * 4)], %l2
11310Sstevel@tonic-gate	fxor		%f14, %f24, %f14
11320Sstevel@tonic-gate
11330Sstevel@tonic-gate	srl		%o3, 27, %l3
11340Sstevel@tonic-gate	xor		%l1, %o0, %l1
11350Sstevel@tonic-gate	fors		%f4, %f7, %f1
11360Sstevel@tonic-gate	st		%f1, [%i0 + (43*4) + (4)]
11370Sstevel@tonic-gate
11380Sstevel@tonic-gate	sll		%o4, 30, %l5
11390Sstevel@tonic-gate	or		%l0, %l3, %l0
11400Sstevel@tonic-gate	fors		%f5, %f3, %f8
11410Sstevel@tonic-gate	st		%f8, [%i0 + (43*4) + (8)]
11420Sstevel@tonic-gate
11430Sstevel@tonic-gate	add		%o1, %g1, %l4
11440Sstevel@tonic-gate	add		%l0, %l1, %l0
11450Sstevel@tonic-gate	fors		%f12, %f11, %f0
11460Sstevel@tonic-gate	st		%f0, [%i0 + (43*4) + (0)]
11470Sstevel@tonic-gate
11480Sstevel@tonic-gate	srl		%o4,  2, %l7
11490Sstevel@tonic-gate	add		%l0, %l4, %l0
11500Sstevel@tonic-gate	fors		%f4, %f7, %f20
11510Sstevel@tonic-gate
11520Sstevel@tonic-gate	or		%l5, %l7, %o4
11530Sstevel@tonic-gate	add		%l0, %l2, %o2
11540Sstevel@tonic-gate	fors		%f5, %f3, %f21
11550Sstevel@tonic-gate
11560Sstevel@tonic-gate	fors		%f12, %f11, %f23
11570Sstevel@tonic-gate
11580Sstevel@tonic-gate! Starting round 34
11590Sstevel@tonic-gate	sll		%o2, 5, %l0
11600Sstevel@tonic-gate	xor		%o3, %o4, %l1
11610Sstevel@tonic-gate	ld		[%i0 + (34 * 4)], %l2
11620Sstevel@tonic-gate	fxor		%f38, %f0, %f36
11630Sstevel@tonic-gate
11640Sstevel@tonic-gate	srl		%o2, 27, %l3
11650Sstevel@tonic-gate	xor		%l1, %o5, %l1
11660Sstevel@tonic-gate	fxors		%f14, %f8, %f12
11670Sstevel@tonic-gate
11680Sstevel@tonic-gate	sll		%o3, 30, %l5
11690Sstevel@tonic-gate	or		%l0, %l3, %l0
11700Sstevel@tonic-gate	fxor		%f30, %f16, %f14
11710Sstevel@tonic-gate
11720Sstevel@tonic-gate	add		%o0, %g1, %l4
11730Sstevel@tonic-gate	add		%l0, %l1, %l0
11740Sstevel@tonic-gate	fand		%f50, %f36, %f2
11750Sstevel@tonic-gate
11760Sstevel@tonic-gate	srl		%o3,  2, %l7
11770Sstevel@tonic-gate	add		%l0, %l4, %l0
11780Sstevel@tonic-gate	fand		%f50, %f12, %f10
11790Sstevel@tonic-gate
11800Sstevel@tonic-gate	or		%l5, %l7, %o3
11810Sstevel@tonic-gate	add		%l0, %l2, %o1
11820Sstevel@tonic-gate	fpadd32		%f36, %f36, %f4
11830Sstevel@tonic-gate
11840Sstevel@tonic-gate! Starting round 35
11850Sstevel@tonic-gate	sll		%o1, 5, %l0
11860Sstevel@tonic-gate	xor		%o2, %o3, %l1
11870Sstevel@tonic-gate	ld		[%i0 + (35 * 4)], %l2
11880Sstevel@tonic-gate	faligndata	%f52, %f2, %f2
11890Sstevel@tonic-gate
11900Sstevel@tonic-gate	srl		%o1, 27, %l3
11910Sstevel@tonic-gate	xor		%l1, %o4, %l1
11920Sstevel@tonic-gate	faligndata	%f52, %f10, %f10
11930Sstevel@tonic-gate
11940Sstevel@tonic-gate	sll		%o2, 30, %l5
11950Sstevel@tonic-gate	or		%l0, %l3, %l0
11960Sstevel@tonic-gate	fpadd32s	%f12, %f12, %f12
11970Sstevel@tonic-gate
11980Sstevel@tonic-gate	add		%o5, %g1, %l4
11990Sstevel@tonic-gate	add		%l0, %l1, %l0
12000Sstevel@tonic-gate	fxor		%f28, %f30, %f38
12010Sstevel@tonic-gate	fmul8x16	%f2, %f54, %f6
12020Sstevel@tonic-gate
12030Sstevel@tonic-gate	srl		%o2,  2, %l7
12040Sstevel@tonic-gate	add		%l0, %l4, %l0
12050Sstevel@tonic-gate	fxor		%f14, %f24, %f14
12060Sstevel@tonic-gate	fmul8x16	%f3, %f54, %f2
12070Sstevel@tonic-gate
12080Sstevel@tonic-gate	or		%l5, %l7, %o2
12090Sstevel@tonic-gate	add		%l0, %l2, %o0
12100Sstevel@tonic-gate	fmul8x16	%f10, %f54, %f10
12110Sstevel@tonic-gate
12120Sstevel@tonic-gate! Starting round 36
12130Sstevel@tonic-gate	sll		%o0, 5, %l0
12140Sstevel@tonic-gate	xor		%o1, %o2, %l1
12150Sstevel@tonic-gate	ld		[%i0 + (36 * 4)], %l2
12160Sstevel@tonic-gate	fxor		%f38, %f22, %f38
12170Sstevel@tonic-gate
12180Sstevel@tonic-gate	srl		%o0, 27, %l3
12190Sstevel@tonic-gate	xor		%l1, %o3, %l1
12200Sstevel@tonic-gate	fors		%f4, %f7, %f8
12210Sstevel@tonic-gate	st		%f8, [%i0 + (46*4) + (0)]
12220Sstevel@tonic-gate
12230Sstevel@tonic-gate	sll		%o1, 30, %l5
12240Sstevel@tonic-gate	or		%l0, %l3, %l0
12250Sstevel@tonic-gate	fors		%f5, %f3, %f0
12260Sstevel@tonic-gate	st		%f0, [%i0 + (46*4) + (4)]
12270Sstevel@tonic-gate
12280Sstevel@tonic-gate	add		%o4, %g1, %l4
12290Sstevel@tonic-gate	add		%l0, %l1, %l0
12300Sstevel@tonic-gate	fors		%f12, %f11, %f1
12310Sstevel@tonic-gate	st		%f1, [%i0 + (46*4) + (8)]
12320Sstevel@tonic-gate
12330Sstevel@tonic-gate	srl		%o1,  2, %l7
12340Sstevel@tonic-gate	add		%l0, %l4, %l0
12350Sstevel@tonic-gate	fors		%f4, %f7, %f18
12360Sstevel@tonic-gate
12370Sstevel@tonic-gate	or		%l5, %l7, %o1
12380Sstevel@tonic-gate	add		%l0, %l2, %o5
12390Sstevel@tonic-gate	fors		%f5, %f3, %f19
12400Sstevel@tonic-gate
12410Sstevel@tonic-gate	fors		%f12, %f11, %f9
12420Sstevel@tonic-gate
12430Sstevel@tonic-gate! Starting round 37
12440Sstevel@tonic-gate	sll		%o5, 5, %l0
12450Sstevel@tonic-gate	xor		%o0, %o1, %l1
12460Sstevel@tonic-gate	ld		[%i0 + (37 * 4)], %l2
12470Sstevel@tonic-gate	fxor		%f38, %f0, %f36
12480Sstevel@tonic-gate
12490Sstevel@tonic-gate	srl		%o5, 27, %l3
12500Sstevel@tonic-gate	xor		%l1, %o2, %l1
12510Sstevel@tonic-gate	fxors		%f15, %f8, %f12
12520Sstevel@tonic-gate
12530Sstevel@tonic-gate	sll		%o0, 30, %l5
12540Sstevel@tonic-gate	or		%l0, %l3, %l0
12550Sstevel@tonic-gate	fxor		%f26, %f28, %f38
12560Sstevel@tonic-gate
12570Sstevel@tonic-gate	add		%o3, %g1, %l4
12580Sstevel@tonic-gate	add		%l0, %l1, %l0
12590Sstevel@tonic-gate	fand		%f50, %f36, %f2
12600Sstevel@tonic-gate
12610Sstevel@tonic-gate	srl		%o0,  2, %l7
12620Sstevel@tonic-gate	add		%l0, %l4, %l0
12630Sstevel@tonic-gate	fand		%f50, %f12, %f10
12640Sstevel@tonic-gate
12650Sstevel@tonic-gate	or		%l5, %l7, %o0
12660Sstevel@tonic-gate	add		%l0, %l2, %o4
12670Sstevel@tonic-gate	fpadd32		%f36, %f36, %f4
12680Sstevel@tonic-gate
12690Sstevel@tonic-gate! Starting round 38
12700Sstevel@tonic-gate	sll		%o4, 5, %l0
12710Sstevel@tonic-gate	xor		%o5, %o0, %l1
12720Sstevel@tonic-gate	ld		[%i0 + (38 * 4)], %l2
12730Sstevel@tonic-gate	faligndata	%f52, %f2, %f2
12740Sstevel@tonic-gate
12750Sstevel@tonic-gate	srl		%o4, 27, %l3
12760Sstevel@tonic-gate	xor		%l1, %o1, %l1
12770Sstevel@tonic-gate	faligndata	%f52, %f10, %f10
12780Sstevel@tonic-gate
12790Sstevel@tonic-gate	sll		%o5, 30, %l5
12800Sstevel@tonic-gate	or		%l0, %l3, %l0
12810Sstevel@tonic-gate	fpadd32s	%f12, %f12, %f12
12820Sstevel@tonic-gate
12830Sstevel@tonic-gate	add		%o2, %g1, %l4
12840Sstevel@tonic-gate	add		%l0, %l1, %l0
12850Sstevel@tonic-gate	fxor		%f24, %f26, %f14
12860Sstevel@tonic-gate	fmul8x16	%f2, %f54, %f6
12870Sstevel@tonic-gate
12880Sstevel@tonic-gate	srl		%o5,  2, %l7
12890Sstevel@tonic-gate	add		%l0, %l4, %l0
12900Sstevel@tonic-gate	fxor		%f38, %f20, %f38
12910Sstevel@tonic-gate	fmul8x16	%f3, %f54, %f2
12920Sstevel@tonic-gate
12930Sstevel@tonic-gate	or		%l5, %l7, %o5
12940Sstevel@tonic-gate	add		%l0, %l2, %o3
12950Sstevel@tonic-gate	fmovs		%f9, %f16
12960Sstevel@tonic-gate	fmul8x16	%f10, %f54, %f10
12970Sstevel@tonic-gate
12980Sstevel@tonic-gate! Starting round 39
12990Sstevel@tonic-gate	sll		%o3, 5, %l0
13000Sstevel@tonic-gate	xor		%o4, %o5, %l1
13010Sstevel@tonic-gate	ld		[%i0 + (39 * 4)], %l2
13020Sstevel@tonic-gate	fxor		%f14, %f18, %f14
13030Sstevel@tonic-gate
13040Sstevel@tonic-gate	srl		%o3, 27, %l3
13050Sstevel@tonic-gate	xor		%l1, %o0, %l1
13060Sstevel@tonic-gate	fors		%f4, %f7, %f1
13070Sstevel@tonic-gate	st		%f1, [%i0 + (49*4) + (4)]
13080Sstevel@tonic-gate
13090Sstevel@tonic-gate	sll		%o4, 30, %l5
13100Sstevel@tonic-gate	or		%l0, %l3, %l0
13110Sstevel@tonic-gate	fors		%f5, %f3, %f8
13120Sstevel@tonic-gate	st		%f8, [%i0 + (49*4) + (8)]
13130Sstevel@tonic-gate
13140Sstevel@tonic-gate	add		%o1, %g1, %l4
13150Sstevel@tonic-gate	add		%l0, %l1, %l0
13160Sstevel@tonic-gate	fors		%f12, %f11, %f0
13170Sstevel@tonic-gate	st		%f0, [%i0 + (49*4) + (0)]
13180Sstevel@tonic-gate
13190Sstevel@tonic-gate	srl		%o4,  2, %l7
13200Sstevel@tonic-gate	add		%l0, %l4, %l0
13210Sstevel@tonic-gate	fors		%f4, %f7, %f30
13220Sstevel@tonic-gate
13230Sstevel@tonic-gate	or		%l5, %l7, %o4
13240Sstevel@tonic-gate	add		%l0, %l2, %o2
13250Sstevel@tonic-gate	fors		%f5, %f3, %f31
13260Sstevel@tonic-gate
13270Sstevel@tonic-gate	fors		%f12, %f11, %f17
13280Sstevel@tonic-gate	ld 		[%i3 + 8 + 16], %g1
13290Sstevel@tonic-gate
13300Sstevel@tonic-gate! Starting round 40
13310Sstevel@tonic-gate	sll		%o2, 5, %l0
13320Sstevel@tonic-gate	and		%o3, %o4, %l1
13330Sstevel@tonic-gate	ld		[%i0 + (40 * 4)], %l2
13340Sstevel@tonic-gate	fxor		%f38, %f0, %f36
13350Sstevel@tonic-gate
13360Sstevel@tonic-gate	srl		%o2, 27, %l3
13370Sstevel@tonic-gate	or		%o3, %o4, %l4
13380Sstevel@tonic-gate	fxors		%f14, %f8, %f12
13390Sstevel@tonic-gate
13400Sstevel@tonic-gate	sll		%o3, 30, %l5
13410Sstevel@tonic-gate	and		%l4, %o5, %l4
13420Sstevel@tonic-gate	fxor		%f24, %f26, %f14
13430Sstevel@tonic-gate
13440Sstevel@tonic-gate	add		%o0, %g1, %l6
13450Sstevel@tonic-gate	or		%l1, %l4, %l1
13460Sstevel@tonic-gate	fand		%f50, %f36, %f2
13470Sstevel@tonic-gate
13480Sstevel@tonic-gate	or		%l0, %l3, %l0
13490Sstevel@tonic-gate	add		%l6, %l1, %l1
13500Sstevel@tonic-gate	fand		%f50, %f12, %f10
13510Sstevel@tonic-gate
13520Sstevel@tonic-gate	srl		%o3,  2, %l7
13530Sstevel@tonic-gate	add		%l0, %l1, %l0
13540Sstevel@tonic-gate	fpadd32		%f36, %f36, %f4
13550Sstevel@tonic-gate
13560Sstevel@tonic-gate	or		%l5, %l7, %o3
13570Sstevel@tonic-gate	add		%l0, %l2, %o1
13580Sstevel@tonic-gate
13590Sstevel@tonic-gate! Starting round 41
13600Sstevel@tonic-gate	sll		%o1, 5, %l0
13610Sstevel@tonic-gate	and		%o2, %o3, %l1
13620Sstevel@tonic-gate	ld		[%i0 + (41 * 4)], %l2
13630Sstevel@tonic-gate	faligndata	%f52, %f2, %f2
13640Sstevel@tonic-gate
13650Sstevel@tonic-gate	srl		%o1, 27, %l3
13660Sstevel@tonic-gate	or		%o2, %o3, %l4
13670Sstevel@tonic-gate	faligndata	%f52, %f10, %f10
13680Sstevel@tonic-gate
13690Sstevel@tonic-gate	sll		%o2, 30, %l5
13700Sstevel@tonic-gate	and		%l4, %o4, %l4
13710Sstevel@tonic-gate	fpadd32s	%f12, %f12, %f12
13720Sstevel@tonic-gate
13730Sstevel@tonic-gate	add		%o5, %g1, %l6
13740Sstevel@tonic-gate	or		%l1, %l4, %l1
13750Sstevel@tonic-gate	fxor		%f22, %f24, %f38
13760Sstevel@tonic-gate	fmul8x16	%f2, %f54, %f6
13770Sstevel@tonic-gate
13780Sstevel@tonic-gate	or		%l0, %l3, %l0
13790Sstevel@tonic-gate	add		%l6, %l1, %l1
13800Sstevel@tonic-gate	fxor		%f14, %f18, %f14
13810Sstevel@tonic-gate	fmul8x16	%f3, %f54, %f2
13820Sstevel@tonic-gate
13830Sstevel@tonic-gate	srl		%o2,  2, %l7
13840Sstevel@tonic-gate	add		%l0, %l1, %l0
13850Sstevel@tonic-gate	fmul8x16	%f10, %f54, %f10
13860Sstevel@tonic-gate
13870Sstevel@tonic-gate	or		%l5, %l7, %o2
13880Sstevel@tonic-gate	add		%l0, %l2, %o0
13890Sstevel@tonic-gate
13900Sstevel@tonic-gate! Starting round 42
13910Sstevel@tonic-gate	sll		%o0, 5, %l0
13920Sstevel@tonic-gate	and		%o1, %o2, %l1
13930Sstevel@tonic-gate	ld		[%i0 + (42 * 4)], %l2
13940Sstevel@tonic-gate	fxor		%f38, %f16, %f38
13950Sstevel@tonic-gate
13960Sstevel@tonic-gate	srl		%o0, 27, %l3
13970Sstevel@tonic-gate	or		%o1, %o2, %l4
13980Sstevel@tonic-gate	fors		%f4, %f7, %f8
13990Sstevel@tonic-gate	st		%f8, [%i0 + (52*4) +(0)]
14000Sstevel@tonic-gate
14010Sstevel@tonic-gate	sll		%o1, 30, %l5
14020Sstevel@tonic-gate	and		%l4, %o3, %l4
14030Sstevel@tonic-gate	fors		%f5, %f3, %f0
14040Sstevel@tonic-gate	st		%f0, [%i0 + (52*4) + (4)]
14050Sstevel@tonic-gate
14060Sstevel@tonic-gate	add		%o4, %g1, %l6
14070Sstevel@tonic-gate	or		%l1, %l4, %l1
14080Sstevel@tonic-gate	fors		%f12, %f11, %f1
14090Sstevel@tonic-gate	st		%f1, [%i0 + (52*4) + (8)]
14100Sstevel@tonic-gate
14110Sstevel@tonic-gate	or		%l0, %l3, %l0
14120Sstevel@tonic-gate	add		%l6, %l1, %l1
14130Sstevel@tonic-gate	fors		%f4, %f7, %f28
14140Sstevel@tonic-gate
14150Sstevel@tonic-gate	srl		%o1,  2, %l7
14160Sstevel@tonic-gate	add		%l0, %l1, %l0
14170Sstevel@tonic-gate	fors		%f5, %f3, %f29
14180Sstevel@tonic-gate
14190Sstevel@tonic-gate	or		%l5, %l7, %o1
14200Sstevel@tonic-gate	add		%l0, %l2, %o5
14210Sstevel@tonic-gate	fors		%f12, %f11, %f9
14220Sstevel@tonic-gate
14230Sstevel@tonic-gate! Starting round 43
14240Sstevel@tonic-gate	sll		%o5, 5, %l0
14250Sstevel@tonic-gate	and		%o0, %o1, %l1
14260Sstevel@tonic-gate	ld		[%i0 + (43 * 4)], %l2
14270Sstevel@tonic-gate	fxor		%f38, %f0, %f36
14280Sstevel@tonic-gate
14290Sstevel@tonic-gate	srl		%o5, 27, %l3
14300Sstevel@tonic-gate	or		%o0, %o1, %l4
14310Sstevel@tonic-gate	fxors		%f15, %f8, %f12
14320Sstevel@tonic-gate
14330Sstevel@tonic-gate	sll		%o0, 30, %l5
14340Sstevel@tonic-gate	and		%l4, %o2, %l4
14350Sstevel@tonic-gate	fxor		%f20, %f22, %f38
14360Sstevel@tonic-gate
14370Sstevel@tonic-gate	add		%o3, %g1, %l6
14380Sstevel@tonic-gate	or		%l1, %l4, %l1
14390Sstevel@tonic-gate	fand		%f50, %f36, %f2
14400Sstevel@tonic-gate
14410Sstevel@tonic-gate	or		%l0, %l3, %l0
14420Sstevel@tonic-gate	add		%l6, %l1, %l1
14430Sstevel@tonic-gate	fand		%f50, %f12, %f10
14440Sstevel@tonic-gate
14450Sstevel@tonic-gate	srl		%o0,  2, %l7
14460Sstevel@tonic-gate	add		%l0, %l1, %l0
14470Sstevel@tonic-gate	fpadd32		%f36, %f36, %f4
14480Sstevel@tonic-gate
14490Sstevel@tonic-gate	or		%l5, %l7, %o0
14500Sstevel@tonic-gate	add		%l0, %l2, %o4
14510Sstevel@tonic-gate
14520Sstevel@tonic-gate! Starting round 44
14530Sstevel@tonic-gate	sll		%o4, 5, %l0
14540Sstevel@tonic-gate	and		%o5, %o0, %l1
14550Sstevel@tonic-gate	ld		[%i0 + (44 * 4)], %l2
14560Sstevel@tonic-gate	faligndata	%f52, %f2, %f2
14570Sstevel@tonic-gate
14580Sstevel@tonic-gate	srl		%o4, 27, %l3
14590Sstevel@tonic-gate	or		%o5, %o0, %l4
14600Sstevel@tonic-gate	faligndata	%f52, %f10, %f10
14610Sstevel@tonic-gate
14620Sstevel@tonic-gate	sll		%o5, 30, %l5
14630Sstevel@tonic-gate	and		%l4, %o1, %l4
14640Sstevel@tonic-gate	fpadd32s	%f12, %f12, %f12
14650Sstevel@tonic-gate
14660Sstevel@tonic-gate	add		%o2, %g1, %l6
14670Sstevel@tonic-gate	or		%l1, %l4, %l1
14680Sstevel@tonic-gate	fxor		%f18, %f20, %f14
14690Sstevel@tonic-gate	fmul8x16	%f2, %f54, %f6
14700Sstevel@tonic-gate
14710Sstevel@tonic-gate	or		%l0, %l3, %l0
14720Sstevel@tonic-gate	add		%l6, %l1, %l1
14730Sstevel@tonic-gate	fxor		%f38, %f30, %f38
14740Sstevel@tonic-gate	fmul8x16	%f3, %f54, %f2
14750Sstevel@tonic-gate
14760Sstevel@tonic-gate	srl		%o5,  2, %l7
14770Sstevel@tonic-gate	add		%l0, %l1, %l0
14780Sstevel@tonic-gate	fmovs		%f9, %f26
14790Sstevel@tonic-gate	fmul8x16	%f10, %f54, %f10
14800Sstevel@tonic-gate
14810Sstevel@tonic-gate	or		%l5, %l7, %o5
14820Sstevel@tonic-gate	add		%l0, %l2, %o3
14830Sstevel@tonic-gate
14840Sstevel@tonic-gate! Starting round 45
14850Sstevel@tonic-gate	sll		%o3, 5, %l0
14860Sstevel@tonic-gate	and		%o4, %o5, %l1
14870Sstevel@tonic-gate	ld		[%i0 + (45 * 4)], %l2
14880Sstevel@tonic-gate	fxor		%f14, %f28, %f14
14890Sstevel@tonic-gate
14900Sstevel@tonic-gate	srl		%o3, 27, %l3
14910Sstevel@tonic-gate	or		%o4, %o5, %l4
14920Sstevel@tonic-gate	fors		%f4, %f7, %f1
14930Sstevel@tonic-gate	st		%f1, [%i0 + (55*4) +(4)]
14940Sstevel@tonic-gate
14950Sstevel@tonic-gate	sll		%o4, 30, %l5
14960Sstevel@tonic-gate	and		%l4, %o0, %l4
14970Sstevel@tonic-gate	fors		%f5, %f3, %f8
14980Sstevel@tonic-gate	st		%f8, [%i0 + (55*4) + (8)]
14990Sstevel@tonic-gate
15000Sstevel@tonic-gate	add		%o1, %g1, %l6
15010Sstevel@tonic-gate	or		%l1, %l4, %l1
15020Sstevel@tonic-gate	fors		%f12, %f11, %f0
15030Sstevel@tonic-gate	st		%f0, [%i0 + (55*4) + (0)]
15040Sstevel@tonic-gate
15050Sstevel@tonic-gate	or		%l0, %l3, %l0
15060Sstevel@tonic-gate	add		%l6, %l1, %l1
15070Sstevel@tonic-gate	fors		%f4, %f7, %f24
15080Sstevel@tonic-gate
15090Sstevel@tonic-gate	srl		%o4,  2, %l7
15100Sstevel@tonic-gate	add		%l0, %l1, %l0
15110Sstevel@tonic-gate	fors		%f5, %f3, %f25
15120Sstevel@tonic-gate
15130Sstevel@tonic-gate	or		%l5, %l7, %o4
15140Sstevel@tonic-gate	add		%l0, %l2, %o2
15150Sstevel@tonic-gate	fors		%f12, %f11, %f27
15160Sstevel@tonic-gate
15170Sstevel@tonic-gate! Starting round 46
15180Sstevel@tonic-gate	sll		%o2, 5, %l0
15190Sstevel@tonic-gate	and		%o3, %o4, %l1
15200Sstevel@tonic-gate	ld		[%i0 + (46 * 4)], %l2
15210Sstevel@tonic-gate	fxor		%f38, %f0, %f36
15220Sstevel@tonic-gate
15230Sstevel@tonic-gate	srl		%o2, 27, %l3
15240Sstevel@tonic-gate	or		%o3, %o4, %l4
15250Sstevel@tonic-gate	fxors		%f14, %f8, %f12
15260Sstevel@tonic-gate
15270Sstevel@tonic-gate	sll		%o3, 30, %l5
15280Sstevel@tonic-gate	and		%l4, %o5, %l4
15290Sstevel@tonic-gate	fxor		%f18, %f20, %f14
15300Sstevel@tonic-gate
15310Sstevel@tonic-gate	add		%o0, %g1, %l6
15320Sstevel@tonic-gate	or		%l1, %l4, %l1
15330Sstevel@tonic-gate	fand		%f50, %f36, %f2
15340Sstevel@tonic-gate
15350Sstevel@tonic-gate	or		%l0, %l3, %l0
15360Sstevel@tonic-gate	add		%l6, %l1, %l1
15370Sstevel@tonic-gate	fand		%f50, %f12, %f10
15380Sstevel@tonic-gate
15390Sstevel@tonic-gate	srl		%o3,  2, %l7
15400Sstevel@tonic-gate	add		%l0, %l1, %l0
15410Sstevel@tonic-gate	fpadd32		%f36, %f36, %f4
15420Sstevel@tonic-gate
15430Sstevel@tonic-gate	or		%l5, %l7, %o3
15440Sstevel@tonic-gate	add		%l0, %l2, %o1
15450Sstevel@tonic-gate
15460Sstevel@tonic-gate! Starting round 47
15470Sstevel@tonic-gate	sll		%o1, 5, %l0
15480Sstevel@tonic-gate	and		%o2, %o3, %l1
15490Sstevel@tonic-gate	ld		[%i0 + (47 * 4)], %l2
15500Sstevel@tonic-gate	faligndata	%f52, %f2, %f2
15510Sstevel@tonic-gate
15520Sstevel@tonic-gate	srl		%o1, 27, %l3
15530Sstevel@tonic-gate	or		%o2, %o3, %l4
15540Sstevel@tonic-gate	faligndata	%f52, %f10, %f10
15550Sstevel@tonic-gate
15560Sstevel@tonic-gate	sll		%o2, 30, %l5
15570Sstevel@tonic-gate	and		%l4, %o4, %l4
15580Sstevel@tonic-gate	fpadd32s	%f12, %f12, %f12
15590Sstevel@tonic-gate
15600Sstevel@tonic-gate	add		%o5, %g1, %l6
15610Sstevel@tonic-gate	or		%l1, %l4, %l1
15620Sstevel@tonic-gate	fxor		%f16, %f18, %f38
15630Sstevel@tonic-gate	fmul8x16	%f2, %f54, %f6
15640Sstevel@tonic-gate
15650Sstevel@tonic-gate	or		%l0, %l3, %l0
15660Sstevel@tonic-gate	add		%l6, %l1, %l1
15670Sstevel@tonic-gate	fxor		%f14, %f28, %f14
15680Sstevel@tonic-gate	fmul8x16	%f3, %f54, %f2
15690Sstevel@tonic-gate
15700Sstevel@tonic-gate	srl		%o2,  2, %l7
15710Sstevel@tonic-gate	add		%l0, %l1, %l0
15720Sstevel@tonic-gate	fmul8x16	%f10, %f54, %f10
15730Sstevel@tonic-gate
15740Sstevel@tonic-gate	or		%l5, %l7, %o2
15750Sstevel@tonic-gate	add		%l0, %l2, %o0
15760Sstevel@tonic-gate
15770Sstevel@tonic-gate! Starting round 48
15780Sstevel@tonic-gate	sll		%o0, 5, %l0
15790Sstevel@tonic-gate	and		%o1, %o2, %l1
15800Sstevel@tonic-gate	ld		[%i0 + (48 * 4)], %l2
15810Sstevel@tonic-gate	fxor		%f38, %f26, %f38
15820Sstevel@tonic-gate
15830Sstevel@tonic-gate	srl		%o0, 27, %l3
15840Sstevel@tonic-gate	or		%o1, %o2, %l4
15850Sstevel@tonic-gate	fors		%f4, %f7, %f8
15860Sstevel@tonic-gate	st		%f8, [%i0 + (58*4) +(0)]
15870Sstevel@tonic-gate
15880Sstevel@tonic-gate	sll		%o1, 30, %l5
15890Sstevel@tonic-gate	and		%l4, %o3, %l4
15900Sstevel@tonic-gate	fors		%f5, %f3, %f0
15910Sstevel@tonic-gate	st		%f0, [%i0 + (58*4) + (4)]
15920Sstevel@tonic-gate
15930Sstevel@tonic-gate	add		%o4, %g1, %l6
15940Sstevel@tonic-gate	or		%l1, %l4, %l1
15950Sstevel@tonic-gate	fors		%f12, %f11, %f1
15960Sstevel@tonic-gate	st		%f1, [%i0 + (58*4) + (8)]
15970Sstevel@tonic-gate
15980Sstevel@tonic-gate	or		%l0, %l3, %l0
15990Sstevel@tonic-gate	add		%l6, %l1, %l1
16000Sstevel@tonic-gate	fors		%f4, %f7, %f22
16010Sstevel@tonic-gate
16020Sstevel@tonic-gate	srl		%o1,  2, %l7
16030Sstevel@tonic-gate	add		%l0, %l1, %l0
16040Sstevel@tonic-gate	fors		%f5, %f3, %f23
16050Sstevel@tonic-gate
16060Sstevel@tonic-gate	or		%l5, %l7, %o1
16070Sstevel@tonic-gate	add		%l0, %l2, %o5
16080Sstevel@tonic-gate	fors		%f12, %f11, %f9
16090Sstevel@tonic-gate
16100Sstevel@tonic-gate! Starting round 49
16110Sstevel@tonic-gate	sll		%o5, 5, %l0
16120Sstevel@tonic-gate	and		%o0, %o1, %l1
16130Sstevel@tonic-gate	ld		[%i0 + (49 * 4)], %l2
16140Sstevel@tonic-gate	fxor		%f38, %f0, %f36
16150Sstevel@tonic-gate
16160Sstevel@tonic-gate	srl		%o5, 27, %l3
16170Sstevel@tonic-gate	or		%o0, %o1, %l4
16180Sstevel@tonic-gate	fxors		%f15, %f8, %f12
16190Sstevel@tonic-gate
16200Sstevel@tonic-gate	sll		%o0, 30, %l5
16210Sstevel@tonic-gate	and		%l4, %o2, %l4
16220Sstevel@tonic-gate	fxor		%f30, %f16, %f38
16230Sstevel@tonic-gate
16240Sstevel@tonic-gate	add		%o3, %g1, %l6
16250Sstevel@tonic-gate	or		%l1, %l4, %l1
16260Sstevel@tonic-gate	fand		%f50, %f36, %f2
16270Sstevel@tonic-gate
16280Sstevel@tonic-gate	or		%l0, %l3, %l0
16290Sstevel@tonic-gate	add		%l6, %l1, %l1
16300Sstevel@tonic-gate	fand		%f50, %f12, %f10
16310Sstevel@tonic-gate
16320Sstevel@tonic-gate	srl		%o0,  2, %l7
16330Sstevel@tonic-gate	add		%l0, %l1, %l0
16340Sstevel@tonic-gate	fpadd32		%f36, %f36, %f4
16350Sstevel@tonic-gate
16360Sstevel@tonic-gate	or		%l5, %l7, %o0
16370Sstevel@tonic-gate	add		%l0, %l2, %o4
16380Sstevel@tonic-gate
16390Sstevel@tonic-gate! Starting round 50
16400Sstevel@tonic-gate	sll		%o4, 5, %l0
16410Sstevel@tonic-gate	and		%o5, %o0, %l1
16420Sstevel@tonic-gate	ld		[%i0 + (50 * 4)], %l2
16430Sstevel@tonic-gate	faligndata	%f52, %f2, %f2
16440Sstevel@tonic-gate
16450Sstevel@tonic-gate	srl		%o4, 27, %l3
16460Sstevel@tonic-gate	or		%o5, %o0, %l4
16470Sstevel@tonic-gate	faligndata	%f52, %f10, %f10
16480Sstevel@tonic-gate
16490Sstevel@tonic-gate	sll		%o5, 30, %l5
16500Sstevel@tonic-gate	and		%l4, %o1, %l4
16510Sstevel@tonic-gate	fpadd32s	%f12, %f12, %f12
16520Sstevel@tonic-gate
16530Sstevel@tonic-gate	add		%o2, %g1, %l6
16540Sstevel@tonic-gate	or		%l1, %l4, %l1
16550Sstevel@tonic-gate	fxor		%f28, %f30, %f14
16560Sstevel@tonic-gate	fmul8x16	%f2, %f54, %f6
16570Sstevel@tonic-gate
16580Sstevel@tonic-gate	or		%l0, %l3, %l0
16590Sstevel@tonic-gate	add		%l6, %l1, %l1
16600Sstevel@tonic-gate	fxor		%f38, %f24, %f38
16610Sstevel@tonic-gate	fmul8x16	%f3, %f54, %f2
16620Sstevel@tonic-gate
16630Sstevel@tonic-gate	srl		%o5,  2, %l7
16640Sstevel@tonic-gate	add		%l0, %l1, %l0
16650Sstevel@tonic-gate	fmovs		%f9, %f20
16660Sstevel@tonic-gate	fmul8x16	%f10, %f54, %f10
16670Sstevel@tonic-gate
16680Sstevel@tonic-gate	or		%l5, %l7, %o5
16690Sstevel@tonic-gate	add		%l0, %l2, %o3
16700Sstevel@tonic-gate
16710Sstevel@tonic-gate! Starting round 51
16720Sstevel@tonic-gate	sll		%o3, 5, %l0
16730Sstevel@tonic-gate	and		%o4, %o5, %l1
16740Sstevel@tonic-gate	ld		[%i0 + (51 * 4)], %l2
16750Sstevel@tonic-gate	fxor		%f14, %f22, %f14
16760Sstevel@tonic-gate
16770Sstevel@tonic-gate	srl		%o3, 27, %l3
16780Sstevel@tonic-gate	or		%o4, %o5, %l4
16790Sstevel@tonic-gate	fors		%f4, %f7, %f1
16800Sstevel@tonic-gate	st		%f1, [%i0 + (61*4) +(4)]
16810Sstevel@tonic-gate
16820Sstevel@tonic-gate	sll		%o4, 30, %l5
16830Sstevel@tonic-gate	and		%l4, %o0, %l4
16840Sstevel@tonic-gate	fors		%f5, %f3, %f8
16850Sstevel@tonic-gate	st		%f8, [%i0 + (61*4) + (8)]
16860Sstevel@tonic-gate
16870Sstevel@tonic-gate	add		%o1, %g1, %l6
16880Sstevel@tonic-gate	or		%l1, %l4, %l1
16890Sstevel@tonic-gate	fors		%f12, %f11, %f0
16900Sstevel@tonic-gate	st		%f0, [%i0 + (61*4) + (0)]
16910Sstevel@tonic-gate
16920Sstevel@tonic-gate	or		%l0, %l3, %l0
16930Sstevel@tonic-gate	add		%l6, %l1, %l1
16940Sstevel@tonic-gate	fors		%f4, %f7, %f18
16950Sstevel@tonic-gate
16960Sstevel@tonic-gate	srl		%o4,  2, %l7
16970Sstevel@tonic-gate	add		%l0, %l1, %l0
16980Sstevel@tonic-gate	fors		%f5, %f3, %f19
16990Sstevel@tonic-gate
17000Sstevel@tonic-gate	or		%l5, %l7, %o4
17010Sstevel@tonic-gate	add		%l0, %l2, %o2
17020Sstevel@tonic-gate	fors		%f12, %f11, %f21
17030Sstevel@tonic-gate
17040Sstevel@tonic-gate! Starting round 52
17050Sstevel@tonic-gate	sll		%o2, 5, %l0
17060Sstevel@tonic-gate	and		%o3, %o4, %l1
17070Sstevel@tonic-gate	ld		[%i0 + (52 * 4)], %l2
17080Sstevel@tonic-gate	fxor		%f38, %f0, %f36
17090Sstevel@tonic-gate
17100Sstevel@tonic-gate	srl		%o2, 27, %l3
17110Sstevel@tonic-gate	or		%o3, %o4, %l4
17120Sstevel@tonic-gate	fxors		%f14, %f8, %f12
17130Sstevel@tonic-gate
17140Sstevel@tonic-gate	sll		%o3, 30, %l5
17150Sstevel@tonic-gate	and		%l4, %o5, %l4
17160Sstevel@tonic-gate	fxor		%f28, %f30, %f14
17170Sstevel@tonic-gate
17180Sstevel@tonic-gate	add		%o0, %g1, %l6
17190Sstevel@tonic-gate	or		%l1, %l4, %l1
17200Sstevel@tonic-gate	fand		%f50, %f36, %f2
17210Sstevel@tonic-gate
17220Sstevel@tonic-gate	or		%l0, %l3, %l0
17230Sstevel@tonic-gate	add		%l6, %l1, %l1
17240Sstevel@tonic-gate	fand		%f50, %f12, %f10
17250Sstevel@tonic-gate
17260Sstevel@tonic-gate	srl		%o3,  2, %l7
17270Sstevel@tonic-gate	add		%l0, %l1, %l0
17280Sstevel@tonic-gate	fpadd32		%f36, %f36, %f4
17290Sstevel@tonic-gate
17300Sstevel@tonic-gate	or		%l5, %l7, %o3
17310Sstevel@tonic-gate	add		%l0, %l2, %o1
17320Sstevel@tonic-gate
17330Sstevel@tonic-gate! Starting round 53
17340Sstevel@tonic-gate	sll		%o1, 5, %l0
17350Sstevel@tonic-gate	and		%o2, %o3, %l1
17360Sstevel@tonic-gate	ld		[%i0 + (53 * 4)], %l2
17370Sstevel@tonic-gate	faligndata	%f52, %f2, %f2
17380Sstevel@tonic-gate
17390Sstevel@tonic-gate	srl		%o1, 27, %l3
17400Sstevel@tonic-gate	or		%o2, %o3, %l4
17410Sstevel@tonic-gate	faligndata	%f52, %f10, %f10
17420Sstevel@tonic-gate
17430Sstevel@tonic-gate	sll		%o2, 30, %l5
17440Sstevel@tonic-gate	and		%l4, %o4, %l4
17450Sstevel@tonic-gate	fpadd32s	%f12, %f12, %f12
17460Sstevel@tonic-gate
17470Sstevel@tonic-gate	add		%o5, %g1, %l6
17480Sstevel@tonic-gate	or		%l1, %l4, %l1
17490Sstevel@tonic-gate	fxor		%f26, %f28, %f38
17500Sstevel@tonic-gate	fmul8x16	%f2, %f54, %f6
17510Sstevel@tonic-gate
17520Sstevel@tonic-gate	or		%l0, %l3, %l0
17530Sstevel@tonic-gate	add		%l6, %l1, %l1
17540Sstevel@tonic-gate	fxor		%f14, %f22, %f14
17550Sstevel@tonic-gate	fmul8x16	%f3, %f54, %f2
17560Sstevel@tonic-gate
17570Sstevel@tonic-gate	srl		%o2,  2, %l7
17580Sstevel@tonic-gate	add		%l0, %l1, %l0
17590Sstevel@tonic-gate	fmul8x16	%f10, %f54, %f10
17600Sstevel@tonic-gate
17610Sstevel@tonic-gate	or		%l5, %l7, %o2
17620Sstevel@tonic-gate	add		%l0, %l2, %o0
17630Sstevel@tonic-gate
17640Sstevel@tonic-gate! Starting round 54
17650Sstevel@tonic-gate	sll		%o0, 5, %l0
17660Sstevel@tonic-gate	and		%o1, %o2, %l1
17670Sstevel@tonic-gate	ld		[%i0 + (54 * 4)], %l2
17680Sstevel@tonic-gate	fxor		%f38, %f20, %f38
17690Sstevel@tonic-gate
17700Sstevel@tonic-gate	srl		%o0, 27, %l3
17710Sstevel@tonic-gate	or		%o1, %o2, %l4
17720Sstevel@tonic-gate	fors		%f4, %f7, %f8
17730Sstevel@tonic-gate	st		%f8, [%i0 + (64*4) +(0)]
17740Sstevel@tonic-gate
17750Sstevel@tonic-gate	sll		%o1, 30, %l5
17760Sstevel@tonic-gate	and		%l4, %o3, %l4
17770Sstevel@tonic-gate	fors		%f5, %f3, %f0
17780Sstevel@tonic-gate	st		%f0, [%i0 + (64*4) + (4)]
17790Sstevel@tonic-gate
17800Sstevel@tonic-gate	add		%o4, %g1, %l6
17810Sstevel@tonic-gate	or		%l1, %l4, %l1
17820Sstevel@tonic-gate	fors		%f12, %f11, %f1
17830Sstevel@tonic-gate	st		%f1, [%i0 + (64*4) + (8)]
17840Sstevel@tonic-gate
17850Sstevel@tonic-gate	or		%l0, %l3, %l0
17860Sstevel@tonic-gate	add		%l6, %l1, %l1
17870Sstevel@tonic-gate	fors		%f4, %f7, %f16
17880Sstevel@tonic-gate
17890Sstevel@tonic-gate	srl		%o1,  2, %l7
17900Sstevel@tonic-gate	add		%l0, %l1, %l0
17910Sstevel@tonic-gate	fors		%f5, %f3, %f17
17920Sstevel@tonic-gate
17930Sstevel@tonic-gate	or		%l5, %l7, %o1
17940Sstevel@tonic-gate	add		%l0, %l2, %o5
17950Sstevel@tonic-gate	fors		%f12, %f11, %f9
17960Sstevel@tonic-gate
17970Sstevel@tonic-gate! Starting round 55
17980Sstevel@tonic-gate	sll		%o5, 5, %l0
17990Sstevel@tonic-gate	and		%o0, %o1, %l1
18000Sstevel@tonic-gate	ld		[%i0 + (55 * 4)], %l2
18010Sstevel@tonic-gate	fxor		%f38, %f0, %f36
18020Sstevel@tonic-gate
18030Sstevel@tonic-gate	srl		%o5, 27, %l3
18040Sstevel@tonic-gate	or		%o0, %o1, %l4
18050Sstevel@tonic-gate	fxors		%f15, %f8, %f12
18060Sstevel@tonic-gate
18070Sstevel@tonic-gate	sll		%o0, 30, %l5
18080Sstevel@tonic-gate	and		%l4, %o2, %l4
18090Sstevel@tonic-gate	fxor		%f24, %f26, %f38
18100Sstevel@tonic-gate
18110Sstevel@tonic-gate	add		%o3, %g1, %l6
18120Sstevel@tonic-gate	or		%l1, %l4, %l1
18130Sstevel@tonic-gate	fand		%f50, %f36, %f2
18140Sstevel@tonic-gate
18150Sstevel@tonic-gate	or		%l0, %l3, %l0
18160Sstevel@tonic-gate	add		%l6, %l1, %l1
18170Sstevel@tonic-gate	fand		%f50, %f12, %f10
18180Sstevel@tonic-gate
18190Sstevel@tonic-gate	srl		%o0,  2, %l7
18200Sstevel@tonic-gate	add		%l0, %l1, %l0
18210Sstevel@tonic-gate	fpadd32		%f36, %f36, %f4
18220Sstevel@tonic-gate
18230Sstevel@tonic-gate	or		%l5, %l7, %o0
18240Sstevel@tonic-gate	add		%l0, %l2, %o4
18250Sstevel@tonic-gate
18260Sstevel@tonic-gate! Starting round 56
18270Sstevel@tonic-gate	sll		%o4, 5, %l0
18280Sstevel@tonic-gate	and		%o5, %o0, %l1
18290Sstevel@tonic-gate	ld		[%i0 + (56 * 4)], %l2
18300Sstevel@tonic-gate	faligndata	%f52, %f2, %f2
18310Sstevel@tonic-gate
18320Sstevel@tonic-gate	srl		%o4, 27, %l3
18330Sstevel@tonic-gate	or		%o5, %o0, %l4
18340Sstevel@tonic-gate	faligndata	%f52, %f10, %f10
18350Sstevel@tonic-gate
18360Sstevel@tonic-gate	sll		%o5, 30, %l5
18370Sstevel@tonic-gate	and		%l4, %o1, %l4
18380Sstevel@tonic-gate	fpadd32s	%f12, %f12, %f12
18390Sstevel@tonic-gate
18400Sstevel@tonic-gate	add		%o2, %g1, %l6
18410Sstevel@tonic-gate	or		%l1, %l4, %l1
18420Sstevel@tonic-gate	fxor		%f22, %f24, %f14
18430Sstevel@tonic-gate	fmul8x16	%f2, %f54, %f6
18440Sstevel@tonic-gate
18450Sstevel@tonic-gate	or		%l0, %l3, %l0
18460Sstevel@tonic-gate	add		%l6, %l1, %l1
18470Sstevel@tonic-gate	fxor		%f38, %f18, %f38
18480Sstevel@tonic-gate	fmul8x16	%f3, %f54, %f2
18490Sstevel@tonic-gate
18500Sstevel@tonic-gate	srl		%o5,  2, %l7
18510Sstevel@tonic-gate	add		%l0, %l1, %l0
18520Sstevel@tonic-gate	fmovs		%f9, %f30
18530Sstevel@tonic-gate	fmul8x16	%f10, %f54, %f10
18540Sstevel@tonic-gate
18550Sstevel@tonic-gate	or		%l5, %l7, %o5
18560Sstevel@tonic-gate	add		%l0, %l2, %o3
18570Sstevel@tonic-gate
18580Sstevel@tonic-gate! Starting round 57
18590Sstevel@tonic-gate	sll		%o3, 5, %l0
18600Sstevel@tonic-gate	and		%o4, %o5, %l1
18610Sstevel@tonic-gate	ld		[%i0 + (57 * 4)], %l2
18620Sstevel@tonic-gate	fxor		%f14, %f16, %f14
18630Sstevel@tonic-gate
18640Sstevel@tonic-gate	srl		%o3, 27, %l3
18650Sstevel@tonic-gate	or		%o4, %o5, %l4
18660Sstevel@tonic-gate	fors		%f4, %f7, %f1
18670Sstevel@tonic-gate	st		%f1, [%i0 + (67*4) +(4)]
18680Sstevel@tonic-gate
18690Sstevel@tonic-gate	sll		%o4, 30, %l5
18700Sstevel@tonic-gate	and		%l4, %o0, %l4
18710Sstevel@tonic-gate	fors		%f5, %f3, %f8
18720Sstevel@tonic-gate	st		%f8, [%i0 + (67*4) + (8)]
18730Sstevel@tonic-gate
18740Sstevel@tonic-gate	add		%o1, %g1, %l6
18750Sstevel@tonic-gate	or		%l1, %l4, %l1
18760Sstevel@tonic-gate	fors		%f12, %f11, %f0
18770Sstevel@tonic-gate	st		%f0, [%i0 + (67*4) + (0)]
18780Sstevel@tonic-gate
18790Sstevel@tonic-gate	or		%l0, %l3, %l0
18800Sstevel@tonic-gate	add		%l6, %l1, %l1
18810Sstevel@tonic-gate	fors		%f4, %f7, %f28
18820Sstevel@tonic-gate
18830Sstevel@tonic-gate	srl		%o4,  2, %l7
18840Sstevel@tonic-gate	add		%l0, %l1, %l0
18850Sstevel@tonic-gate	fors		%f5, %f3, %f29
18860Sstevel@tonic-gate
18870Sstevel@tonic-gate	or		%l5, %l7, %o4
18880Sstevel@tonic-gate	add		%l0, %l2, %o2
18890Sstevel@tonic-gate	fors		%f12, %f11, %f31
18900Sstevel@tonic-gate
18910Sstevel@tonic-gate! Starting round 58
18920Sstevel@tonic-gate	sll		%o2, 5, %l0
18930Sstevel@tonic-gate	and		%o3, %o4, %l1
18940Sstevel@tonic-gate	ld		[%i0 + (58 * 4)], %l2
18950Sstevel@tonic-gate	fxor		%f38, %f0, %f36
18960Sstevel@tonic-gate
18970Sstevel@tonic-gate	srl		%o2, 27, %l3
18980Sstevel@tonic-gate	or		%o3, %o4, %l4
18990Sstevel@tonic-gate	fxors		%f14, %f8, %f12
19000Sstevel@tonic-gate
19010Sstevel@tonic-gate	sll		%o3, 30, %l5
19020Sstevel@tonic-gate	and		%l4, %o5, %l4
19030Sstevel@tonic-gate	fxor		%f22, %f24, %f14
19040Sstevel@tonic-gate
19050Sstevel@tonic-gate	add		%o0, %g1, %l6
19060Sstevel@tonic-gate	or		%l1, %l4, %l1
19070Sstevel@tonic-gate	fand		%f50, %f36, %f2
19080Sstevel@tonic-gate
19090Sstevel@tonic-gate	or		%l0, %l3, %l0
19100Sstevel@tonic-gate	add		%l6, %l1, %l1
19110Sstevel@tonic-gate	fand		%f50, %f12, %f10
19120Sstevel@tonic-gate
19130Sstevel@tonic-gate	srl		%o3,  2, %l7
19140Sstevel@tonic-gate	add		%l0, %l1, %l0
19150Sstevel@tonic-gate	fpadd32		%f36, %f36, %f4
19160Sstevel@tonic-gate
19170Sstevel@tonic-gate	or		%l5, %l7, %o3
19180Sstevel@tonic-gate	add		%l0, %l2, %o1
19190Sstevel@tonic-gate
19200Sstevel@tonic-gate! Starting round 59
19210Sstevel@tonic-gate	sll		%o1, 5, %l0
19220Sstevel@tonic-gate	and		%o2, %o3, %l1
19230Sstevel@tonic-gate	ld		[%i0 + (59 * 4)], %l2
19240Sstevel@tonic-gate	faligndata	%f52, %f2, %f2
19250Sstevel@tonic-gate
19260Sstevel@tonic-gate	srl		%o1, 27, %l3
19270Sstevel@tonic-gate	or		%o2, %o3, %l4
19280Sstevel@tonic-gate	faligndata	%f52, %f10, %f10
19290Sstevel@tonic-gate
19300Sstevel@tonic-gate	sll		%o2, 30, %l5
19310Sstevel@tonic-gate	and		%l4, %o4, %l4
19320Sstevel@tonic-gate	fpadd32s	%f12, %f12, %f12
19330Sstevel@tonic-gate
19340Sstevel@tonic-gate	add		%o5, %g1, %l6
19350Sstevel@tonic-gate	or		%l1, %l4, %l1
19360Sstevel@tonic-gate	fxor		%f20, %f22, %f38
19370Sstevel@tonic-gate	fmul8x16	%f2, %f54, %f6
19380Sstevel@tonic-gate
19390Sstevel@tonic-gate	or		%l0, %l3, %l0
19400Sstevel@tonic-gate	add		%l6, %l1, %l1
19410Sstevel@tonic-gate	fxor		%f14, %f16, %f14
19420Sstevel@tonic-gate	fmul8x16	%f3, %f54, %f2
19430Sstevel@tonic-gate
19440Sstevel@tonic-gate	srl		%o2,  2, %l7
19450Sstevel@tonic-gate	add		%l0, %l1, %l0
19460Sstevel@tonic-gate	fmul8x16	%f10, %f54, %f10
19470Sstevel@tonic-gate
19480Sstevel@tonic-gate	or		%l5, %l7, %o2
19490Sstevel@tonic-gate	add		%l0, %l2, %o0
19500Sstevel@tonic-gate	ld 		[%i3 + 12 + 16], %g1
19510Sstevel@tonic-gate
19520Sstevel@tonic-gate! Starting round 60
19530Sstevel@tonic-gate	sll		%o0, 5, %l0
19540Sstevel@tonic-gate	xor		%o1, %o2, %l1
19550Sstevel@tonic-gate	ld		[%i0 + (60 * 4)], %l2
19560Sstevel@tonic-gate
19570Sstevel@tonic-gate	fxor		%f38, %f30, %f38
19580Sstevel@tonic-gate	srl		%o0, 27, %l3
19590Sstevel@tonic-gate	xor		%l1, %o3, %l1
19600Sstevel@tonic-gate	fors		%f4, %f7, %f8
19610Sstevel@tonic-gate	st		%f8, [%i0 + (70*4) + (0)]
19620Sstevel@tonic-gate
19630Sstevel@tonic-gate	sll		%o1, 30, %l5
19640Sstevel@tonic-gate	or		%l0, %l3, %l0
19650Sstevel@tonic-gate	fors		%f5, %f3, %f0
19660Sstevel@tonic-gate	st		%f0, [%i0 + (70*4) + (4)]
19670Sstevel@tonic-gate
19680Sstevel@tonic-gate	add		%o4, %g1, %l4
19690Sstevel@tonic-gate	add		%l0, %l1, %l0
19700Sstevel@tonic-gate	fors		%f12, %f11, %f1
19710Sstevel@tonic-gate	st		%f1, [%i0 + (70*4) + (8)]
19720Sstevel@tonic-gate
19730Sstevel@tonic-gate	srl		%o1,  2, %l7
19740Sstevel@tonic-gate	add		%l0, %l4, %l0
19750Sstevel@tonic-gate	fors		%f4, %f7, %f26
19760Sstevel@tonic-gate
19770Sstevel@tonic-gate	or		%l5, %l7, %o1
19780Sstevel@tonic-gate	add		%l0, %l2, %o5
19790Sstevel@tonic-gate	fors		%f5, %f3, %f27
19800Sstevel@tonic-gate
19810Sstevel@tonic-gate	fors		%f12, %f11, %f9
19820Sstevel@tonic-gate
19830Sstevel@tonic-gate! Starting round 61
19840Sstevel@tonic-gate	sll		%o5, 5, %l0
19850Sstevel@tonic-gate	xor		%o0, %o1, %l1
19860Sstevel@tonic-gate	ld		[%i0 + (61 * 4)], %l2
19870Sstevel@tonic-gate	fxor		%f38, %f0, %f36
19880Sstevel@tonic-gate
19890Sstevel@tonic-gate	srl		%o5, 27, %l3
19900Sstevel@tonic-gate	xor		%l1, %o2, %l1
19910Sstevel@tonic-gate	fxors		%f15, %f8, %f12
19920Sstevel@tonic-gate
19930Sstevel@tonic-gate	sll		%o0, 30, %l5
19940Sstevel@tonic-gate	or		%l0, %l3, %l0
19950Sstevel@tonic-gate	fxor		%f18, %f20, %f38
19960Sstevel@tonic-gate
19970Sstevel@tonic-gate	add		%o3, %g1, %l4
19980Sstevel@tonic-gate	add		%l0, %l1, %l0
19990Sstevel@tonic-gate	fand		%f50, %f36, %f2
20000Sstevel@tonic-gate
20010Sstevel@tonic-gate	srl		%o0,  2, %l7
20020Sstevel@tonic-gate	add		%l0, %l4, %l0
20030Sstevel@tonic-gate	fand		%f50, %f12, %f10
20040Sstevel@tonic-gate
20050Sstevel@tonic-gate	or		%l5, %l7, %o0
20060Sstevel@tonic-gate	add		%l0, %l2, %o4
20070Sstevel@tonic-gate	fpadd32		%f36, %f36, %f4
20080Sstevel@tonic-gate
20090Sstevel@tonic-gate! Starting round 62
20100Sstevel@tonic-gate	sll		%o4, 5, %l0
20110Sstevel@tonic-gate	xor		%o5, %o0, %l1
20120Sstevel@tonic-gate	ld		[%i0 + (62 * 4)], %l2
20130Sstevel@tonic-gate	faligndata	%f52, %f2, %f2
20140Sstevel@tonic-gate
20150Sstevel@tonic-gate	srl		%o4, 27, %l3
20160Sstevel@tonic-gate	xor		%l1, %o1, %l1
20170Sstevel@tonic-gate	faligndata	%f52, %f10, %f10
20180Sstevel@tonic-gate
20190Sstevel@tonic-gate	sll		%o5, 30, %l5
20200Sstevel@tonic-gate	or		%l0, %l3, %l0
20210Sstevel@tonic-gate	fpadd32s	%f12, %f12, %f12
20220Sstevel@tonic-gate
20230Sstevel@tonic-gate	add		%o2, %g1, %l4
20240Sstevel@tonic-gate	add		%l0, %l1, %l0
20250Sstevel@tonic-gate	fxor		%f16, %f18, %f14
20260Sstevel@tonic-gate	fmul8x16	%f2, %f54, %f6
20270Sstevel@tonic-gate
20280Sstevel@tonic-gate	srl		%o5,  2, %l7
20290Sstevel@tonic-gate	add		%l0, %l4, %l0
20300Sstevel@tonic-gate	fxor		%f38, %f28, %f38
20310Sstevel@tonic-gate	fmul8x16	%f3, %f54, %f2
20320Sstevel@tonic-gate
20330Sstevel@tonic-gate	or		%l5, %l7, %o5
20340Sstevel@tonic-gate	add		%l0, %l2, %o3
20350Sstevel@tonic-gate	fmovs		%f9, %f24
20360Sstevel@tonic-gate	fmul8x16	%f10, %f54, %f10
20370Sstevel@tonic-gate
20380Sstevel@tonic-gate! Starting round 63
20390Sstevel@tonic-gate	sll		%o3, 5, %l0
20400Sstevel@tonic-gate	xor		%o4, %o5, %l1
20410Sstevel@tonic-gate	ld		[%i0 + (63 * 4)], %l2
20420Sstevel@tonic-gate	fxor		%f14, %f26, %f14
20430Sstevel@tonic-gate
20440Sstevel@tonic-gate	srl		%o3, 27, %l3
20450Sstevel@tonic-gate	xor		%l1, %o0, %l1
20460Sstevel@tonic-gate	fors		%f4, %f7, %f1
20470Sstevel@tonic-gate	st		%f1, [%i0 + (73*4) + (4)]
20480Sstevel@tonic-gate
20490Sstevel@tonic-gate	sll		%o4, 30, %l5
20500Sstevel@tonic-gate	or		%l0, %l3, %l0
20510Sstevel@tonic-gate	fors		%f5, %f3, %f8
20520Sstevel@tonic-gate	st		%f8, [%i0 + (73*4) + (8)]
20530Sstevel@tonic-gate
20540Sstevel@tonic-gate	add		%o1, %g1, %l4
20550Sstevel@tonic-gate	add		%l0, %l1, %l0
20560Sstevel@tonic-gate	fors		%f12, %f11, %f0
20570Sstevel@tonic-gate	st		%f0, [%i0 + (73*4) + (0)]
20580Sstevel@tonic-gate
20590Sstevel@tonic-gate	srl		%o4,  2, %l7
20600Sstevel@tonic-gate	add		%l0, %l4, %l0
20610Sstevel@tonic-gate	fors		%f4, %f7, %f22
20620Sstevel@tonic-gate
20630Sstevel@tonic-gate	or		%l5, %l7, %o4
20640Sstevel@tonic-gate	add		%l0, %l2, %o2
20650Sstevel@tonic-gate	fors		%f5, %f3, %f23
20660Sstevel@tonic-gate
20670Sstevel@tonic-gate	fors		%f12, %f11, %f25
20680Sstevel@tonic-gate
20690Sstevel@tonic-gate! Starting round 64
20700Sstevel@tonic-gate	sll		%o2, 5, %l0
20710Sstevel@tonic-gate	xor		%o3, %o4, %l1
20720Sstevel@tonic-gate	ld		[%i0 + (64 * 4)], %l2
20730Sstevel@tonic-gate	fxor		%f38, %f0, %f36
20740Sstevel@tonic-gate
20750Sstevel@tonic-gate	srl		%o2, 27, %l3
20760Sstevel@tonic-gate	xor		%l1, %o5, %l1
20770Sstevel@tonic-gate	fxors		%f14, %f8, %f12
20780Sstevel@tonic-gate
20790Sstevel@tonic-gate	sll		%o3, 30, %l5
20800Sstevel@tonic-gate	or		%l0, %l3, %l0
20810Sstevel@tonic-gate	fxor		%f16, %f18, %f14
20820Sstevel@tonic-gate
20830Sstevel@tonic-gate	add		%o0, %g1, %l4
20840Sstevel@tonic-gate	add		%l0, %l1, %l0
20850Sstevel@tonic-gate	fand		%f50, %f36, %f2
20860Sstevel@tonic-gate
20870Sstevel@tonic-gate	srl		%o3,  2, %l7
20880Sstevel@tonic-gate	add		%l0, %l4, %l0
20890Sstevel@tonic-gate	fand		%f50, %f12, %f10
20900Sstevel@tonic-gate
20910Sstevel@tonic-gate	or		%l5, %l7, %o3
20920Sstevel@tonic-gate	add		%l0, %l2, %o1
20930Sstevel@tonic-gate	fpadd32		%f36, %f36, %f4
20940Sstevel@tonic-gate
20950Sstevel@tonic-gate! Starting round 65
20960Sstevel@tonic-gate	sll		%o1, 5, %l0
20970Sstevel@tonic-gate	xor		%o2, %o3, %l1
20980Sstevel@tonic-gate	ld		[%i0 + (65 * 4)], %l2
20990Sstevel@tonic-gate	faligndata	%f52, %f2, %f2
21000Sstevel@tonic-gate
21010Sstevel@tonic-gate	srl		%o1, 27, %l3
21020Sstevel@tonic-gate	xor		%l1, %o4, %l1
21030Sstevel@tonic-gate	faligndata	%f52, %f10, %f10
21040Sstevel@tonic-gate
21050Sstevel@tonic-gate	sll		%o2, 30, %l5
21060Sstevel@tonic-gate	or		%l0, %l3, %l0
21070Sstevel@tonic-gate	fpadd32s	%f12, %f12, %f12
21080Sstevel@tonic-gate
21090Sstevel@tonic-gate	add		%o5, %g1, %l4
21100Sstevel@tonic-gate	add		%l0, %l1, %l0
21110Sstevel@tonic-gate	fxor		%f30, %f16, %f38
21120Sstevel@tonic-gate	fmul8x16	%f2, %f54, %f6
21130Sstevel@tonic-gate
21140Sstevel@tonic-gate	srl		%o2,  2, %l7
21150Sstevel@tonic-gate	add		%l0, %l4, %l0
21160Sstevel@tonic-gate	fxor		%f14, %f26, %f14
21170Sstevel@tonic-gate	fmul8x16	%f3, %f54, %f2
21180Sstevel@tonic-gate
21190Sstevel@tonic-gate	or		%l5, %l7, %o2
21200Sstevel@tonic-gate	add		%l0, %l2, %o0
21210Sstevel@tonic-gate	fmul8x16	%f10, %f54, %f10
21220Sstevel@tonic-gate
21230Sstevel@tonic-gate! Starting round 66
21240Sstevel@tonic-gate	sll		%o0, 5, %l0
21250Sstevel@tonic-gate	xor		%o1, %o2, %l1
21260Sstevel@tonic-gate	ld		[%i0 + (66 * 4)], %l2
21270Sstevel@tonic-gate	fxor		%f38, %f24, %f38
21280Sstevel@tonic-gate
21290Sstevel@tonic-gate	srl		%o0, 27, %l3
21300Sstevel@tonic-gate	xor		%l1, %o3, %l1
21310Sstevel@tonic-gate	fors		%f4, %f7, %f8
21320Sstevel@tonic-gate	st		%f8, [%i0 + (76*4) + (0)]
21330Sstevel@tonic-gate
21340Sstevel@tonic-gate	sll		%o1, 30, %l5
21350Sstevel@tonic-gate	or		%l0, %l3, %l0
21360Sstevel@tonic-gate	fors		%f5, %f3, %f0
21370Sstevel@tonic-gate	st		%f0, [%i0 + (76*4) + (4)]
21380Sstevel@tonic-gate
21390Sstevel@tonic-gate	add		%o4, %g1, %l4
21400Sstevel@tonic-gate	add		%l0, %l1, %l0
21410Sstevel@tonic-gate	fors		%f12, %f11, %f1
21420Sstevel@tonic-gate	st		%f1, [%i0 + (76*4) + (8)]
21430Sstevel@tonic-gate
21440Sstevel@tonic-gate	srl		%o1,  2, %l7
21450Sstevel@tonic-gate	add		%l0, %l4, %l0
21460Sstevel@tonic-gate	fors		%f4, %f7, %f20
21470Sstevel@tonic-gate
21480Sstevel@tonic-gate	or		%l5, %l7, %o1
21490Sstevel@tonic-gate	add		%l0, %l2, %o5
21500Sstevel@tonic-gate	fors		%f5, %f3, %f21
21510Sstevel@tonic-gate
21520Sstevel@tonic-gate	fors		%f12, %f11, %f9
21530Sstevel@tonic-gate
21540Sstevel@tonic-gate! Starting round 67
21550Sstevel@tonic-gate	sll		%o5, 5, %l0
21560Sstevel@tonic-gate	xor		%o0, %o1, %l1
21570Sstevel@tonic-gate	ld		[%i0 + (67 * 4)], %l2
21580Sstevel@tonic-gate	fxor		%f38, %f0, %f36
21590Sstevel@tonic-gate
21600Sstevel@tonic-gate	srl		%o5, 27, %l3
21610Sstevel@tonic-gate	xor		%l1, %o2, %l1
21620Sstevel@tonic-gate	fxors		%f15, %f8, %f12
21630Sstevel@tonic-gate
21640Sstevel@tonic-gate	sll		%o0, 30, %l5
21650Sstevel@tonic-gate	or		%l0, %l3, %l0
21660Sstevel@tonic-gate	fxor		%f28, %f30, %f38
21670Sstevel@tonic-gate
21680Sstevel@tonic-gate	add		%o3, %g1, %l4
21690Sstevel@tonic-gate	add		%l0, %l1, %l0
21700Sstevel@tonic-gate	fand		%f50, %f36, %f2
21710Sstevel@tonic-gate
21720Sstevel@tonic-gate	srl		%o0,  2, %l7
21730Sstevel@tonic-gate	add		%l0, %l4, %l0
21740Sstevel@tonic-gate	fand		%f50, %f12, %f10
21750Sstevel@tonic-gate
21760Sstevel@tonic-gate	or		%l5, %l7, %o0
21770Sstevel@tonic-gate	add		%l0, %l2, %o4
21780Sstevel@tonic-gate	fpadd32		%f36, %f36, %f4
21790Sstevel@tonic-gate
21800Sstevel@tonic-gate! Starting round 68
21810Sstevel@tonic-gate	sll		%o4, 5, %l0
21820Sstevel@tonic-gate	xor		%o5, %o0, %l1
21830Sstevel@tonic-gate	ld		[%i0 + (68 * 4)], %l2
21840Sstevel@tonic-gate	faligndata	%f52, %f2, %f2
21850Sstevel@tonic-gate
21860Sstevel@tonic-gate	srl		%o4, 27, %l3
21870Sstevel@tonic-gate	xor		%l1, %o1, %l1
21880Sstevel@tonic-gate	faligndata	%f52, %f10, %f10
21890Sstevel@tonic-gate
21900Sstevel@tonic-gate	sll		%o5, 30, %l5
21910Sstevel@tonic-gate	or		%l0, %l3, %l0
21920Sstevel@tonic-gate	fpadd32s	%f12, %f12, %f12
21930Sstevel@tonic-gate
21940Sstevel@tonic-gate	add		%o2, %g1, %l4
21950Sstevel@tonic-gate	add		%l0, %l1, %l0
21960Sstevel@tonic-gate	fxor		%f26, %f28, %f14
21970Sstevel@tonic-gate	fmul8x16	%f2, %f54, %f6
21980Sstevel@tonic-gate
21990Sstevel@tonic-gate	srl		%o5,  2, %l7
22000Sstevel@tonic-gate	add		%l0, %l4, %l0
22010Sstevel@tonic-gate	fxor		%f38, %f22, %f38
22020Sstevel@tonic-gate	fmul8x16	%f3, %f54, %f2
22030Sstevel@tonic-gate
22040Sstevel@tonic-gate	or		%l5, %l7, %o5
22050Sstevel@tonic-gate	add		%l0, %l2, %o3
22060Sstevel@tonic-gate	fmovs		%f9, %f18
22070Sstevel@tonic-gate	fmul8x16	%f10, %f54, %f10
22080Sstevel@tonic-gate
22090Sstevel@tonic-gate! Starting round 69
22100Sstevel@tonic-gate	sll		%o3, 5, %l0
22110Sstevel@tonic-gate	xor		%o4, %o5, %l1
22120Sstevel@tonic-gate	ld		[%i0 + (69 * 4)], %l2
22130Sstevel@tonic-gate
22140Sstevel@tonic-gate	fxor		%f14, %f20, %f14
22150Sstevel@tonic-gate	srl		%o3, 27, %l3
22160Sstevel@tonic-gate	xor		%l1, %o0, %l1
22170Sstevel@tonic-gate
22180Sstevel@tonic-gate	sll		%o4, 30, %l5
22190Sstevel@tonic-gate	or		%l0, %l3, %l0
22200Sstevel@tonic-gate
22210Sstevel@tonic-gate	add		%o1, %g1, %l4
22220Sstevel@tonic-gate	add		%l0, %l1, %l0
22230Sstevel@tonic-gate	fors		%f12, %f11, %f0
22240Sstevel@tonic-gate	st		%f0, [%i0 + (79*4) + (0)]
22250Sstevel@tonic-gate
22260Sstevel@tonic-gate	srl		%o4,  2, %l7
22270Sstevel@tonic-gate	add		%l0, %l4, %l0
22280Sstevel@tonic-gate
22290Sstevel@tonic-gate	or		%l5, %l7, %o4
22300Sstevel@tonic-gate	add		%l0, %l2, %o2
22310Sstevel@tonic-gate
22320Sstevel@tonic-gate! Starting round 70
22330Sstevel@tonic-gate	sll		%o2, 5, %l0
22340Sstevel@tonic-gate	xor		%o3, %o4, %l1
22350Sstevel@tonic-gate	ld		[%i0 + (70 * 4)], %l2
22360Sstevel@tonic-gate
22370Sstevel@tonic-gate	srl		%o2, 27, %l3
22380Sstevel@tonic-gate	xor		%l1, %o5, %l1
22390Sstevel@tonic-gate
22400Sstevel@tonic-gate	sll		%o3, 30, %l5
22410Sstevel@tonic-gate	or		%l0, %l3, %l0
22420Sstevel@tonic-gate
22430Sstevel@tonic-gate	srl		%o3,  2, %l7
22440Sstevel@tonic-gate	add		%l0, %l1, %l0
22450Sstevel@tonic-gate
22460Sstevel@tonic-gate	add		%o0, %g1, %l1
22470Sstevel@tonic-gate	add		%l0, %l2, %l0
22480Sstevel@tonic-gate
22490Sstevel@tonic-gate	add		%l0, %l1, %o1
22500Sstevel@tonic-gate	or		%l5, %l7, %o3
22510Sstevel@tonic-gate
22520Sstevel@tonic-gate! Starting round 71
22530Sstevel@tonic-gate	sll		%o1, 5, %l0
22540Sstevel@tonic-gate	xor		%o2, %o3, %l1
22550Sstevel@tonic-gate	ld		[%i0 + (71 * 4)], %l2
22560Sstevel@tonic-gate
22570Sstevel@tonic-gate	srl		%o1, 27, %l3
22580Sstevel@tonic-gate	xor		%l1, %o4, %l1
22590Sstevel@tonic-gate
22600Sstevel@tonic-gate	sll		%o2, 30, %l5
22610Sstevel@tonic-gate	or		%l0, %l3, %l0
22620Sstevel@tonic-gate
22630Sstevel@tonic-gate	srl		%o2,  2, %l7
22640Sstevel@tonic-gate	add		%l0, %l1, %l0
22650Sstevel@tonic-gate
22660Sstevel@tonic-gate	add		%o5, %g1, %l1
22670Sstevel@tonic-gate	add		%l0, %l2, %l0
22680Sstevel@tonic-gate
22690Sstevel@tonic-gate	add		%l0, %l1, %o0
22700Sstevel@tonic-gate	or		%l5, %l7, %o2
22710Sstevel@tonic-gate
22720Sstevel@tonic-gate! Starting round 72
22730Sstevel@tonic-gate	sll		%o0, 5, %l0
22740Sstevel@tonic-gate	xor		%o1, %o2, %l1
22750Sstevel@tonic-gate	ld		[%i0 + (72 * 4)], %l2
22760Sstevel@tonic-gate
22770Sstevel@tonic-gate	srl		%o0, 27, %l3
22780Sstevel@tonic-gate	xor		%l1, %o3, %l1
22790Sstevel@tonic-gate
22800Sstevel@tonic-gate	sll		%o1, 30, %l5
22810Sstevel@tonic-gate	or		%l0, %l3, %l0
22820Sstevel@tonic-gate
22830Sstevel@tonic-gate	srl		%o1,  2, %l7
22840Sstevel@tonic-gate	add		%l0, %l1, %l0
22850Sstevel@tonic-gate
22860Sstevel@tonic-gate	add		%o4, %g1, %l1
22870Sstevel@tonic-gate	add		%l0, %l2, %l0
22880Sstevel@tonic-gate
22890Sstevel@tonic-gate	add		%l0, %l1, %o5
22900Sstevel@tonic-gate	or		%l5, %l7, %o1
22910Sstevel@tonic-gate
22920Sstevel@tonic-gate! Starting round 73
22930Sstevel@tonic-gate	sll		%o5, 5, %l0
22940Sstevel@tonic-gate	xor		%o0, %o1, %l1
22950Sstevel@tonic-gate	ld		[%i0 + (73 * 4)], %l2
22960Sstevel@tonic-gate
22970Sstevel@tonic-gate	srl		%o5, 27, %l3
22980Sstevel@tonic-gate	xor		%l1, %o2, %l1
22990Sstevel@tonic-gate
23000Sstevel@tonic-gate	sll		%o0, 30, %l5
23010Sstevel@tonic-gate	or		%l0, %l3, %l0
23020Sstevel@tonic-gate
23030Sstevel@tonic-gate	srl		%o0,  2, %l7
23040Sstevel@tonic-gate	add		%l0, %l1, %l0
23050Sstevel@tonic-gate
23060Sstevel@tonic-gate	add		%o3, %g1, %l1
23070Sstevel@tonic-gate	add		%l0, %l2, %l0
23080Sstevel@tonic-gate
23090Sstevel@tonic-gate	add		%l0, %l1, %o4
23100Sstevel@tonic-gate	or		%l5, %l7, %o0
23110Sstevel@tonic-gate
23120Sstevel@tonic-gate! Starting round 74
23130Sstevel@tonic-gate	sll		%o4, 5, %l0
23140Sstevel@tonic-gate	xor		%o5, %o0, %l1
23150Sstevel@tonic-gate	ld		[%i0 + (74 * 4)], %l2
23160Sstevel@tonic-gate
23170Sstevel@tonic-gate	srl		%o4, 27, %l3
23180Sstevel@tonic-gate	xor		%l1, %o1, %l1
23190Sstevel@tonic-gate
23200Sstevel@tonic-gate	sll		%o5, 30, %l5
23210Sstevel@tonic-gate	or		%l0, %l3, %l0
23220Sstevel@tonic-gate
23230Sstevel@tonic-gate	srl		%o5,  2, %l7
23240Sstevel@tonic-gate	add		%l0, %l1, %l0
23250Sstevel@tonic-gate
23260Sstevel@tonic-gate	add		%o2, %g1, %l1
23270Sstevel@tonic-gate	add		%l0, %l2, %l0
23280Sstevel@tonic-gate
23290Sstevel@tonic-gate	add		%l0, %l1, %o3
23300Sstevel@tonic-gate	or		%l5, %l7, %o5
23310Sstevel@tonic-gate
23320Sstevel@tonic-gate! Starting round 75
23330Sstevel@tonic-gate	sll		%o3, 5, %l0
23340Sstevel@tonic-gate	xor		%o4, %o5, %l1
23350Sstevel@tonic-gate	ld		[%i0 + (75 * 4)], %l2
23360Sstevel@tonic-gate
23370Sstevel@tonic-gate	srl		%o3, 27, %l3
23380Sstevel@tonic-gate	xor		%l1, %o0, %l1
23390Sstevel@tonic-gate
23400Sstevel@tonic-gate	sll		%o4, 30, %l5
23410Sstevel@tonic-gate	or		%l0, %l3, %l0
23420Sstevel@tonic-gate
23430Sstevel@tonic-gate	srl		%o4,  2, %l7
23440Sstevel@tonic-gate	add		%l0, %l1, %l0
23450Sstevel@tonic-gate
23460Sstevel@tonic-gate	add		%o1, %g1, %l1
23470Sstevel@tonic-gate	add		%l0, %l2, %l0
23480Sstevel@tonic-gate
23490Sstevel@tonic-gate	add		%l0, %l1, %o2
23500Sstevel@tonic-gate	or		%l5, %l7, %o4
23510Sstevel@tonic-gate
23520Sstevel@tonic-gate! Starting round 76
23530Sstevel@tonic-gate	sll		%o2, 5, %l0
23540Sstevel@tonic-gate	xor		%o3, %o4, %l1
23550Sstevel@tonic-gate	ld		[%i0 + (76 * 4)], %l2
23560Sstevel@tonic-gate
23570Sstevel@tonic-gate	srl		%o2, 27, %l3
23580Sstevel@tonic-gate	xor		%l1, %o5, %l1
23590Sstevel@tonic-gate
23600Sstevel@tonic-gate	sll		%o3, 30, %l5
23610Sstevel@tonic-gate	or		%l0, %l3, %l0
23620Sstevel@tonic-gate
23630Sstevel@tonic-gate	srl		%o3,  2, %l7
23640Sstevel@tonic-gate	add		%l0, %l1, %l0
23650Sstevel@tonic-gate
23660Sstevel@tonic-gate	add		%o0, %g1, %l1
23670Sstevel@tonic-gate	add		%l0, %l2, %l0
23680Sstevel@tonic-gate
23690Sstevel@tonic-gate	add		%l0, %l1, %o1
23700Sstevel@tonic-gate	or		%l5, %l7, %o3
23710Sstevel@tonic-gate
23720Sstevel@tonic-gate! Starting round 77
23730Sstevel@tonic-gate	sll		%o1, 5, %l0
23740Sstevel@tonic-gate	xor		%o2, %o3, %l1
23750Sstevel@tonic-gate	ld		[%i0 + (77 * 4)], %l2
23760Sstevel@tonic-gate
23770Sstevel@tonic-gate	srl		%o1, 27, %l3
23780Sstevel@tonic-gate	xor		%l1, %o4, %l1
23790Sstevel@tonic-gate
23800Sstevel@tonic-gate	sll		%o2, 30, %l5
23810Sstevel@tonic-gate	or		%l0, %l3, %l0
23820Sstevel@tonic-gate
23830Sstevel@tonic-gate	srl		%o2,  2, %l7
23840Sstevel@tonic-gate	add		%l0, %l1, %l0
23850Sstevel@tonic-gate
23860Sstevel@tonic-gate	add		%o5, %g1, %l1
23870Sstevel@tonic-gate	add		%l0, %l2, %l0
23880Sstevel@tonic-gate
23890Sstevel@tonic-gate	add		%l0, %l1, %o0
23900Sstevel@tonic-gate	or		%l5, %l7, %o2
23910Sstevel@tonic-gate
23920Sstevel@tonic-gate! Starting round 78
23930Sstevel@tonic-gate	sll		%o0, 5, %l0
23940Sstevel@tonic-gate	xor		%o1, %o2, %l1
23950Sstevel@tonic-gate	ld		[%i0 + (78 * 4)], %l2
23960Sstevel@tonic-gate
23970Sstevel@tonic-gate	srl		%o0, 27, %l3
23980Sstevel@tonic-gate	xor		%l1, %o3, %l1
23990Sstevel@tonic-gate
24000Sstevel@tonic-gate	sll		%o1, 30, %l5
24010Sstevel@tonic-gate	or		%l0, %l3, %l0
24020Sstevel@tonic-gate
24030Sstevel@tonic-gate	srl		%o1,  2, %l7
24040Sstevel@tonic-gate	add		%l0, %l1, %l0
24050Sstevel@tonic-gate
24060Sstevel@tonic-gate	add		%o4, %g1, %l1
24070Sstevel@tonic-gate	add		%l0, %l2, %l0
24080Sstevel@tonic-gate
24090Sstevel@tonic-gate	add		%l0, %l1, %o5
24100Sstevel@tonic-gate	or		%l5, %l7, %o1
24110Sstevel@tonic-gate
24120Sstevel@tonic-gate! Starting round 79
24130Sstevel@tonic-gate	sll		%o5, 5, %l0
24140Sstevel@tonic-gate	xor		%o0, %o1, %l1
24150Sstevel@tonic-gate	ld		[%i0 + (79 * 4)], %l2
24160Sstevel@tonic-gate
24170Sstevel@tonic-gate	srl		%o5, 27, %l3
24180Sstevel@tonic-gate	xor		%l1, %o2, %l1
24190Sstevel@tonic-gate	ld		[%i2 + 0], %i0
24200Sstevel@tonic-gate
24210Sstevel@tonic-gate	sll		%o0, 30, %l5
24220Sstevel@tonic-gate	or		%l0, %l3, %l0
24230Sstevel@tonic-gate	ld		[%i2 + 4], %i1
24240Sstevel@tonic-gate
24250Sstevel@tonic-gate	srl		%o0,  2, %l7
24260Sstevel@tonic-gate	add		%l0, %l1, %l0
24270Sstevel@tonic-gate	ld		[%i2 + 8], %i3
24280Sstevel@tonic-gate
24290Sstevel@tonic-gate	add		%o3, %g1, %l1
24300Sstevel@tonic-gate	add		%l0, %l2, %l0
24310Sstevel@tonic-gate	ld		[%i2 + 12], %i4
24320Sstevel@tonic-gate
24330Sstevel@tonic-gate	add		%l0, %l1, %o4
24340Sstevel@tonic-gate	or		%l5, %l7, %o0
24350Sstevel@tonic-gate	ld		[%i2 + 16], %i5
24360Sstevel@tonic-gate
24370Sstevel@tonic-gate! Compute final hash values for this block and store back to SHA1_CTX
24380Sstevel@tonic-gate	add 		%i0, %o4, %o4
24390Sstevel@tonic-gate	st 		%o4, [%i2 + 0]
24400Sstevel@tonic-gate
24410Sstevel@tonic-gate	add 		%i1, %o5, %o5
24420Sstevel@tonic-gate	st 		%o5, [%i2 + 4]
24430Sstevel@tonic-gate
24440Sstevel@tonic-gate	add 		%i3, %o0, %o0
24450Sstevel@tonic-gate	st 		%o0, [%i2 + 8]
24460Sstevel@tonic-gate
24470Sstevel@tonic-gate	add 		%i4, %o1, %o1
24480Sstevel@tonic-gate	st 		%o1, [%i2 + 12]
24490Sstevel@tonic-gate
24500Sstevel@tonic-gate	add 		%i5, %o2, %o2
24510Sstevel@tonic-gate	st 		%o2, [%i2 + 16]
24520Sstevel@tonic-gate
24530Sstevel@tonic-gate	ret
24540Sstevel@tonic-gate	restore
24550Sstevel@tonic-gate	SET_SIZE(SHA1TransformVIS)
24560Sstevel@tonic-gate
24570Sstevel@tonic-gate#endif	/* defined(lint) */
2458