.section ".text",#alloc,#execinstr
.align 64
vis_const:
.long 0x5a827999,0x5a827999 ! K_00_19
.long 0x6ed9eba1,0x6ed9eba1 ! K_20_39
.long 0x8f1bbcdc,0x8f1bbcdc ! K_40_59
.long 0xca62c1d6,0xca62c1d6 ! K_60_79
.long 0x00000100,0x00000100
.align 64
.type vis_const,#object
.size vis_const,(.-vis_const)
.globl sha1_block_data_order
sha1_block_data_order:
save %sp,-112,%sp
add %fp,0-256,%g1
1: call .+8
add %o7,vis_const-1b,%i3
ldd [%i3+0],%f34
ldd [%i3+8],%f36
ldd [%i3+16],%f38
ldd [%i3+24],%f40
ldd [%i3+32],%f32
ld [%i0+0],%o0
and %g1,-256,%g1
ld [%i0+4],%o1
sub %g1,0+112,%sp
ld [%i0+8],%o2
and %i1,7,%g4
ld [%i0+12],%o3
and %i1,-8,%i1
ld [%i0+16],%o4
! X[16] is maintained in FP register bank
.word 0x81b00304 !alignaddr %g0,%g4,%g0
ldd [%i1+0],%f0
sub %i1,-64,%o5
ldd [%i1+8],%f2
and %o5,-64,%o5
ldd [%i1+16],%f4
and %o5,255,%o5
ldd [%i1+24],%f6
add %g1,%o5,%o5
ldd [%i1+32],%f8
ldd [%i1+40],%f10
ldd [%i1+48],%f12
brz,pt %g4,.Laligned
ldd [%i1+56],%f14
ldd [%i1+64],%f16
.word 0x81b00902 !faligndata %f0,%f2,%f0
.word 0x85b08904 !faligndata %f2,%f4,%f2
.word 0x89b10906 !faligndata %f4,%f6,%f4
.word 0x8db18908 !faligndata %f6,%f8,%f6
.word 0x91b2090a !faligndata %f8,%f10,%f8
.word 0x95b2890c !faligndata %f10,%f12,%f10
.word 0x99b3090e !faligndata %f12,%f14,%f12
.word 0x9db38910 !faligndata %f14,%f16,%f14
.Laligned:
mov 5,%i3
dec 1,%i2
.word 0x81b0031b !alignaddr %g0,%i3,%g0
.word 0xa1b0ca40 !fpadd32 %f34,%f0,%f16
.word 0xa5b0ca42 !fpadd32 %f34,%f2,%f18
.word 0xa9b0ca44 !fpadd32 %f34,%f4,%f20
.word 0xadb0ca46 !fpadd32 %f34,%f6,%f22
.word 0xb1b0ca48 !fpadd32 %f34,%f8,%f24
.word 0xb5b0ca4a !fpadd32 %f34,%f10,%f26
.word 0xb9b0ca4c !fpadd32 %f34,%f12,%f28
.word 0xbdb0ca4e !fpadd32 %f34,%f14,%f30
std %f16,[%o5+0]
mov %o0,%l0
std %f18,[%o5+8]
mov %o1,%l1
std %f20,[%o5+16]
mov %o2,%l2
std %f22,[%o5+24]
mov %o3,%l3
std %f24,[%o5+32]
mov %o4,%l4
std %f26,[%o5+40]
.word 0x81b34da0 !fxors %f13,%f0,%f0
std %f28,[%o5+48]
ba .Loop
std %f30,[%o5+56]
.align 32
.Loop:
sll %l0,5,%i3 !! 0
and %l2,%l1,%g5
ld [%o5+0],%o7
.word 0x83b38da1 !fxors %f14,%f1,%f1! 0/ 0/ 0:X[1]^=X[14]
srl %l0,27,%i4
add %i3,%l4,%l4
.word 0xa5b08d88 !fxor %f2,%f8,%f18! 1/ 1/ 1:Tmp=X[2,3]^X[8,9]
sll %l1,30,%i5
add %i4,%l4,%l4
andn %l3,%l1,%i4
add %o7,%l4,%l4
.word 0x81b48d80 !fxor %f18,%f0,%f0 ! 2/ 4/ 3:X[0,1]^=X[2,3]^X[8,9]
srl %l1,2,%l1
or %i4,%g5,%i4
or %i5,%l1,%l1
add %i4,%l4,%l4
.word 0xa5b00900 !faligndata %f0,%f0,%f18 ! 3/ 7/ 5:Tmp=X[0,1]>>>24
sll %l4,5,%i3 !! 1
and %l1,%l0,%g5
ld [%o5+4],%o7
.word 0x81b00a40 !fpadd32 %f0,%f0,%f0 ! 4/ 8/ 6:X[0,1]<<=1
srl %l4,27,%i4
add %i3,%l3,%l3
.word 0xa5b486e1 !fmul8ulx16 %f18,%f32,%f18 ! 5/10/ 7:Tmp>>=7, Tmp&=1
sll %l0,30,%i5
add %i4,%l3,%l3
.word 0xa9b0ca4e !fpadd32 %f34,%f14,%f20 !
andn %l2,%l0,%i4
add %o7,%l3,%l3
.word 0x85b3cda2 !fxors %f15,%f2,%f2 !-1/-1/-1:X[0]^=X[13]
srl %l0,2,%l0
or %i4,%g5,%i4
.word 0x81b48d80 !fxor %f18,%f0,%f0 ! 8/14/10:X[0,1]|=Tmp
or %i5,%l0,%l0
add %i4,%l3,%l3
sll %l3,5,%i3 !! 2
and %l0,%l4,%g5
ld [%o5+8],%o7
.word 0x87b00da3 !fxors %f0,%f3,%f3! 0/ 0/ 0:X[1]^=X[14]
srl %l3,27,%i4
add %i3,%l2,%l2
.word 0xa5b10d8a !fxor %f4,%f10,%f18! 1/ 1/ 1:Tmp=X[2,3]^X[8,9]
sll %l4,30,%i5
add %i4,%l2,%l2
andn %l1,%l4,%i4
add %o7,%l2,%l2
.word 0x85b48d82 !fxor %f18,%f2,%f2 ! 2/ 4/ 3:X[0,1]^=X[2,3]^X[8,9]
srl %l4,2,%l4
or %i4,%g5,%i4
or %i5,%l4,%l4
add %i4,%l2,%l2
.word 0xa5b08902 !faligndata %f2,%f2,%f18 ! 3/ 7/ 5:Tmp=X[0,1]>>>24
sll %l2,5,%i3 !! 3
and %l4,%l3,%g5
ld [%o5+12],%o7
.word 0x85b08a42 !fpadd32 %f2,%f2,%f2 ! 4/ 8/ 6:X[0,1]<<=1
srl %l2,27,%i4
add %i3,%l1,%l1
.word 0xa5b486e1 !fmul8ulx16 %f18,%f32,%f18 ! 5/10/ 7:Tmp>>=7, Tmp&=1
sll %l3,30,%i5
add %i4,%l1,%l1
.word 0xa9b0ca40 !fpadd32 %f34,%f0,%f20 !
andn %l0,%l3,%i4
add %o7,%l1,%l1
.word 0x89b04da4 !fxors %f1,%f4,%f4 !-1/-1/-1:X[0]^=X[13]
srl %l3,2,%l3
or %i4,%g5,%i4
.word 0x85b48d82 !fxor %f18,%f2,%f2 ! 8/14/10:X[0,1]|=Tmp
or %i5,%l3,%l3
add %i4,%l1,%l1
std %f20,[%o5+0] !
sll %l1,5,%i3 !! 4
and %l3,%l2,%g5
ld [%o5+16],%o7
.word 0x8bb08da5 !fxors %f2,%f5,%f5! 0/ 0/ 0:X[1]^=X[14]
srl %l1,27,%i4
add %i3,%l0,%l0
.word 0xa5b18d8c !fxor %f6,%f12,%f18! 1/ 1/ 1:Tmp=X[2,3]^X[8,9]
sll %l2,30,%i5
add %i4,%l0,%l0
andn %l4,%l2,%i4
add %o7,%l0,%l0
.word 0x89b48d84 !fxor %f18,%f4,%f4 ! 2/ 4/ 3:X[0,1]^=X[2,3]^X[8,9]
srl %l2,2,%l2
or %i4,%g5,%i4
or %i5,%l2,%l2
add %i4,%l0,%l0
.word 0xa5b10904 !faligndata %f4,%f4,%f18 ! 3/ 7/ 5:Tmp=X[0,1]>>>24
sll %l0,5,%i3 !! 5
and %l2,%l1,%g5
ld [%o5+20],%o7
.word 0x89b10a44 !fpadd32 %f4,%f4,%f4 ! 4/ 8/ 6:X[0,1]<<=1
srl %l0,27,%i4
add %i3,%l4,%l4
.word 0xa5b486e1 !fmul8ulx16 %f18,%f32,%f18 ! 5/10/ 7:Tmp>>=7, Tmp&=1
sll %l1,30,%i5
add %i4,%l4,%l4
.word 0xa9b0ca42 !fpadd32 %f34,%f2,%f20 !
andn %l3,%l1,%i4
add %o7,%l4,%l4
.word 0x8db0cda6 !fxors %f3,%f6,%f6 !-1/-1/-1:X[0]^=X[13]
srl %l1,2,%l1
or %i4,%g5,%i4
.word 0x89b48d84 !fxor %f18,%f4,%f4 ! 8/14/10:X[0,1]|=Tmp
or %i5,%l1,%l1
add %i4,%l4,%l4
std %f20,[%o5+8] !
sll %l4,5,%i3 !! 6
and %l1,%l0,%g5
ld [%o5+24],%o7
.word 0x8fb10da7 !fxors %f4,%f7,%f7! 0/ 0/ 0:X[1]^=X[14]
srl %l4,27,%i4
add %i3,%l3,%l3
.word 0xa5b20d8e !fxor %f8,%f14,%f18! 1/ 1/ 1:Tmp=X[2,3]^X[8,9]
sll %l0,30,%i5
add %i4,%l3,%l3
andn %l2,%l0,%i4
add %o7,%l3,%l3
.word 0x8db48d86 !fxor %f18,%f6,%f6 ! 2/ 4/ 3:X[0,1]^=X[2,3]^X[8,9]
srl %l0,2,%l0
or %i4,%g5,%i4
or %i5,%l0,%l0
add %i4,%l3,%l3
.word 0xa5b18906 !faligndata %f6,%f6,%f18 ! 3/ 7/ 5:Tmp=X[0,1]>>>24
sll %l3,5,%i3 !! 7
and %l0,%l4,%g5
ld [%o5+28],%o7
.word 0x8db18a46 !fpadd32 %f6,%f6,%f6 ! 4/ 8/ 6:X[0,1]<<=1
srl %l3,27,%i4
add %i3,%l2,%l2
.word 0xa5b486e1 !fmul8ulx16 %f18,%f32,%f18 ! 5/10/ 7:Tmp>>=7, Tmp&=1
sll %l4,30,%i5
add %i4,%l2,%l2
.word 0xa9b14a44 !fpadd32 %f36,%f4,%f20 !
andn %l1,%l4,%i4
add %o7,%l2,%l2
.word 0x91b14da8 !fxors %f5,%f8,%f8 !-1/-1/-1:X[0]^=X[13]
srl %l4,2,%l4
or %i4,%g5,%i4
.word 0x8db48d86 !fxor %f18,%f6,%f6 ! 8/14/10:X[0,1]|=Tmp
or %i5,%l4,%l4
add %i4,%l2,%l2
std %f20,[%o5+16] !
sll %l2,5,%i3 !! 8
and %l4,%l3,%g5
ld [%o5+32],%o7
.word 0x93b18da9 !fxors %f6,%f9,%f9! 0/ 0/ 0:X[1]^=X[14]
srl %l2,27,%i4
add %i3,%l1,%l1
.word 0xa5b28d80 !fxor %f10,%f0,%f18! 1/ 1/ 1:Tmp=X[2,3]^X[8,9]
sll %l3,30,%i5
add %i4,%l1,%l1
andn %l0,%l3,%i4
add %o7,%l1,%l1
.word 0x91b48d88 !fxor %f18,%f8,%f8 ! 2/ 4/ 3:X[0,1]^=X[2,3]^X[8,9]
srl %l3,2,%l3
or %i4,%g5,%i4
or %i5,%l3,%l3
add %i4,%l1,%l1
.word 0xa5b20908 !faligndata %f8,%f8,%f18 ! 3/ 7/ 5:Tmp=X[0,1]>>>24
sll %l1,5,%i3 !! 9
and %l3,%l2,%g5
ld [%o5+36],%o7
.word 0x91b20a48 !fpadd32 %f8,%f8,%f8 ! 4/ 8/ 6:X[0,1]<<=1
srl %l1,27,%i4
add %i3,%l0,%l0
.word 0xa5b486e1 !fmul8ulx16 %f18,%f32,%f18 ! 5/10/ 7:Tmp>>=7, Tmp&=1
sll %l2,30,%i5
add %i4,%l0,%l0
.word 0xa9b14a46 !fpadd32 %f36,%f6,%f20 !
andn %l4,%l2,%i4
add %o7,%l0,%l0
.word 0x95b1cdaa !fxors %f7,%f10,%f10 !-1/-1/-1:X[0]^=X[13]
srl %l2,2,%l2
or %i4,%g5,%i4
.word 0x91b48d88 !fxor %f18,%f8,%f8 ! 8/14/10:X[0,1]|=Tmp
or %i5,%l2,%l2
add %i4,%l0,%l0
std %f20,[%o5+24] !
sll %l0,5,%i3 !! 10
and %l2,%l1,%g5
ld [%o5+40],%o7
.word 0x97b20dab !fxors %f8,%f11,%f11! 0/ 0/ 0:X[1]^=X[14]
srl %l0,27,%i4
add %i3,%l4,%l4
.word 0xa5b30d82 !fxor %f12,%f2,%f18! 1/ 1/ 1:Tmp=X[2,3]^X[8,9]
sll %l1,30,%i5
add %i4,%l4,%l4
andn %l3,%l1,%i4
add %o7,%l4,%l4
.word 0x95b48d8a !fxor %f18,%f10,%f10 ! 2/ 4/ 3:X[0,1]^=X[2,3]^X[8,9]
srl %l1,2,%l1
or %i4,%g5,%i4
or %i5,%l1,%l1
add %i4,%l4,%l4
.word 0xa5b2890a !faligndata %f10,%f10,%f18 ! 3/ 7/ 5:Tmp=X[0,1]>>>24
sll %l4,5,%i3 !! 11
and %l1,%l0,%g5
ld [%o5+44],%o7
.word 0x95b28a4a !fpadd32 %f10,%f10,%f10 ! 4/ 8/ 6:X[0,1]<<=1
srl %l4,27,%i4
add %i3,%l3,%l3
.word 0xa5b486e1 !fmul8ulx16 %f18,%f32,%f18 ! 5/10/ 7:Tmp>>=7, Tmp&=1
sll %l0,30,%i5
add %i4,%l3,%l3
.word 0xa9b14a48 !fpadd32 %f36,%f8,%f20 !
andn %l2,%l0,%i4
add %o7,%l3,%l3
.word 0x99b24dac !fxors %f9,%f12,%f12 !-1/-1/-1:X[0]^=X[13]
srl %l0,2,%l0
or %i4,%g5,%i4
.word 0x95b48d8a !fxor %f18,%f10,%f10 ! 8/14/10:X[0,1]|=Tmp
or %i5,%l0,%l0
add %i4,%l3,%l3
std %f20,[%o5+32] !
sll %l3,5,%i3 !! 12
and %l0,%l4,%g5
ld [%o5+48],%o7
.word 0x9bb28dad !fxors %f10,%f13,%f13! 0/ 0/ 0:X[1]^=X[14]
srl %l3,27,%i4
add %i3,%l2,%l2
.word 0xa5b38d84 !fxor %f14,%f4,%f18! 1/ 1/ 1:Tmp=X[2,3]^X[8,9]
sll %l4,30,%i5
add %i4,%l2,%l2
andn %l1,%l4,%i4
add %o7,%l2,%l2
.word 0x99b48d8c !fxor %f18,%f12,%f12 ! 2/ 4/ 3:X[0,1]^=X[2,3]^X[8,9]
srl %l4,2,%l4
or %i4,%g5,%i4
or %i5,%l4,%l4
add %i4,%l2,%l2
.word 0xa5b3090c !faligndata %f12,%f12,%f18 ! 3/ 7/ 5:Tmp=X[0,1]>>>24
sll %l2,5,%i3 !! 13
and %l4,%l3,%g5
ld [%o5+52],%o7
.word 0x99b30a4c !fpadd32 %f12,%f12,%f12 ! 4/ 8/ 6:X[0,1]<<=1
srl %l2,27,%i4
add %i3,%l1,%l1
.word 0xa5b486e1 !fmul8ulx16 %f18,%f32,%f18 ! 5/10/ 7:Tmp>>=7, Tmp&=1
sll %l3,30,%i5
add %i4,%l1,%l1
.word 0xa9b14a4a !fpadd32 %f36,%f10,%f20 !
andn %l0,%l3,%i4
add %o7,%l1,%l1
.word 0x9db2cdae !fxors %f11,%f14,%f14 !-1/-1/-1:X[0]^=X[13]
srl %l3,2,%l3
or %i4,%g5,%i4
.word 0x99b48d8c !fxor %f18,%f12,%f12 ! 8/14/10:X[0,1]|=Tmp
or %i5,%l3,%l3
add %i4,%l1,%l1
std %f20,[%o5+40] !
sll %l1,5,%i3 !! 14
and %l3,%l2,%g5
ld [%o5+56],%o7
.word 0x9fb30daf !fxors %f12,%f15,%f15! 0/ 0/ 0:X[1]^=X[14]
srl %l1,27,%i4
add %i3,%l0,%l0
.word 0xa5b00d86 !fxor %f0,%f6,%f18! 1/ 1/ 1:Tmp=X[2,3]^X[8,9]
sll %l2,30,%i5
add %i4,%l0,%l0
andn %l4,%l2,%i4
add %o7,%l0,%l0
.word 0x9db48d8e !fxor %f18,%f14,%f14 ! 2/ 4/ 3:X[0,1]^=X[2,3]^X[8,9]
srl %l2,2,%l2
or %i4,%g5,%i4
or %i5,%l2,%l2
add %i4,%l0,%l0
.word 0xa5b3890e !faligndata %f14,%f14,%f18 ! 3/ 7/ 5:Tmp=X[0,1]>>>24
sll %l0,5,%i3 !! 15
and %l2,%l1,%g5
ld [%o5+60],%o7
.word 0x9db38a4e !fpadd32 %f14,%f14,%f14 ! 4/ 8/ 6:X[0,1]<<=1
srl %l0,27,%i4
add %i3,%l4,%l4
.word 0xa5b486e1 !fmul8ulx16 %f18,%f32,%f18 ! 5/10/ 7:Tmp>>=7, Tmp&=1
sll %l1,30,%i5
add %i4,%l4,%l4
.word 0xa9b14a4c !fpadd32 %f36,%f12,%f20 !
andn %l3,%l1,%i4
add %o7,%l4,%l4
.word 0x81b34da0 !fxors %f13,%f0,%f0 !-1/-1/-1:X[0]^=X[13]
srl %l1,2,%l1
or %i4,%g5,%i4
.word 0x9db48d8e !fxor %f18,%f14,%f14 ! 8/14/10:X[0,1]|=Tmp
or %i5,%l1,%l1
add %i4,%l4,%l4
std %f20,[%o5+48] !
sll %l4,5,%i3 !! 16
and %l1,%l0,%g5
ld [%o5+0],%o7
.word 0x83b38da1 !fxors %f14,%f1,%f1! 0/ 0/ 0:X[1]^=X[14]
srl %l4,27,%i4
add %i3,%l3,%l3
.word 0xa5b08d88 !fxor %f2,%f8,%f18! 1/ 1/ 1:Tmp=X[2,3]^X[8,9]
sll %l0,30,%i5
add %i4,%l3,%l3
andn %l2,%l0,%i4
add %o7,%l3,%l3
.word 0x81b48d80 !fxor %f18,%f0,%f0 ! 2/ 4/ 3:X[0,1]^=X[2,3]^X[8,9]
srl %l0,2,%l0
or %i4,%g5,%i4
or %i5,%l0,%l0
add %i4,%l3,%l3
.word 0xa5b00900 !faligndata %f0,%f0,%f18 ! 3/ 7/ 5:Tmp=X[0,1]>>>24
sll %l3,5,%i3 !! 17
and %l0,%l4,%g5
ld [%o5+4],%o7
.word 0x81b00a40 !fpadd32 %f0,%f0,%f0 ! 4/ 8/ 6:X[0,1]<<=1
srl %l3,27,%i4
add %i3,%l2,%l2
.word 0xa5b486e1 !fmul8ulx16 %f18,%f32,%f18 ! 5/10/ 7:Tmp>>=7, Tmp&=1
sll %l4,30,%i5
add %i4,%l2,%l2
.word 0xa9b14a4e !fpadd32 %f36,%f14,%f20 !
andn %l1,%l4,%i4
add %o7,%l2,%l2
.word 0x85b3cda2 !fxors %f15,%f2,%f2 !-1/-1/-1:X[0]^=X[13]
srl %l4,2,%l4
or %i4,%g5,%i4
.word 0x81b48d80 !fxor %f18,%f0,%f0 ! 8/14/10:X[0,1]|=Tmp
or %i5,%l4,%l4
add %i4,%l2,%l2
std %f20,[%o5+56] !
sll %l2,5,%i3 !! 18
and %l4,%l3,%g5
ld [%o5+8],%o7
.word 0x87b00da3 !fxors %f0,%f3,%f3! 0/ 0/ 0:X[1]^=X[14]
srl %l2,27,%i4
add %i3,%l1,%l1
.word 0xa5b10d8a !fxor %f4,%f10,%f18! 1/ 1/ 1:Tmp=X[2,3]^X[8,9]
sll %l3,30,%i5
add %i4,%l1,%l1
andn %l0,%l3,%i4
add %o7,%l1,%l1
.word 0x85b48d82 !fxor %f18,%f2,%f2 ! 2/ 4/ 3:X[0,1]^=X[2,3]^X[8,9]
srl %l3,2,%l3
or %i4,%g5,%i4
or %i5,%l3,%l3
add %i4,%l1,%l1
.word 0xa5b08902 !faligndata %f2,%f2,%f18 ! 3/ 7/ 5:Tmp=X[0,1]>>>24
sll %l1,5,%i3 !! 19
and %l3,%l2,%g5
ld [%o5+12],%o7
.word 0x85b08a42 !fpadd32 %f2,%f2,%f2 ! 4/ 8/ 6:X[0,1]<<=1
srl %l1,27,%i4
add %i3,%l0,%l0
.word 0xa5b486e1 !fmul8ulx16 %f18,%f32,%f18 ! 5/10/ 7:Tmp>>=7, Tmp&=1
sll %l2,30,%i5
add %i4,%l0,%l0
.word 0xa9b14a40 !fpadd32 %f36,%f0,%f20 !
andn %l4,%l2,%i4
add %o7,%l0,%l0
.word 0x89b04da4 !fxors %f1,%f4,%f4 !-1/-1/-1:X[0]^=X[13]
srl %l2,2,%l2
or %i4,%g5,%i4
.word 0x85b48d82 !fxor %f18,%f2,%f2 ! 8/14/10:X[0,1]|=Tmp
or %i5,%l2,%l2
add %i4,%l0,%l0
std %f20,[%o5+0] !
sll %l0,5,%i3 !! 20
ld [%o5+16],%o7
.word 0x8bb08da5 !fxors %f2,%f5,%f5! 0/ 0/ 0:X[1]^=X[14]
srl %l0,27,%i4
add %i3,%l4,%l4
.word 0xa5b18d8c !fxor %f6,%f12,%f18! 1/ 1/ 1:Tmp=X[2,3]^X[8,9]
xor %l2,%l1,%i3
add %i4,%l4,%l4
sll %l1,30,%i5
xor %l3,%i3,%i4
.word 0x89b48d84 !fxor %f18,%f4,%f4 ! 2/ 4/ 3:X[0,1]^=X[2,3]^X[8,9]
srl %l1,2,%l1
add %i4,%l4,%l4
or %i5,%l1,%l1
add %o7,%l4,%l4
.word 0xa5b10904 !faligndata %f4,%f4,%f18 ! 3/ 7/ 5:Tmp=X[0,1]>>>24
sll %l4,5,%i3 !! 21
ld [%o5+20],%o7
.word 0x89b10a44 !fpadd32 %f4,%f4,%f4 ! 4/ 8/ 6:X[0,1]<<=1
srl %l4,27,%i4
add %i3,%l3,%l3
.word 0xa5b486e1 !fmul8ulx16 %f18,%f32,%f18 ! 5/10/ 7:Tmp>>=7, Tmp&=1
xor %l1,%l0,%i3
add %i4,%l3,%l3
.word 0xa9b14a42 !fpadd32 %f36,%f2,%f20 !
sll %l0,30,%i5
xor %l2,%i3,%i4
.word 0x8db0cda6 !fxors %f3,%f6,%f6 !-1/-1/-1:X[0]^=X[13]
srl %l0,2,%l0
add %i4,%l3,%l3
.word 0x89b48d84 !fxor %f18,%f4,%f4 ! 8/14/10:X[0,1]|=Tmp
or %i5,%l0,%l0
add %o7,%l3,%l3
std %f20,[%o5+8] !
sll %l3,5,%i3 !! 22
ld [%o5+24],%o7
.word 0x8fb10da7 !fxors %f4,%f7,%f7! 0/ 0/ 0:X[1]^=X[14]
srl %l3,27,%i4
add %i3,%l2,%l2
.word 0xa5b20d8e !fxor %f8,%f14,%f18! 1/ 1/ 1:Tmp=X[2,3]^X[8,9]
xor %l0,%l4,%i3
add %i4,%l2,%l2
sll %l4,30,%i5
xor %l1,%i3,%i4
.word 0x8db48d86 !fxor %f18,%f6,%f6 ! 2/ 4/ 3:X[0,1]^=X[2,3]^X[8,9]
srl %l4,2,%l4
add %i4,%l2,%l2
or %i5,%l4,%l4
add %o7,%l2,%l2
.word 0xa5b18906 !faligndata %f6,%f6,%f18 ! 3/ 7/ 5:Tmp=X[0,1]>>>24
sll %l2,5,%i3 !! 23
ld [%o5+28],%o7
.word 0x8db18a46 !fpadd32 %f6,%f6,%f6 ! 4/ 8/ 6:X[0,1]<<=1
srl %l2,27,%i4
add %i3,%l1,%l1
.word 0xa5b486e1 !fmul8ulx16 %f18,%f32,%f18 ! 5/10/ 7:Tmp>>=7, Tmp&=1
xor %l4,%l3,%i3
add %i4,%l1,%l1
.word 0xa9b14a44 !fpadd32 %f36,%f4,%f20 !
sll %l3,30,%i5
xor %l0,%i3,%i4
.word 0x91b14da8 !fxors %f5,%f8,%f8 !-1/-1/-1:X[0]^=X[13]
srl %l3,2,%l3
add %i4,%l1,%l1
.word 0x8db48d86 !fxor %f18,%f6,%f6 ! 8/14/10:X[0,1]|=Tmp
or %i5,%l3,%l3
add %o7,%l1,%l1
std %f20,[%o5+16] !
sll %l1,5,%i3 !! 24
ld [%o5+32],%o7
.word 0x93b18da9 !fxors %f6,%f9,%f9! 0/ 0/ 0:X[1]^=X[14]
srl %l1,27,%i4
add %i3,%l0,%l0
.word 0xa5b28d80 !fxor %f10,%f0,%f18! 1/ 1/ 1:Tmp=X[2,3]^X[8,9]
xor %l3,%l2,%i3
add %i4,%l0,%l0
sll %l2,30,%i5
xor %l4,%i3,%i4
.word 0x91b48d88 !fxor %f18,%f8,%f8 ! 2/ 4/ 3:X[0,1]^=X[2,3]^X[8,9]
srl %l2,2,%l2
add %i4,%l0,%l0
or %i5,%l2,%l2
add %o7,%l0,%l0
.word 0xa5b20908 !faligndata %f8,%f8,%f18 ! 3/ 7/ 5:Tmp=X[0,1]>>>24
sll %l0,5,%i3 !! 25
ld [%o5+36],%o7
.word 0x91b20a48 !fpadd32 %f8,%f8,%f8 ! 4/ 8/ 6:X[0,1]<<=1
srl %l0,27,%i4
add %i3,%l4,%l4
.word 0xa5b486e1 !fmul8ulx16 %f18,%f32,%f18 ! 5/10/ 7:Tmp>>=7, Tmp&=1
xor %l2,%l1,%i3
add %i4,%l4,%l4
.word 0xa9b14a46 !fpadd32 %f36,%f6,%f20 !
sll %l1,30,%i5
xor %l3,%i3,%i4
.word 0x95b1cdaa !fxors %f7,%f10,%f10 !-1/-1/-1:X[0]^=X[13]
srl %l1,2,%l1
add %i4,%l4,%l4
.word 0x91b48d88 !fxor %f18,%f8,%f8 ! 8/14/10:X[0,1]|=Tmp
or %i5,%l1,%l1
add %o7,%l4,%l4
std %f20,[%o5+24] !
sll %l4,5,%i3 !! 26
ld [%o5+40],%o7
.word 0x97b20dab !fxors %f8,%f11,%f11! 0/ 0/ 0:X[1]^=X[14]
srl %l4,27,%i4
add %i3,%l3,%l3
.word 0xa5b30d82 !fxor %f12,%f2,%f18! 1/ 1/ 1:Tmp=X[2,3]^X[8,9]
xor %l1,%l0,%i3
add %i4,%l3,%l3
sll %l0,30,%i5
xor %l2,%i3,%i4
.word 0x95b48d8a !fxor %f18,%f10,%f10 ! 2/ 4/ 3:X[0,1]^=X[2,3]^X[8,9]
srl %l0,2,%l0
add %i4,%l3,%l3
or %i5,%l0,%l0
add %o7,%l3,%l3
.word 0xa5b2890a !faligndata %f10,%f10,%f18 ! 3/ 7/ 5:Tmp=X[0,1]>>>24
sll %l3,5,%i3 !! 27
ld [%o5+44],%o7
.word 0x95b28a4a !fpadd32 %f10,%f10,%f10 ! 4/ 8/ 6:X[0,1]<<=1
srl %l3,27,%i4
add %i3,%l2,%l2
.word 0xa5b486e1 !fmul8ulx16 %f18,%f32,%f18 ! 5/10/ 7:Tmp>>=7, Tmp&=1
xor %l0,%l4,%i3
add %i4,%l2,%l2
.word 0xa9b1ca48 !fpadd32 %f38,%f8,%f20 !
sll %l4,30,%i5
xor %l1,%i3,%i4
.word 0x99b24dac !fxors %f9,%f12,%f12 !-1/-1/-1:X[0]^=X[13]
srl %l4,2,%l4
add %i4,%l2,%l2
.word 0x95b48d8a !fxor %f18,%f10,%f10 ! 8/14/10:X[0,1]|=Tmp
or %i5,%l4,%l4
add %o7,%l2,%l2
std %f20,[%o5+32] !
sll %l2,5,%i3 !! 28
ld [%o5+48],%o7
.word 0x9bb28dad !fxors %f10,%f13,%f13! 0/ 0/ 0:X[1]^=X[14]
srl %l2,27,%i4
add %i3,%l1,%l1
.word 0xa5b38d84 !fxor %f14,%f4,%f18! 1/ 1/ 1:Tmp=X[2,3]^X[8,9]
xor %l4,%l3,%i3
add %i4,%l1,%l1
sll %l3,30,%i5
xor %l0,%i3,%i4
.word 0x99b48d8c !fxor %f18,%f12,%f12 ! 2/ 4/ 3:X[0,1]^=X[2,3]^X[8,9]
srl %l3,2,%l3
add %i4,%l1,%l1
or %i5,%l3,%l3
add %o7,%l1,%l1
.word 0xa5b3090c !faligndata %f12,%f12,%f18 ! 3/ 7/ 5:Tmp=X[0,1]>>>24
sll %l1,5,%i3 !! 29
ld [%o5+52],%o7
.word 0x99b30a4c !fpadd32 %f12,%f12,%f12 ! 4/ 8/ 6:X[0,1]<<=1
srl %l1,27,%i4
add %i3,%l0,%l0
.word 0xa5b486e1 !fmul8ulx16 %f18,%f32,%f18 ! 5/10/ 7:Tmp>>=7, Tmp&=1
xor %l3,%l2,%i3
add %i4,%l0,%l0
.word 0xa9b1ca4a !fpadd32 %f38,%f10,%f20 !
sll %l2,30,%i5
xor %l4,%i3,%i4
.word 0x9db2cdae !fxors %f11,%f14,%f14 !-1/-1/-1:X[0]^=X[13]
srl %l2,2,%l2
add %i4,%l0,%l0
.word 0x99b48d8c !fxor %f18,%f12,%f12 ! 8/14/10:X[0,1]|=Tmp
or %i5,%l2,%l2
add %o7,%l0,%l0
std %f20,[%o5+40] !
sll %l0,5,%i3 !! 30
ld [%o5+56],%o7
.word 0x9fb30daf !fxors %f12,%f15,%f15! 0/ 0/ 0:X[1]^=X[14]
srl %l0,27,%i4
add %i3,%l4,%l4
.word 0xa5b00d86 !fxor %f0,%f6,%f18! 1/ 1/ 1:Tmp=X[2,3]^X[8,9]
xor %l2,%l1,%i3
add %i4,%l4,%l4
sll %l1,30,%i5
xor %l3,%i3,%i4
.word 0x9db48d8e !fxor %f18,%f14,%f14 ! 2/ 4/ 3:X[0,1]^=X[2,3]^X[8,9]
srl %l1,2,%l1
add %i4,%l4,%l4
or %i5,%l1,%l1
add %o7,%l4,%l4
.word 0xa5b3890e !faligndata %f14,%f14,%f18 ! 3/ 7/ 5:Tmp=X[0,1]>>>24
sll %l4,5,%i3 !! 31
ld [%o5+60],%o7
.word 0x9db38a4e !fpadd32 %f14,%f14,%f14 ! 4/ 8/ 6:X[0,1]<<=1
srl %l4,27,%i4
add %i3,%l3,%l3
.word 0xa5b486e1 !fmul8ulx16 %f18,%f32,%f18 ! 5/10/ 7:Tmp>>=7, Tmp&=1
xor %l1,%l0,%i3
add %i4,%l3,%l3
.word 0xa9b1ca4c !fpadd32 %f38,%f12,%f20 !
sll %l0,30,%i5
xor %l2,%i3,%i4
.word 0x81b34da0 !fxors %f13,%f0,%f0 !-1/-1/-1:X[0]^=X[13]
srl %l0,2,%l0
add %i4,%l3,%l3
.word 0x9db48d8e !fxor %f18,%f14,%f14 ! 8/14/10:X[0,1]|=Tmp
or %i5,%l0,%l0
add %o7,%l3,%l3
std %f20,[%o5+48] !
sll %l3,5,%i3 !! 32
ld [%o5+0],%o7
.word 0x83b38da1 !fxors %f14,%f1,%f1! 0/ 0/ 0:X[1]^=X[14]
srl %l3,27,%i4
add %i3,%l2,%l2
.word 0xa5b08d88 !fxor %f2,%f8,%f18! 1/ 1/ 1:Tmp=X[2,3]^X[8,9]
xor %l0,%l4,%i3
add %i4,%l2,%l2
sll %l4,30,%i5
xor %l1,%i3,%i4
.word 0x81b48d80 !fxor %f18,%f0,%f0 ! 2/ 4/ 3:X[0,1]^=X[2,3]^X[8,9]
srl %l4,2,%l4
add %i4,%l2,%l2
or %i5,%l4,%l4
add %o7,%l2,%l2
.word 0xa5b00900 !faligndata %f0,%f0,%f18 ! 3/ 7/ 5:Tmp=X[0,1]>>>24
sll %l2,5,%i3 !! 33
ld [%o5+4],%o7
.word 0x81b00a40 !fpadd32 %f0,%f0,%f0 ! 4/ 8/ 6:X[0,1]<<=1
srl %l2,27,%i4
add %i3,%l1,%l1
.word 0xa5b486e1 !fmul8ulx16 %f18,%f32,%f18 ! 5/10/ 7:Tmp>>=7, Tmp&=1
xor %l4,%l3,%i3
add %i4,%l1,%l1
.word 0xa9b1ca4e !fpadd32 %f38,%f14,%f20 !
sll %l3,30,%i5
xor %l0,%i3,%i4
.word 0x85b3cda2 !fxors %f15,%f2,%f2 !-1/-1/-1:X[0]^=X[13]
srl %l3,2,%l3
add %i4,%l1,%l1
.word 0x81b48d80 !fxor %f18,%f0,%f0 ! 8/14/10:X[0,1]|=Tmp
or %i5,%l3,%l3
add %o7,%l1,%l1
std %f20,[%o5+56] !
sll %l1,5,%i3 !! 34
ld [%o5+8],%o7
.word 0x87b00da3 !fxors %f0,%f3,%f3! 0/ 0/ 0:X[1]^=X[14]
srl %l1,27,%i4
add %i3,%l0,%l0
.word 0xa5b10d8a !fxor %f4,%f10,%f18! 1/ 1/ 1:Tmp=X[2,3]^X[8,9]
xor %l3,%l2,%i3
add %i4,%l0,%l0
sll %l2,30,%i5
xor %l4,%i3,%i4
.word 0x85b48d82 !fxor %f18,%f2,%f2 ! 2/ 4/ 3:X[0,1]^=X[2,3]^X[8,9]
srl %l2,2,%l2
add %i4,%l0,%l0
or %i5,%l2,%l2
add %o7,%l0,%l0
.word 0xa5b08902 !faligndata %f2,%f2,%f18 ! 3/ 7/ 5:Tmp=X[0,1]>>>24
sll %l0,5,%i3 !! 35
ld [%o5+12],%o7
.word 0x85b08a42 !fpadd32 %f2,%f2,%f2 ! 4/ 8/ 6:X[0,1]<<=1
srl %l0,27,%i4
add %i3,%l4,%l4
.word 0xa5b486e1 !fmul8ulx16 %f18,%f32,%f18 ! 5/10/ 7:Tmp>>=7, Tmp&=1
xor %l2,%l1,%i3
add %i4,%l4,%l4
.word 0xa9b1ca40 !fpadd32 %f38,%f0,%f20 !
sll %l1,30,%i5
xor %l3,%i3,%i4
.word 0x89b04da4 !fxors %f1,%f4,%f4 !-1/-1/-1:X[0]^=X[13]
srl %l1,2,%l1
add %i4,%l4,%l4
.word 0x85b48d82 !fxor %f18,%f2,%f2 ! 8/14/10:X[0,1]|=Tmp
or %i5,%l1,%l1
add %o7,%l4,%l4
std %f20,[%o5+0] !
sll %l4,5,%i3 !! 36
ld [%o5+16],%o7
.word 0x8bb08da5 !fxors %f2,%f5,%f5! 0/ 0/ 0:X[1]^=X[14]
srl %l4,27,%i4
add %i3,%l3,%l3
.word 0xa5b18d8c !fxor %f6,%f12,%f18! 1/ 1/ 1:Tmp=X[2,3]^X[8,9]
xor %l1,%l0,%i3
add %i4,%l3,%l3
sll %l0,30,%i5
xor %l2,%i3,%i4
.word 0x89b48d84 !fxor %f18,%f4,%f4 ! 2/ 4/ 3:X[0,1]^=X[2,3]^X[8,9]
srl %l0,2,%l0
add %i4,%l3,%l3
or %i5,%l0,%l0
add %o7,%l3,%l3
.word 0xa5b10904 !faligndata %f4,%f4,%f18 ! 3/ 7/ 5:Tmp=X[0,1]>>>24
sll %l3,5,%i3 !! 37
ld [%o5+20],%o7
.word 0x89b10a44 !fpadd32 %f4,%f4,%f4 ! 4/ 8/ 6:X[0,1]<<=1
srl %l3,27,%i4
add %i3,%l2,%l2
.word 0xa5b486e1 !fmul8ulx16 %f18,%f32,%f18 ! 5/10/ 7:Tmp>>=7, Tmp&=1
xor %l0,%l4,%i3
add %i4,%l2,%l2
.word 0xa9b1ca42 !fpadd32 %f38,%f2,%f20 !
sll %l4,30,%i5
xor %l1,%i3,%i4
.word 0x8db0cda6 !fxors %f3,%f6,%f6 !-1/-1/-1:X[0]^=X[13]
srl %l4,2,%l4
add %i4,%l2,%l2
.word 0x89b48d84 !fxor %f18,%f4,%f4 ! 8/14/10:X[0,1]|=Tmp
or %i5,%l4,%l4
add %o7,%l2,%l2
std %f20,[%o5+8] !
sll %l2,5,%i3 !! 38
ld [%o5+24],%o7
.word 0x8fb10da7 !fxors %f4,%f7,%f7! 0/ 0/ 0:X[1]^=X[14]
srl %l2,27,%i4
add %i3,%l1,%l1
.word 0xa5b20d8e !fxor %f8,%f14,%f18! 1/ 1/ 1:Tmp=X[2,3]^X[8,9]
xor %l4,%l3,%i3
add %i4,%l1,%l1
sll %l3,30,%i5
xor %l0,%i3,%i4
.word 0x8db48d86 !fxor %f18,%f6,%f6 ! 2/ 4/ 3:X[0,1]^=X[2,3]^X[8,9]
srl %l3,2,%l3
add %i4,%l1,%l1
or %i5,%l3,%l3
add %o7,%l1,%l1
.word 0xa5b18906 !faligndata %f6,%f6,%f18 ! 3/ 7/ 5:Tmp=X[0,1]>>>24
sll %l1,5,%i3 !! 39
ld [%o5+28],%o7
.word 0x8db18a46 !fpadd32 %f6,%f6,%f6 ! 4/ 8/ 6:X[0,1]<<=1
srl %l1,27,%i4
add %i3,%l0,%l0
.word 0xa5b486e1 !fmul8ulx16 %f18,%f32,%f18 ! 5/10/ 7:Tmp>>=7, Tmp&=1
xor %l3,%l2,%i3
add %i4,%l0,%l0
.word 0xa9b1ca44 !fpadd32 %f38,%f4,%f20 !
sll %l2,30,%i5
xor %l4,%i3,%i4
.word 0x91b14da8 !fxors %f5,%f8,%f8 !-1/-1/-1:X[0]^=X[13]
srl %l2,2,%l2
add %i4,%l0,%l0
.word 0x8db48d86 !fxor %f18,%f6,%f6 ! 8/14/10:X[0,1]|=Tmp
or %i5,%l2,%l2
add %o7,%l0,%l0
std %f20,[%o5+16] !
sll %l0,5,%i3 !! 40
ld [%o5+32],%o7
.word 0x93b18da9 !fxors %f6,%f9,%f9! 0/ 0/ 0:X[1]^=X[14]
srl %l0,27,%i4
add %i3,%l4,%l4
.word 0xa5b28d80 !fxor %f10,%f0,%f18! 1/ 1/ 1:Tmp=X[2,3]^X[8,9]
and %l2,%l1,%i3
add %i4,%l4,%l4
sll %l1,30,%i5
or %l2,%l1,%i4
.word 0x91b48d88 !fxor %f18,%f8,%f8 ! 2/ 4/ 3:X[0,1]^=X[2,3]^X[8,9]
srl %l1,2,%l1
and %l3,%i4,%i4
add %o7,%l4,%l4
or %i4,%i3,%i4
.word 0xa5b20908 !faligndata %f8,%f8,%f18 ! 3/ 7/ 5:Tmp=X[0,1]>>>24
or %i5,%l1,%l1
add %i4,%l4,%l4
.word 0x91b20a48 !fpadd32 %f8,%f8,%f8 ! 4/ 8/ 6:X[0,1]<<=1
sll %l4,5,%i3 !! 41
ld [%o5+36],%o7
srl %l4,27,%i4
add %i3,%l3,%l3
.word 0xa5b486e1 !fmul8ulx16 %f18,%f32,%f18 ! 5/10/ 7:Tmp>>=7, Tmp&=1
and %l1,%l0,%i3
add %i4,%l3,%l3
.word 0xa9b1ca46 !fpadd32 %f38,%f6,%f20 !
sll %l0,30,%i5
or %l1,%l0,%i4
.word 0x95b1cdaa !fxors %f7,%f10,%f10 !-1/-1/-1:X[0]^=X[13]
srl %l0,2,%l0
and %l2,%i4,%i4
.word 0x91b48d88 !fxor %f18,%f8,%f8 ! 8/14/10:X[0,1]|=Tmp
add %o7,%l3,%l3
or %i4,%i3,%i4
or %i5,%l0,%l0
add %i4,%l3,%l3
std %f20,[%o5+24] !
sll %l3,5,%i3 !! 42
ld [%o5+40],%o7
.word 0x97b20dab !fxors %f8,%f11,%f11! 0/ 0/ 0:X[1]^=X[14]
srl %l3,27,%i4
add %i3,%l2,%l2
.word 0xa5b30d82 !fxor %f12,%f2,%f18! 1/ 1/ 1:Tmp=X[2,3]^X[8,9]
and %l0,%l4,%i3
add %i4,%l2,%l2
sll %l4,30,%i5
or %l0,%l4,%i4
.word 0x95b48d8a !fxor %f18,%f10,%f10 ! 2/ 4/ 3:X[0,1]^=X[2,3]^X[8,9]
srl %l4,2,%l4
and %l1,%i4,%i4
add %o7,%l2,%l2
or %i4,%i3,%i4
.word 0xa5b2890a !faligndata %f10,%f10,%f18 ! 3/ 7/ 5:Tmp=X[0,1]>>>24
or %i5,%l4,%l4
add %i4,%l2,%l2
.word 0x95b28a4a !fpadd32 %f10,%f10,%f10 ! 4/ 8/ 6:X[0,1]<<=1
sll %l2,5,%i3 !! 43
ld [%o5+44],%o7
srl %l2,27,%i4
add %i3,%l1,%l1
.word 0xa5b486e1 !fmul8ulx16 %f18,%f32,%f18 ! 5/10/ 7:Tmp>>=7, Tmp&=1
and %l4,%l3,%i3
add %i4,%l1,%l1
.word 0xa9b1ca48 !fpadd32 %f38,%f8,%f20 !
sll %l3,30,%i5
or %l4,%l3,%i4
.word 0x99b24dac !fxors %f9,%f12,%f12 !-1/-1/-1:X[0]^=X[13]
srl %l3,2,%l3
and %l0,%i4,%i4
.word 0x95b48d8a !fxor %f18,%f10,%f10 ! 8/14/10:X[0,1]|=Tmp
add %o7,%l1,%l1
or %i4,%i3,%i4
or %i5,%l3,%l3
add %i4,%l1,%l1
std %f20,[%o5+32] !
sll %l1,5,%i3 !! 44
ld [%o5+48],%o7
.word 0x9bb28dad !fxors %f10,%f13,%f13! 0/ 0/ 0:X[1]^=X[14]
srl %l1,27,%i4
add %i3,%l0,%l0
.word 0xa5b38d84 !fxor %f14,%f4,%f18! 1/ 1/ 1:Tmp=X[2,3]^X[8,9]
and %l3,%l2,%i3
add %i4,%l0,%l0
sll %l2,30,%i5
or %l3,%l2,%i4
.word 0x99b48d8c !fxor %f18,%f12,%f12 ! 2/ 4/ 3:X[0,1]^=X[2,3]^X[8,9]
srl %l2,2,%l2
and %l4,%i4,%i4
add %o7,%l0,%l0
or %i4,%i3,%i4
.word 0xa5b3090c !faligndata %f12,%f12,%f18 ! 3/ 7/ 5:Tmp=X[0,1]>>>24
or %i5,%l2,%l2
add %i4,%l0,%l0
.word 0x99b30a4c !fpadd32 %f12,%f12,%f12 ! 4/ 8/ 6:X[0,1]<<=1
sll %l0,5,%i3 !! 45
ld [%o5+52],%o7
srl %l0,27,%i4
add %i3,%l4,%l4
.word 0xa5b486e1 !fmul8ulx16 %f18,%f32,%f18 ! 5/10/ 7:Tmp>>=7, Tmp&=1
and %l2,%l1,%i3
add %i4,%l4,%l4
.word 0xa9b1ca4a !fpadd32 %f38,%f10,%f20 !
sll %l1,30,%i5
or %l2,%l1,%i4
.word 0x9db2cdae !fxors %f11,%f14,%f14 !-1/-1/-1:X[0]^=X[13]
srl %l1,2,%l1
and %l3,%i4,%i4
.word 0x99b48d8c !fxor %f18,%f12,%f12 ! 8/14/10:X[0,1]|=Tmp
add %o7,%l4,%l4
or %i4,%i3,%i4
or %i5,%l1,%l1
add %i4,%l4,%l4
std %f20,[%o5+40] !
sll %l4,5,%i3 !! 46
ld [%o5+56],%o7
.word 0x9fb30daf !fxors %f12,%f15,%f15! 0/ 0/ 0:X[1]^=X[14]
srl %l4,27,%i4
add %i3,%l3,%l3
.word 0xa5b00d86 !fxor %f0,%f6,%f18! 1/ 1/ 1:Tmp=X[2,3]^X[8,9]
and %l1,%l0,%i3
add %i4,%l3,%l3
sll %l0,30,%i5
or %l1,%l0,%i4
.word 0x9db48d8e !fxor %f18,%f14,%f14 ! 2/ 4/ 3:X[0,1]^=X[2,3]^X[8,9]
srl %l0,2,%l0
and %l2,%i4,%i4
add %o7,%l3,%l3
or %i4,%i3,%i4
.word 0xa5b3890e !faligndata %f14,%f14,%f18 ! 3/ 7/ 5:Tmp=X[0,1]>>>24
or %i5,%l0,%l0
add %i4,%l3,%l3
.word 0x9db38a4e !fpadd32 %f14,%f14,%f14 ! 4/ 8/ 6:X[0,1]<<=1
sll %l3,5,%i3 !! 47
ld [%o5+60],%o7
srl %l3,27,%i4
add %i3,%l2,%l2
.word 0xa5b486e1 !fmul8ulx16 %f18,%f32,%f18 ! 5/10/ 7:Tmp>>=7, Tmp&=1
and %l0,%l4,%i3
add %i4,%l2,%l2
.word 0xa9b24a4c !fpadd32 %f40,%f12,%f20 !
sll %l4,30,%i5
or %l0,%l4,%i4
.word 0x81b34da0 !fxors %f13,%f0,%f0 !-1/-1/-1:X[0]^=X[13]
srl %l4,2,%l4
and %l1,%i4,%i4
.word 0x9db48d8e !fxor %f18,%f14,%f14 ! 8/14/10:X[0,1]|=Tmp
add %o7,%l2,%l2
or %i4,%i3,%i4
or %i5,%l4,%l4
add %i4,%l2,%l2
std %f20,[%o5+48] !
sll %l2,5,%i3 !! 48
ld [%o5+0],%o7
.word 0x83b38da1 !fxors %f14,%f1,%f1! 0/ 0/ 0:X[1]^=X[14]
srl %l2,27,%i4
add %i3,%l1,%l1
.word 0xa5b08d88 !fxor %f2,%f8,%f18! 1/ 1/ 1:Tmp=X[2,3]^X[8,9]
and %l4,%l3,%i3
add %i4,%l1,%l1
sll %l3,30,%i5
or %l4,%l3,%i4
.word 0x81b48d80 !fxor %f18,%f0,%f0 ! 2/ 4/ 3:X[0,1]^=X[2,3]^X[8,9]
srl %l3,2,%l3
and %l0,%i4,%i4
add %o7,%l1,%l1
or %i4,%i3,%i4
.word 0xa5b00900 !faligndata %f0,%f0,%f18 ! 3/ 7/ 5:Tmp=X[0,1]>>>24
or %i5,%l3,%l3
add %i4,%l1,%l1
.word 0x81b00a40 !fpadd32 %f0,%f0,%f0 ! 4/ 8/ 6:X[0,1]<<=1
sll %l1,5,%i3 !! 49
ld [%o5+4],%o7
srl %l1,27,%i4
add %i3,%l0,%l0
.word 0xa5b486e1 !fmul8ulx16 %f18,%f32,%f18 ! 5/10/ 7:Tmp>>=7, Tmp&=1
and %l3,%l2,%i3
add %i4,%l0,%l0
.word 0xa9b24a4e !fpadd32 %f40,%f14,%f20 !
sll %l2,30,%i5
or %l3,%l2,%i4
.word 0x85b3cda2 !fxors %f15,%f2,%f2 !-1/-1/-1:X[0]^=X[13]
srl %l2,2,%l2
and %l4,%i4,%i4
.word 0x81b48d80 !fxor %f18,%f0,%f0 ! 8/14/10:X[0,1]|=Tmp
add %o7,%l0,%l0
or %i4,%i3,%i4
or %i5,%l2,%l2
add %i4,%l0,%l0
std %f20,[%o5+56] !
sll %l0,5,%i3 !! 50
ld [%o5+8],%o7
.word 0x87b00da3 !fxors %f0,%f3,%f3! 0/ 0/ 0:X[1]^=X[14]
srl %l0,27,%i4
add %i3,%l4,%l4
.word 0xa5b10d8a !fxor %f4,%f10,%f18! 1/ 1/ 1:Tmp=X[2,3]^X[8,9]
and %l2,%l1,%i3
add %i4,%l4,%l4
sll %l1,30,%i5
or %l2,%l1,%i4
.word 0x85b48d82 !fxor %f18,%f2,%f2 ! 2/ 4/ 3:X[0,1]^=X[2,3]^X[8,9]
srl %l1,2,%l1
and %l3,%i4,%i4
add %o7,%l4,%l4
or %i4,%i3,%i4
.word 0xa5b08902 !faligndata %f2,%f2,%f18 ! 3/ 7/ 5:Tmp=X[0,1]>>>24
or %i5,%l1,%l1
add %i4,%l4,%l4
.word 0x85b08a42 !fpadd32 %f2,%f2,%f2 ! 4/ 8/ 6:X[0,1]<<=1
sll %l4,5,%i3 !! 51
ld [%o5+12],%o7
srl %l4,27,%i4
add %i3,%l3,%l3
.word 0xa5b486e1 !fmul8ulx16 %f18,%f32,%f18 ! 5/10/ 7:Tmp>>=7, Tmp&=1
and %l1,%l0,%i3
add %i4,%l3,%l3
.word 0xa9b24a40 !fpadd32 %f40,%f0,%f20 !
sll %l0,30,%i5
or %l1,%l0,%i4
.word 0x89b04da4 !fxors %f1,%f4,%f4 !-1/-1/-1:X[0]^=X[13]
srl %l0,2,%l0
and %l2,%i4,%i4
.word 0x85b48d82 !fxor %f18,%f2,%f2 ! 8/14/10:X[0,1]|=Tmp
add %o7,%l3,%l3
or %i4,%i3,%i4
or %i5,%l0,%l0
add %i4,%l3,%l3
std %f20,[%o5+0] !
sll %l3,5,%i3 !! 52
ld [%o5+16],%o7
.word 0x8bb08da5 !fxors %f2,%f5,%f5! 0/ 0/ 0:X[1]^=X[14]
srl %l3,27,%i4
add %i3,%l2,%l2
.word 0xa5b18d8c !fxor %f6,%f12,%f18! 1/ 1/ 1:Tmp=X[2,3]^X[8,9]
and %l0,%l4,%i3
add %i4,%l2,%l2
sll %l4,30,%i5
or %l0,%l4,%i4
.word 0x89b48d84 !fxor %f18,%f4,%f4 ! 2/ 4/ 3:X[0,1]^=X[2,3]^X[8,9]
srl %l4,2,%l4
and %l1,%i4,%i4
add %o7,%l2,%l2
or %i4,%i3,%i4
.word 0xa5b10904 !faligndata %f4,%f4,%f18 ! 3/ 7/ 5:Tmp=X[0,1]>>>24
or %i5,%l4,%l4
add %i4,%l2,%l2
.word 0x89b10a44 !fpadd32 %f4,%f4,%f4 ! 4/ 8/ 6:X[0,1]<<=1
sll %l2,5,%i3 !! 53
ld [%o5+20],%o7
srl %l2,27,%i4
add %i3,%l1,%l1
.word 0xa5b486e1 !fmul8ulx16 %f18,%f32,%f18 ! 5/10/ 7:Tmp>>=7, Tmp&=1
and %l4,%l3,%i3
add %i4,%l1,%l1
.word 0xa9b24a42 !fpadd32 %f40,%f2,%f20 !
sll %l3,30,%i5
or %l4,%l3,%i4
.word 0x8db0cda6 !fxors %f3,%f6,%f6 !-1/-1/-1:X[0]^=X[13]
srl %l3,2,%l3
and %l0,%i4,%i4
.word 0x89b48d84 !fxor %f18,%f4,%f4 ! 8/14/10:X[0,1]|=Tmp
add %o7,%l1,%l1
or %i4,%i3,%i4
or %i5,%l3,%l3
add %i4,%l1,%l1
std %f20,[%o5+8] !
sll %l1,5,%i3 !! 54
ld [%o5+24],%o7
.word 0x8fb10da7 !fxors %f4,%f7,%f7! 0/ 0/ 0:X[1]^=X[14]
srl %l1,27,%i4
add %i3,%l0,%l0
.word 0xa5b20d8e !fxor %f8,%f14,%f18! 1/ 1/ 1:Tmp=X[2,3]^X[8,9]
and %l3,%l2,%i3
add %i4,%l0,%l0
sll %l2,30,%i5
or %l3,%l2,%i4
.word 0x8db48d86 !fxor %f18,%f6,%f6 ! 2/ 4/ 3:X[0,1]^=X[2,3]^X[8,9]
srl %l2,2,%l2
and %l4,%i4,%i4
add %o7,%l0,%l0
or %i4,%i3,%i4
.word 0xa5b18906 !faligndata %f6,%f6,%f18 ! 3/ 7/ 5:Tmp=X[0,1]>>>24
or %i5,%l2,%l2
add %i4,%l0,%l0
.word 0x8db18a46 !fpadd32 %f6,%f6,%f6 ! 4/ 8/ 6:X[0,1]<<=1
sll %l0,5,%i3 !! 55
ld [%o5+28],%o7
srl %l0,27,%i4
add %i3,%l4,%l4
.word 0xa5b486e1 !fmul8ulx16 %f18,%f32,%f18 ! 5/10/ 7:Tmp>>=7, Tmp&=1
and %l2,%l1,%i3
add %i4,%l4,%l4
.word 0xa9b24a44 !fpadd32 %f40,%f4,%f20 !
sll %l1,30,%i5
or %l2,%l1,%i4
.word 0x91b14da8 !fxors %f5,%f8,%f8 !-1/-1/-1:X[0]^=X[13]
srl %l1,2,%l1
and %l3,%i4,%i4
.word 0x8db48d86 !fxor %f18,%f6,%f6 ! 8/14/10:X[0,1]|=Tmp
add %o7,%l4,%l4
or %i4,%i3,%i4
or %i5,%l1,%l1
add %i4,%l4,%l4
std %f20,[%o5+16] !
sll %l4,5,%i3 !! 56
ld [%o5+32],%o7
.word 0x93b18da9 !fxors %f6,%f9,%f9! 0/ 0/ 0:X[1]^=X[14]
srl %l4,27,%i4
add %i3,%l3,%l3
.word 0xa5b28d80 !fxor %f10,%f0,%f18! 1/ 1/ 1:Tmp=X[2,3]^X[8,9]
and %l1,%l0,%i3
add %i4,%l3,%l3
sll %l0,30,%i5
or %l1,%l0,%i4
.word 0x91b48d88 !fxor %f18,%f8,%f8 ! 2/ 4/ 3:X[0,1]^=X[2,3]^X[8,9]
srl %l0,2,%l0
and %l2,%i4,%i4
add %o7,%l3,%l3
or %i4,%i3,%i4
.word 0xa5b20908 !faligndata %f8,%f8,%f18 ! 3/ 7/ 5:Tmp=X[0,1]>>>24
or %i5,%l0,%l0
add %i4,%l3,%l3
.word 0x91b20a48 !fpadd32 %f8,%f8,%f8 ! 4/ 8/ 6:X[0,1]<<=1
sll %l3,5,%i3 !! 57
ld [%o5+36],%o7
srl %l3,27,%i4
add %i3,%l2,%l2
.word 0xa5b486e1 !fmul8ulx16 %f18,%f32,%f18 ! 5/10/ 7:Tmp>>=7, Tmp&=1
and %l0,%l4,%i3
add %i4,%l2,%l2
.word 0xa9b24a46 !fpadd32 %f40,%f6,%f20 !
sll %l4,30,%i5
or %l0,%l4,%i4
.word 0x95b1cdaa !fxors %f7,%f10,%f10 !-1/-1/-1:X[0]^=X[13]
srl %l4,2,%l4
and %l1,%i4,%i4
.word 0x91b48d88 !fxor %f18,%f8,%f8 ! 8/14/10:X[0,1]|=Tmp
add %o7,%l2,%l2
or %i4,%i3,%i4
or %i5,%l4,%l4
add %i4,%l2,%l2
std %f20,[%o5+24] !
sll %l2,5,%i3 !! 58
ld [%o5+40],%o7
.word 0x97b20dab !fxors %f8,%f11,%f11! 0/ 0/ 0:X[1]^=X[14]
srl %l2,27,%i4
add %i3,%l1,%l1
.word 0xa5b30d82 !fxor %f12,%f2,%f18! 1/ 1/ 1:Tmp=X[2,3]^X[8,9]
and %l4,%l3,%i3
add %i4,%l1,%l1
sll %l3,30,%i5
or %l4,%l3,%i4
.word 0x95b48d8a !fxor %f18,%f10,%f10 ! 2/ 4/ 3:X[0,1]^=X[2,3]^X[8,9]
srl %l3,2,%l3
and %l0,%i4,%i4
add %o7,%l1,%l1
or %i4,%i3,%i4
.word 0xa5b2890a !faligndata %f10,%f10,%f18 ! 3/ 7/ 5:Tmp=X[0,1]>>>24
or %i5,%l3,%l3
add %i4,%l1,%l1
.word 0x95b28a4a !fpadd32 %f10,%f10,%f10 ! 4/ 8/ 6:X[0,1]<<=1
sll %l1,5,%i3 !! 59
ld [%o5+44],%o7
srl %l1,27,%i4
add %i3,%l0,%l0
.word 0xa5b486e1 !fmul8ulx16 %f18,%f32,%f18 ! 5/10/ 7:Tmp>>=7, Tmp&=1
and %l3,%l2,%i3
add %i4,%l0,%l0
.word 0xa9b24a48 !fpadd32 %f40,%f8,%f20 !
sll %l2,30,%i5
or %l3,%l2,%i4
.word 0x99b24dac !fxors %f9,%f12,%f12 !-1/-1/-1:X[0]^=X[13]
srl %l2,2,%l2
and %l4,%i4,%i4
.word 0x95b48d8a !fxor %f18,%f10,%f10 ! 8/14/10:X[0,1]|=Tmp
add %o7,%l0,%l0
or %i4,%i3,%i4
or %i5,%l2,%l2
add %i4,%l0,%l0
std %f20,[%o5+32] !
sll %l0,5,%i3 !! 60
ld [%o5+48],%o7
.word 0x9bb28dad !fxors %f10,%f13,%f13! 0/ 0/ 0:X[1]^=X[14]
srl %l0,27,%i4
add %i3,%l4,%l4
.word 0xa5b38d84 !fxor %f14,%f4,%f18! 1/ 1/ 1:Tmp=X[2,3]^X[8,9]
xor %l2,%l1,%i3
add %i4,%l4,%l4
sll %l1,30,%i5
xor %l3,%i3,%i4
.word 0x99b48d8c !fxor %f18,%f12,%f12 ! 2/ 4/ 3:X[0,1]^=X[2,3]^X[8,9]
srl %l1,2,%l1
add %i4,%l4,%l4
or %i5,%l1,%l1
add %o7,%l4,%l4
.word 0xa5b3090c !faligndata %f12,%f12,%f18 ! 3/ 7/ 5:Tmp=X[0,1]>>>24
sll %l4,5,%i3 !! 61
ld [%o5+52],%o7
.word 0x99b30a4c !fpadd32 %f12,%f12,%f12 ! 4/ 8/ 6:X[0,1]<<=1
srl %l4,27,%i4
add %i3,%l3,%l3
.word 0xa5b486e1 !fmul8ulx16 %f18,%f32,%f18 ! 5/10/ 7:Tmp>>=7, Tmp&=1
xor %l1,%l0,%i3
add %i4,%l3,%l3
.word 0xa9b24a4a !fpadd32 %f40,%f10,%f20 !
sll %l0,30,%i5
xor %l2,%i3,%i4
.word 0x9db2cdae !fxors %f11,%f14,%f14 !-1/-1/-1:X[0]^=X[13]
srl %l0,2,%l0
add %i4,%l3,%l3
.word 0x99b48d8c !fxor %f18,%f12,%f12 ! 8/14/10:X[0,1]|=Tmp
or %i5,%l0,%l0
add %o7,%l3,%l3
std %f20,[%o5+40] !
sll %l3,5,%i3 !! 62
ld [%o5+56],%o7
.word 0x9fb30daf !fxors %f12,%f15,%f15! 0/ 0/ 0:X[1]^=X[14]
srl %l3,27,%i4
add %i3,%l2,%l2
.word 0xa5b00d86 !fxor %f0,%f6,%f18! 1/ 1/ 1:Tmp=X[2,3]^X[8,9]
xor %l0,%l4,%i3
add %i4,%l2,%l2
sll %l4,30,%i5
xor %l1,%i3,%i4
.word 0x9db48d8e !fxor %f18,%f14,%f14 ! 2/ 4/ 3:X[0,1]^=X[2,3]^X[8,9]
srl %l4,2,%l4
add %i4,%l2,%l2
or %i5,%l4,%l4
add %o7,%l2,%l2
.word 0xa5b3890e !faligndata %f14,%f14,%f18 ! 3/ 7/ 5:Tmp=X[0,1]>>>24
sll %l2,5,%i3 !! 63
ld [%o5+60],%o7
.word 0x9db38a4e !fpadd32 %f14,%f14,%f14 ! 4/ 8/ 6:X[0,1]<<=1
srl %l2,27,%i4
add %i3,%l1,%l1
.word 0xa5b486e1 !fmul8ulx16 %f18,%f32,%f18 ! 5/10/ 7:Tmp>>=7, Tmp&=1
xor %l4,%l3,%i3
add %i4,%l1,%l1
.word 0xa9b24a4c !fpadd32 %f40,%f12,%f20 !
sll %l3,30,%i5
xor %l0,%i3,%i4
.word 0x81b34da0 !fxors %f13,%f0,%f0 !-1/-1/-1:X[0]^=X[13]
srl %l3,2,%l3
add %i4,%l1,%l1
.word 0x9db48d8e !fxor %f18,%f14,%f14 ! 8/14/10:X[0,1]|=Tmp
or %i5,%l3,%l3
add %o7,%l1,%l1
std %f20,[%o5+48] !
sll %l1,5,%i3 !! 64
ld [%o5+0],%o7
.word 0xa9b24a4e !fpadd32 %f40,%f14,%f20
srl %l1,27,%i4
add %i3,%l0,%l0
xor %l3,%l2,%i3
add %i4,%l0,%l0
sll %l2,30,%i5
xor %l4,%i3,%i4
std %f20,[%o5+56]
srl %l2,2,%l2
add %i4,%l0,%l0
or %i5,%l2,%l2
add %o7,%l0,%l0
sll %l0,5,%i3 !! 65
ld [%o5+4],%o7
srl %l0,27,%i4
add %i3,%l4,%l4
xor %l2,%l1,%i3
add %i4,%l4,%l4
sll %l1,30,%i5
xor %l3,%i3,%i4
srl %l1,2,%l1
add %i4,%l4,%l4
or %i5,%l1,%l1
add %o7,%l4,%l4
sll %l4,5,%i3 !! 66
ld [%o5+8],%o7
srl %l4,27,%i4
add %i3,%l3,%l3
xor %l1,%l0,%i3
add %i4,%l3,%l3
sll %l0,30,%i5
xor %l2,%i3,%i4
srl %l0,2,%l0
add %i4,%l3,%l3
or %i5,%l0,%l0
add %o7,%l3,%l3
sll %l3,5,%i3 !! 67
ld [%o5+12],%o7
srl %l3,27,%i4
add %i3,%l2,%l2
xor %l0,%l4,%i3
add %i4,%l2,%l2
sll %l4,30,%i5
xor %l1,%i3,%i4
srl %l4,2,%l4
add %i4,%l2,%l2
or %i5,%l4,%l4
add %o7,%l2,%l2
sll %l2,5,%i3 !! 68
ld [%o5+16],%o7
srl %l2,27,%i4
add %i3,%l1,%l1
xor %l4,%l3,%i3
add %i4,%l1,%l1
sll %l3,30,%i5
xor %l0,%i3,%i4
srl %l3,2,%l3
add %i4,%l1,%l1
or %i5,%l3,%l3
add %o7,%l1,%l1
sll %l1,5,%i3 !! 69
ld [%o5+20],%o7
srl %l1,27,%i4
add %i3,%l0,%l0
xor %l3,%l2,%i3
add %i4,%l0,%l0
sll %l2,30,%i5
xor %l4,%i3,%i4
srl %l2,2,%l2
add %i4,%l0,%l0
or %i5,%l2,%l2
add %o7,%l0,%l0
tst %i2
bz,pn %icc,.Ltail
nop
sll %l0,5,%i3 !! 70
ld [%o5+24],%o7
srl %l0,27,%i4
add %i3,%l4,%l4
ldd [%i1+64],%f0
xor %l2,%l1,%i3
add %i4,%l4,%l4
sll %l1,30,%i5
xor %l3,%i3,%i4
srl %l1,2,%l1
add %i4,%l4,%l4
or %i5,%l1,%l1
add %o7,%l4,%l4
and %i1,-64,%g5
inc 64,%i1
and %g5,255,%g5
.word 0x81b00304 !alignaddr %g0,%g4,%g0
add %g1,%g5,%g5
ldd [%i1+8],%f2
sll %l4,5,%i3 !! 71
ld [%o5+28],%o7
srl %l4,27,%i4
add %i3,%l3,%l3
xor %l1,%l0,%i3
add %i4,%l3,%l3
sll %l0,30,%i5
xor %l2,%i3,%i4
srl %l0,2,%l0
add %i4,%l3,%l3
or %i5,%l0,%l0
add %o7,%l3,%l3
ldd [%i1+16],%f4
.word 0x81b00902 !faligndata %f0,%f2,%f0
sll %l3,5,%i3 !! 72
ld [%o5+32],%o7
srl %l3,27,%i4
add %i3,%l2,%l2
xor %l0,%l4,%i3
add %i4,%l2,%l2
.word 0xa9b0ca40 !fpadd32 %f34,%f0,%f20
sll %l4,30,%i5
xor %l1,%i3,%i4
srl %l4,2,%l4
add %i4,%l2,%l2
or %i5,%l4,%l4
add %o7,%l2,%l2
ldd [%i1+24],%f6
std %f20,[%g5+0]
.word 0x85b08904 !faligndata %f2,%f4,%f2
sll %l2,5,%i3 !! 73
ld [%o5+36],%o7
srl %l2,27,%i4
add %i3,%l1,%l1
xor %l4,%l3,%i3
add %i4,%l1,%l1
.word 0xa9b0ca42 !fpadd32 %f34,%f2,%f20
sll %l3,30,%i5
xor %l0,%i3,%i4
srl %l3,2,%l3
add %i4,%l1,%l1
or %i5,%l3,%l3
add %o7,%l1,%l1
ldd [%i1+32],%f8
std %f20,[%g5+8]
.word 0x89b10906 !faligndata %f4,%f6,%f4
sll %l1,5,%i3 !! 74
ld [%o5+40],%o7
srl %l1,27,%i4
add %i3,%l0,%l0
xor %l3,%l2,%i3
add %i4,%l0,%l0
.word 0xa9b0ca44 !fpadd32 %f34,%f4,%f20
sll %l2,30,%i5
xor %l4,%i3,%i4
srl %l2,2,%l2
add %i4,%l0,%l0
or %i5,%l2,%l2
add %o7,%l0,%l0
ldd [%i1+40],%f10
std %f20,[%g5+16]
.word 0x8db18908 !faligndata %f6,%f8,%f6
sll %l0,5,%i3 !! 75
ld [%o5+44],%o7
srl %l0,27,%i4
add %i3,%l4,%l4
xor %l2,%l1,%i3
add %i4,%l4,%l4
.word 0xa9b0ca46 !fpadd32 %f34,%f6,%f20
sll %l1,30,%i5
xor %l3,%i3,%i4
srl %l1,2,%l1
add %i4,%l4,%l4
or %i5,%l1,%l1
add %o7,%l4,%l4
ldd [%i1+48],%f12
std %f20,[%g5+24]
.word 0x91b2090a !faligndata %f8,%f10,%f8
sll %l4,5,%i3 !! 76
ld [%o5+48],%o7
srl %l4,27,%i4
add %i3,%l3,%l3
xor %l1,%l0,%i3
add %i4,%l3,%l3
.word 0xa9b0ca48 !fpadd32 %f34,%f8,%f20
sll %l0,30,%i5
xor %l2,%i3,%i4
srl %l0,2,%l0
add %i4,%l3,%l3
or %i5,%l0,%l0
add %o7,%l3,%l3
ldd [%i1+56],%f14
std %f20,[%g5+32]
.word 0x95b2890c !faligndata %f10,%f12,%f10
sll %l3,5,%i3 !! 77
ld [%o5+52],%o7
srl %l3,27,%i4
add %i3,%l2,%l2
xor %l0,%l4,%i3
add %i4,%l2,%l2
.word 0xa9b0ca4a !fpadd32 %f34,%f10,%f20
sll %l4,30,%i5
xor %l1,%i3,%i4
srl %l4,2,%l4
add %i4,%l2,%l2
or %i5,%l4,%l4
add %o7,%l2,%l2
add %g4,63,%i3
and %i3,-8,%i3
ldd [%i1+%i3],%f16
std %f20,[%g5+40]
.word 0x99b3090e !faligndata %f12,%f14,%f12
sll %l2,5,%i3 !! 78
ld [%o5+56],%o7
srl %l2,27,%i4
add %i3,%l1,%l1
xor %l4,%l3,%i3
add %i4,%l1,%l1
.word 0xa9b0ca4c !fpadd32 %f34,%f12,%f20
sll %l3,30,%i5
xor %l0,%i3,%i4
srl %l3,2,%l3
add %i4,%l1,%l1
or %i5,%l3,%l3
add %o7,%l1,%l1
std %f20,[%g5+48]
.word 0x9db38910 !faligndata %f14,%f16,%f14
sll %l1,5,%i3 !! 79
ld [%o5+60],%o7
srl %l1,27,%i4
add %i3,%l0,%l0
xor %l3,%l2,%i3
add %i4,%l0,%l0
.word 0xa9b0ca4e !fpadd32 %f34,%f14,%f20
sll %l2,30,%i5
xor %l4,%i3,%i4
srl %l2,2,%l2
add %i4,%l0,%l0
or %i5,%l2,%l2
add %o7,%l0,%l0
std %f20,[%g5+56]
add %l0,%o0,%o0
add %l1,%o1,%o1
add %l2,%o2,%o2
add %l3,%o3,%o3
add %l4,%o4,%o4
mov 5,%i3
.word 0x81b34da0 !fxors %f13,%f0,%f0
mov %o0,%l0
mov %o1,%l1
mov %o2,%l2
mov %o3,%l3
mov %o4,%l4
.word 0x81b0031b !alignaddr %g0,%i3,%g0
dec 1,%i2
ba .Loop
mov %g5,%o5
.align 32
.Ltail:
sll %l0,5,%i3 !! 70
ld [%o5+24],%o7
srl %l0,27,%i4
add %i3,%l4,%l4
xor %l2,%l1,%i3
add %i4,%l4,%l4
sll %l1,30,%i5
xor %l3,%i3,%i4
srl %l1,2,%l1
add %i4,%l4,%l4
or %i5,%l1,%l1
add %o7,%l4,%l4
sll %l4,5,%i3 !! 71
ld [%o5+28],%o7
srl %l4,27,%i4
add %i3,%l3,%l3
xor %l1,%l0,%i3
add %i4,%l3,%l3
sll %l0,30,%i5
xor %l2,%i3,%i4
srl %l0,2,%l0
add %i4,%l3,%l3
or %i5,%l0,%l0
add %o7,%l3,%l3
sll %l3,5,%i3 !! 72
ld [%o5+32],%o7
srl %l3,27,%i4
add %i3,%l2,%l2
xor %l0,%l4,%i3
add %i4,%l2,%l2
sll %l4,30,%i5
xor %l1,%i3,%i4
srl %l4,2,%l4
add %i4,%l2,%l2
or %i5,%l4,%l4
add %o7,%l2,%l2
sll %l2,5,%i3 !! 73
ld [%o5+36],%o7
srl %l2,27,%i4
add %i3,%l1,%l1
xor %l4,%l3,%i3
add %i4,%l1,%l1
sll %l3,30,%i5
xor %l0,%i3,%i4
srl %l3,2,%l3
add %i4,%l1,%l1
or %i5,%l3,%l3
add %o7,%l1,%l1
sll %l1,5,%i3 !! 74
ld [%o5+40],%o7
srl %l1,27,%i4
add %i3,%l0,%l0
xor %l3,%l2,%i3
add %i4,%l0,%l0
sll %l2,30,%i5
xor %l4,%i3,%i4
srl %l2,2,%l2
add %i4,%l0,%l0
or %i5,%l2,%l2
add %o7,%l0,%l0
sll %l0,5,%i3 !! 75
ld [%o5+44],%o7
srl %l0,27,%i4
add %i3,%l4,%l4
xor %l2,%l1,%i3
add %i4,%l4,%l4
sll %l1,30,%i5
xor %l3,%i3,%i4
srl %l1,2,%l1
add %i4,%l4,%l4
or %i5,%l1,%l1
add %o7,%l4,%l4
sll %l4,5,%i3 !! 76
ld [%o5+48],%o7
srl %l4,27,%i4
add %i3,%l3,%l3
xor %l1,%l0,%i3
add %i4,%l3,%l3
sll %l0,30,%i5
xor %l2,%i3,%i4
srl %l0,2,%l0
add %i4,%l3,%l3
or %i5,%l0,%l0
add %o7,%l3,%l3
sll %l3,5,%i3 !! 77
ld [%o5+52],%o7
srl %l3,27,%i4
add %i3,%l2,%l2
xor %l0,%l4,%i3
add %i4,%l2,%l2
sll %l4,30,%i5
xor %l1,%i3,%i4
srl %l4,2,%l4
add %i4,%l2,%l2
or %i5,%l4,%l4
add %o7,%l2,%l2
sll %l2,5,%i3 !! 78
ld [%o5+56],%o7
srl %l2,27,%i4
add %i3,%l1,%l1
xor %l4,%l3,%i3
add %i4,%l1,%l1
sll %l3,30,%i5
xor %l0,%i3,%i4
srl %l3,2,%l3
add %i4,%l1,%l1
or %i5,%l3,%l3
add %o7,%l1,%l1
sll %l1,5,%i3 !! 79
ld [%o5+60],%o7
srl %l1,27,%i4
add %i3,%l0,%l0
xor %l3,%l2,%i3
add %i4,%l0,%l0
sll %l2,30,%i5
xor %l4,%i3,%i4
srl %l2,2,%l2
add %i4,%l0,%l0
or %i5,%l2,%l2
add %o7,%l0,%l0
add %l0,%o0,%o0
add %l1,%o1,%o1
add %l2,%o2,%o2
add %l3,%o3,%o3
add %l4,%o4,%o4
st %o0,[%i0+0]
st %o1,[%i0+4]
st %o2,[%i0+8]
st %o3,[%i0+12]
st %o4,[%i0+16]
ret
restore
.type sha1_block_data_order,#function
.size sha1_block_data_order,(.-sha1_block_data_order)
.asciz "SHA1 block transform for SPARCv9a, CRYPTOGAMS by <appro@openssl.org>"
.align 4