Changeset View
Changeset View
Standalone View
Standalone View
sys/crypto/openssl/powerpc/poly1305-ppcfp.S
- This file was added.
/* $FreeBSD$ */ | |||||
/* Do not modify. This file is auto-generated from poly1305-ppcfp.pl. */ | |||||
.machine "any" | |||||
.text | |||||
.globl poly1305_init_fpu | |||||
.type poly1305_init_fpu,@function | |||||
.align 6 | |||||
poly1305_init_fpu: | |||||
stwu 1,-24(1) | |||||
mflr 6 | |||||
stw 6,28(1) | |||||
bl .LPICmeup | |||||
xor 0,0,0 | |||||
mtlr 6 | |||||
lfd 8,8*0(5) | |||||
lfd 9,8*1(5) | |||||
lfd 10,8*2(5) | |||||
lfd 11,8*3(5) | |||||
lfd 12,8*4(5) | |||||
lfd 13,8*5(5) | |||||
stfd 8,8*0(3) | |||||
stfd 9,8*1(3) | |||||
stfd 10,8*2(3) | |||||
stfd 11,8*3(3) | |||||
.long 0x7c040040 | |||||
beq- .Lno_key | |||||
lfd 6,8*13(5) | |||||
mffs 7 | |||||
stfd 8,8*4(3) | |||||
stfd 9,8*5(3) | |||||
stfd 10,8*6(3) | |||||
stfd 11,8*7(3) | |||||
li 8,4 | |||||
li 9,8 | |||||
li 10,12 | |||||
lwbrx 7,0,4 | |||||
lwbrx 8,8,4 | |||||
lwbrx 9,9,4 | |||||
lwbrx 10,10,4 | |||||
lis 11,0xf000 | |||||
ori 12,11,3 | |||||
andc 7,7,11 | |||||
andc 8,8,12 | |||||
andc 9,9,12 | |||||
andc 10,10,12 | |||||
stw 7,36(3) | |||||
stw 8,44(3) | |||||
stw 9,52(3) | |||||
stw 10,60(3) | |||||
mtfsf 255,6 | |||||
stfd 8,8*18(3) | |||||
stfd 9,8*19(3) | |||||
stfd 10,8*20(3) | |||||
stfd 11,8*21(3) | |||||
stfd 12,8*22(3) | |||||
stfd 13,8*23(3) | |||||
lfd 0,8*4(3) | |||||
lfd 2,8*5(3) | |||||
lfd 4,8*6(3) | |||||
lfd 6,8*7(3) | |||||
fsub 0,0,8 | |||||
fsub 2,2,9 | |||||
fsub 4,4,10 | |||||
fsub 6,6,11 | |||||
lfd 8,8*6(5) | |||||
lfd 9,8*7(5) | |||||
lfd 10,8*8(5) | |||||
lfd 11,8*9(5) | |||||
fmul 3,2,13 | |||||
fmul 5,4,13 | |||||
stfd 7,8*15(3) | |||||
fmul 7,6,13 | |||||
fadd 1,0,8 | |||||
stfd 3,8*12(3) | |||||
fadd 3,2,9 | |||||
stfd 5,8*13(3) | |||||
fadd 5,4,10 | |||||
stfd 7,8*14(3) | |||||
fadd 7,6,11 | |||||
fsub 1,1,8 | |||||
fsub 3,3,9 | |||||
fsub 5,5,10 | |||||
fsub 7,7,11 | |||||
lfd 8,8*10(5) | |||||
lfd 9,8*11(5) | |||||
lfd 10,8*12(5) | |||||
fsub 0,0,1 | |||||
fsub 2,2,3 | |||||
fsub 4,4,5 | |||||
fsub 6,6,7 | |||||
stfd 1,8*5(3) | |||||
stfd 3,8*7(3) | |||||
stfd 5,8*9(3) | |||||
stfd 7,8*11(3) | |||||
stfd 0,8*4(3) | |||||
stfd 2,8*6(3) | |||||
stfd 4,8*8(3) | |||||
stfd 6,8*10(3) | |||||
lfd 2,8*12(3) | |||||
lfd 4,8*13(3) | |||||
lfd 6,8*14(3) | |||||
lfd 0,8*15(3) | |||||
fadd 3,2,8 | |||||
fadd 5,4,9 | |||||
fadd 7,6,10 | |||||
fsub 3,3,8 | |||||
fsub 5,5,9 | |||||
fsub 7,7,10 | |||||
fsub 2,2,3 | |||||
fsub 4,4,5 | |||||
fsub 6,6,7 | |||||
stfd 3,8*13(3) | |||||
stfd 5,8*15(3) | |||||
stfd 7,8*17(3) | |||||
stfd 2,8*12(3) | |||||
stfd 4,8*14(3) | |||||
stfd 6,8*16(3) | |||||
mtfsf 255,0 | |||||
.Lno_key: | |||||
xor 3,3,3 | |||||
addi 1,1,24 | |||||
blr | |||||
.long 0 | |||||
.byte 0,12,4,1,0x80,0,2,0 | |||||
.size poly1305_init_fpu,.-poly1305_init_fpu | |||||
.globl poly1305_blocks_fpu | |||||
.type poly1305_blocks_fpu,@function | |||||
.align 4 | |||||
poly1305_blocks_fpu: | |||||
srwi. 5,5,4 | |||||
beq- .Labort | |||||
stwu 1,-216(1) | |||||
mflr 0 | |||||
stfd 14,72(1) | |||||
stfd 15,80(1) | |||||
stfd 16,88(1) | |||||
stfd 17,96(1) | |||||
stfd 18,104(1) | |||||
stfd 19,112(1) | |||||
stfd 20,120(1) | |||||
stfd 21,128(1) | |||||
stfd 22,136(1) | |||||
stfd 23,144(1) | |||||
stfd 24,152(1) | |||||
stfd 25,160(1) | |||||
stfd 26,168(1) | |||||
stfd 27,176(1) | |||||
stfd 28,184(1) | |||||
stfd 29,192(1) | |||||
stfd 30,200(1) | |||||
stfd 31,208(1) | |||||
stw 0,220(1) | |||||
xor 0,0,0 | |||||
li 10,1 | |||||
mtctr 5 | |||||
neg 5,5 | |||||
stw 0,56(1) | |||||
stw 10,60(1) | |||||
lfd 8,8*18(3) | |||||
lfd 9,8*19(3) | |||||
lfd 10,8*20(3) | |||||
lfd 11,8*21(3) | |||||
lfd 12,8*22(3) | |||||
lfd 13,8*23(3) | |||||
lfd 0,8*0(3) | |||||
lfd 2,8*1(3) | |||||
lfd 4,8*2(3) | |||||
lfd 6,8*3(3) | |||||
stfd 8,24(1) | |||||
oris 10,6,18736 | |||||
stfd 9,32(1) | |||||
stfd 10,40(1) | |||||
stw 10,48(1) | |||||
li 11,4 | |||||
li 12,8 | |||||
li 6,12 | |||||
lwbrx 7,0,4 | |||||
lwbrx 8,11,4 | |||||
lwbrx 9,12,4 | |||||
lwbrx 10,6,4 | |||||
addi 4,4,16 | |||||
stw 7,28(1) | |||||
stw 8,36(1) | |||||
stw 9,44(1) | |||||
stw 10,52(1) | |||||
mffs 28 | |||||
lfd 29,56(1) | |||||
lfd 14,8*4(3) | |||||
lfd 15,8*5(3) | |||||
lfd 16,8*6(3) | |||||
lfd 17,8*7(3) | |||||
lfd 18,8*8(3) | |||||
lfd 19,8*9(3) | |||||
lfd 24,8*10(3) | |||||
lfd 25,8*11(3) | |||||
lfd 26,8*12(3) | |||||
lfd 27,8*13(3) | |||||
lfd 20,8*14(3) | |||||
lfd 21,8*15(3) | |||||
lfd 22,8*16(3) | |||||
lfd 23,8*17(3) | |||||
stfd 28,56(1) | |||||
mtfsf 255,29 | |||||
addic 5,5,1 | |||||
addze 0,0 | |||||
slwi. 0,0,4 | |||||
sub 4,4,0 | |||||
lfd 28,24(1) | |||||
lfd 29,32(1) | |||||
lfd 30,40(1) | |||||
lfd 31,48(1) | |||||
fsub 0,0,8 | |||||
lwbrx 7,0,4 | |||||
fsub 2,2,9 | |||||
lwbrx 8,11,4 | |||||
fsub 4,4,10 | |||||
lwbrx 9,12,4 | |||||
fsub 6,6,11 | |||||
lwbrx 10,6,4 | |||||
fsub 28,28,8 | |||||
addi 4,4,16 | |||||
fsub 29,29,9 | |||||
fsub 30,30,10 | |||||
fsub 31,31,11 | |||||
fadd 28,28,0 | |||||
stw 7,28(1) | |||||
fadd 29,29,2 | |||||
stw 8,36(1) | |||||
fadd 30,30,4 | |||||
stw 9,44(1) | |||||
fadd 31,31,6 | |||||
stw 10,52(1) | |||||
b .Lentry | |||||
.align 4 | |||||
.Loop: | |||||
fsub 30,30,8 | |||||
addic 5,5,1 | |||||
fsub 31,31,9 | |||||
addze 0,0 | |||||
fsub 26,26,10 | |||||
slwi. 0,0,4 | |||||
fsub 27,27,11 | |||||
sub 4,4,0 | |||||
fadd 0,0,30 | |||||
fadd 1,1,31 | |||||
fadd 4,4,26 | |||||
fadd 5,5,27 | |||||
fadd 26,2,10 | |||||
lwbrx 7,0,4 | |||||
fadd 27,3,10 | |||||
lwbrx 8,11,4 | |||||
fadd 30,6,12 | |||||
lwbrx 9,12,4 | |||||
fadd 31,7,12 | |||||
lwbrx 10,6,4 | |||||
fadd 24,0,9 | |||||
addi 4,4,16 | |||||
fadd 25,1,9 | |||||
fadd 28,4,11 | |||||
fadd 29,5,11 | |||||
fsub 26,26,10 | |||||
stw 7,28(1) | |||||
fsub 27,27,10 | |||||
stw 8,36(1) | |||||
fsub 30,30,12 | |||||
stw 9,44(1) | |||||
fsub 31,31,12 | |||||
stw 10,52(1) | |||||
fsub 24,24,9 | |||||
fsub 25,25,9 | |||||
fsub 28,28,11 | |||||
fsub 29,29,11 | |||||
fsub 2,2,26 | |||||
fsub 3,3,27 | |||||
fsub 6,6,30 | |||||
fsub 7,7,31 | |||||
fsub 4,4,28 | |||||
fsub 5,5,29 | |||||
fsub 0,0,24 | |||||
fsub 1,1,25 | |||||
fadd 2,2,24 | |||||
fadd 3,3,25 | |||||
fadd 6,6,28 | |||||
fadd 7,7,29 | |||||
fadd 4,4,26 | |||||
fadd 5,5,27 | |||||
fmadd 0,30,13,0 | |||||
fmadd 1,31,13,1 | |||||
fadd 29,2,3 | |||||
lfd 26,8*12(3) | |||||
fadd 31,6,7 | |||||
lfd 27,8*13(3) | |||||
fadd 30,4,5 | |||||
lfd 24,8*10(3) | |||||
fadd 28,0,1 | |||||
lfd 25,8*11(3) | |||||
.Lentry: | |||||
fmul 0,22,29 | |||||
fmul 1,23,29 | |||||
fmul 4,16,29 | |||||
fmul 5,17,29 | |||||
fmul 2,14,29 | |||||
fmul 3,15,29 | |||||
fmul 6,18,29 | |||||
fmul 7,19,29 | |||||
fmadd 0,26,31,0 | |||||
fmadd 1,27,31,1 | |||||
fmadd 4,22,31,4 | |||||
fmadd 5,23,31,5 | |||||
fmadd 2,20,31,2 | |||||
fmadd 3,21,31,3 | |||||
fmadd 6,14,31,6 | |||||
fmadd 7,15,31,7 | |||||
fmadd 0,20,30,0 | |||||
fmadd 1,21,30,1 | |||||
fmadd 4,14,30,4 | |||||
fmadd 5,15,30,5 | |||||
fmadd 2,22,30,2 | |||||
fmadd 3,23,30,3 | |||||
fmadd 6,16,30,6 | |||||
fmadd 7,17,30,7 | |||||
fmadd 0,14,28,0 | |||||
lfd 30,24(1) | |||||
fmadd 1,15,28,1 | |||||
lfd 31,32(1) | |||||
fmadd 4,18,28,4 | |||||
lfd 26,40(1) | |||||
fmadd 5,19,28,5 | |||||
lfd 27,48(1) | |||||
fmadd 2,16,28,2 | |||||
fmadd 3,17,28,3 | |||||
fmadd 6,24,28,6 | |||||
fmadd 7,25,28,7 | |||||
bdnz .Loop | |||||
fadd 24,0,9 | |||||
fadd 25,1,9 | |||||
fadd 28,4,11 | |||||
fadd 29,5,11 | |||||
fadd 26,2,10 | |||||
fadd 27,3,10 | |||||
fadd 30,6,12 | |||||
fadd 31,7,12 | |||||
fsub 24,24,9 | |||||
fsub 25,25,9 | |||||
fsub 28,28,11 | |||||
fsub 29,29,11 | |||||
fsub 26,26,10 | |||||
fsub 27,27,10 | |||||
fsub 30,30,12 | |||||
fsub 31,31,12 | |||||
fsub 2,2,26 | |||||
fsub 3,3,27 | |||||
fsub 6,6,30 | |||||
fsub 7,7,31 | |||||
fsub 4,4,28 | |||||
fsub 5,5,29 | |||||
fsub 0,0,24 | |||||
fsub 1,1,25 | |||||
fadd 2,2,24 | |||||
fadd 3,3,25 | |||||
fadd 6,6,28 | |||||
fadd 7,7,29 | |||||
fadd 4,4,26 | |||||
fadd 5,5,27 | |||||
fmadd 0,30,13,0 | |||||
fmadd 1,31,13,1 | |||||
fadd 29,2,3 | |||||
fadd 31,6,7 | |||||
fadd 30,4,5 | |||||
fadd 28,0,1 | |||||
lfd 0,56(1) | |||||
fadd 29,29,9 | |||||
fadd 31,31,11 | |||||
fadd 30,30,10 | |||||
fadd 28,28,8 | |||||
stfd 29,8*1(3) | |||||
stfd 31,8*3(3) | |||||
stfd 30,8*2(3) | |||||
stfd 28,8*0(3) | |||||
mtfsf 255,0 | |||||
lfd 14,72(1) | |||||
lfd 15,80(1) | |||||
lfd 16,88(1) | |||||
lfd 17,96(1) | |||||
lfd 18,104(1) | |||||
lfd 19,112(1) | |||||
lfd 20,120(1) | |||||
lfd 21,128(1) | |||||
lfd 22,136(1) | |||||
lfd 23,144(1) | |||||
lfd 24,152(1) | |||||
lfd 25,160(1) | |||||
lfd 26,168(1) | |||||
lfd 27,176(1) | |||||
lfd 28,184(1) | |||||
lfd 29,192(1) | |||||
lfd 30,200(1) | |||||
lfd 31,208(1) | |||||
addi 1,1,216 | |||||
.Labort: | |||||
blr | |||||
.long 0 | |||||
.byte 0,12,4,1,0x80,0,4,0 | |||||
.size poly1305_blocks_fpu,.-poly1305_blocks_fpu | |||||
.globl poly1305_emit_fpu | |||||
.type poly1305_emit_fpu,@function | |||||
.align 4 | |||||
poly1305_emit_fpu: | |||||
stwu 1,-40(1) | |||||
mflr 0 | |||||
stw 28,24(1) | |||||
stw 29,28(1) | |||||
stw 30,32(1) | |||||
stw 31,36(1) | |||||
stw 0,44(1) | |||||
lwz 28,0(3) | |||||
lwz 7,4(3) | |||||
lwz 29,8(3) | |||||
lwz 8,12(3) | |||||
lwz 30,16(3) | |||||
lwz 9,20(3) | |||||
lwz 31,24(3) | |||||
lwz 10,28(3) | |||||
lis 0,0xfff0 | |||||
andc 28,28,0 | |||||
andc 29,29,0 | |||||
andc 30,30,0 | |||||
andc 31,31,0 | |||||
li 0,3 | |||||
srwi 6,31,2 | |||||
and 11,31,0 | |||||
andc 31,31,0 | |||||
add 31,31,6 | |||||
addc 7,7,31 | |||||
adde 8,8,28 | |||||
adde 9,9,29 | |||||
adde 10,10,30 | |||||
addze 11,11 | |||||
addic 28,7,5 | |||||
addze 29,8 | |||||
addze 30,9 | |||||
addze 31,10 | |||||
addze 0,11 | |||||
srwi 0,0,2 | |||||
neg 0,0 | |||||
srawi 0,0,31 | |||||
andc 7,7,0 | |||||
and 28,28,0 | |||||
andc 8,8,0 | |||||
and 29,29,0 | |||||
or 7,7,28 | |||||
lwz 28,0(5) | |||||
andc 9,9,0 | |||||
and 30,30,0 | |||||
or 8,8,29 | |||||
lwz 29,4(5) | |||||
andc 10,10,0 | |||||
and 31,31,0 | |||||
or 9,9,30 | |||||
lwz 30,8(5) | |||||
or 10,10,31 | |||||
lwz 31,12(5) | |||||
addc 7,7,28 | |||||
adde 8,8,29 | |||||
adde 9,9,30 | |||||
adde 10,10,31 | |||||
li 29,4 | |||||
stwbrx 7,0,4 | |||||
li 30,8 | |||||
stwbrx 8,29,4 | |||||
li 31,12 | |||||
stwbrx 9,30,4 | |||||
stwbrx 10,31,4 | |||||
lwz 28,24(1) | |||||
lwz 29,28(1) | |||||
lwz 30,32(1) | |||||
lwz 31,36(1) | |||||
addi 1,1,40 | |||||
blr | |||||
.long 0 | |||||
.byte 0,12,4,1,0x80,4,3,0 | |||||
.size poly1305_emit_fpu,.-poly1305_emit_fpu | |||||
.align 6 | |||||
.LPICmeup: | |||||
mflr 0 | |||||
bcl 20,31,$+4 | |||||
mflr 5 | |||||
addi 5,5,56 | |||||
mtlr 0 | |||||
blr | |||||
.long 0 | |||||
.byte 0,12,0x14,0,0,0,0,0 | |||||
.space 28 | |||||
.long 0x43300000,0x00000000 | |||||
.long 0x45300000,0x00000000 | |||||
.long 0x47300000,0x00000000 | |||||
.long 0x49300000,0x00000000 | |||||
.long 0x4b500000,0x00000000 | |||||
.long 0x37f40000,0x00000000 | |||||
.long 0x44300000,0x00000000 | |||||
.long 0x46300000,0x00000000 | |||||
.long 0x48300000,0x00000000 | |||||
.long 0x4a300000,0x00000000 | |||||
.long 0x3e300000,0x00000000 | |||||
.long 0x40300000,0x00000000 | |||||
.long 0x42300000,0x00000000 | |||||
.long 0x00000000,0x00000001 | |||||
.byte 80,111,108,121,49,51,48,53,32,102,111,114,32,80,80,67,32,70,80,85,44,67,82,89,80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111,114,103,62,0 | |||||
.align 2 | |||||
.align 4 |