Changeset View
Changeset View
Standalone View
Standalone View
sys/crypto/openssl/powerpc/ppc.S
- This file was added.
/* $FreeBSD$ */ | |||||
/* Do not modify. This file is auto-generated from ppc.pl. */ | |||||
.globl bn_sqr_comba4 | |||||
.type bn_sqr_comba4,@function | |||||
.globl bn_sqr_comba8 | |||||
.type bn_sqr_comba8,@function | |||||
.globl bn_mul_comba4 | |||||
.type bn_mul_comba4,@function | |||||
.globl bn_mul_comba8 | |||||
.type bn_mul_comba8,@function | |||||
.globl bn_sub_words | |||||
.type bn_sub_words,@function | |||||
.globl bn_add_words | |||||
.type bn_add_words,@function | |||||
.globl bn_div_words | |||||
.type bn_div_words,@function | |||||
.globl bn_sqr_words | |||||
.type bn_sqr_words,@function | |||||
.globl bn_mul_words | |||||
.type bn_mul_words,@function | |||||
.globl bn_mul_add_words | |||||
.type bn_mul_add_words,@function | |||||
.machine "any" | |||||
.text | |||||
.align 4 | |||||
bn_sqr_comba4: | |||||
xor 0,0,0 | |||||
lwz 5,0(4) | |||||
mullw 9,5,5 | |||||
mulhwu 10,5,5 | |||||
stw 9,0(3) | |||||
lwz 6,4(4) | |||||
mullw 7,5,6 | |||||
mulhwu 8,5,6 | |||||
addc 7,7,7 | |||||
adde 8,8,8 | |||||
addze 9,0 | |||||
addc 10,7,10 | |||||
addze 11,8 | |||||
addze 9,9 | |||||
stw 10,4(3) | |||||
mullw 7,6,6 | |||||
mulhwu 8,6,6 | |||||
addc 11,7,11 | |||||
adde 9,8,9 | |||||
addze 10,0 | |||||
lwz 6,8(4) | |||||
mullw 7,5,6 | |||||
mulhwu 8,5,6 | |||||
addc 7,7,7 | |||||
adde 8,8,8 | |||||
addze 10,10 | |||||
addc 11,7,11 | |||||
adde 9,8,9 | |||||
addze 10,10 | |||||
stw 11,8(3) | |||||
lwz 6,12(4) | |||||
mullw 7,5,6 | |||||
mulhwu 8,5,6 | |||||
addc 7,7,7 | |||||
adde 8,8,8 | |||||
addze 11,0 | |||||
addc 9,7,9 | |||||
adde 10,8,10 | |||||
addze 11,11 | |||||
lwz 5,4(4) | |||||
lwz 6,8(4) | |||||
mullw 7,5,6 | |||||
mulhwu 8,5,6 | |||||
addc 7,7,7 | |||||
adde 8,8,8 | |||||
addze 11,11 | |||||
addc 9,7,9 | |||||
adde 10,8,10 | |||||
addze 11,11 | |||||
stw 9,12(3) | |||||
mullw 7,6,6 | |||||
mulhwu 8,6,6 | |||||
addc 10,7,10 | |||||
adde 11,8,11 | |||||
addze 9,0 | |||||
lwz 6,12(4) | |||||
mullw 7,5,6 | |||||
mulhwu 8,5,6 | |||||
addc 7,7,7 | |||||
adde 8,8,8 | |||||
addze 9,9 | |||||
addc 10,7,10 | |||||
adde 11,8,11 | |||||
addze 9,9 | |||||
stw 10,16(3) | |||||
lwz 5,8(4) | |||||
mullw 7,5,6 | |||||
mulhwu 8,5,6 | |||||
addc 7,7,7 | |||||
adde 8,8,8 | |||||
addze 10,0 | |||||
addc 11,7,11 | |||||
adde 9,8,9 | |||||
addze 10,10 | |||||
stw 11,20(3) | |||||
mullw 7,6,6 | |||||
mulhwu 8,6,6 | |||||
addc 9,7,9 | |||||
adde 10,8,10 | |||||
stw 9,24(3) | |||||
stw 10,28(3) | |||||
blr | |||||
.long 0 | |||||
.byte 0,12,0x14,0,0,0,2,0 | |||||
.long 0 | |||||
.size bn_sqr_comba4,.-bn_sqr_comba4 | |||||
.align 4 | |||||
bn_sqr_comba8: | |||||
xor 0,0,0 | |||||
lwz 5,0(4) | |||||
mullw 9,5,5 | |||||
mulhwu 10,5,5 | |||||
stw 9,0(3) | |||||
lwz 6,4(4) | |||||
mullw 7,5,6 | |||||
mulhwu 8,5,6 | |||||
addc 10,7,10 | |||||
adde 11,8,0 | |||||
addze 9,0 | |||||
addc 10,7,10 | |||||
adde 11,8,11 | |||||
addze 9,9 | |||||
stw 10,4(3) | |||||
mullw 7,6,6 | |||||
mulhwu 8,6,6 | |||||
addc 11,7,11 | |||||
adde 9,8,9 | |||||
addze 10,0 | |||||
lwz 6,8(4) | |||||
mullw 7,5,6 | |||||
mulhwu 8,5,6 | |||||
addc 11,7,11 | |||||
adde 9,8,9 | |||||
addze 10,10 | |||||
addc 11,7,11 | |||||
adde 9,8,9 | |||||
addze 10,10 | |||||
stw 11,8(3) | |||||
lwz 6,12(4) | |||||
mullw 7,5,6 | |||||
mulhwu 8,5,6 | |||||
addc 9,7,9 | |||||
adde 10,8,10 | |||||
addze 11,0 | |||||
addc 9,7,9 | |||||
adde 10,8,10 | |||||
addze 11,11 | |||||
lwz 5,4(4) | |||||
lwz 6,8(4) | |||||
mullw 7,5,6 | |||||
mulhwu 8,5,6 | |||||
addc 9,7,9 | |||||
adde 10,8,10 | |||||
addze 11,11 | |||||
addc 9,7,9 | |||||
adde 10,8,10 | |||||
addze 11,11 | |||||
stw 9,12(3) | |||||
mullw 7,6,6 | |||||
mulhwu 8,6,6 | |||||
addc 10,7,10 | |||||
adde 11,8,11 | |||||
addze 9,0 | |||||
lwz 6,12(4) | |||||
mullw 7,5,6 | |||||
mulhwu 8,5,6 | |||||
addc 10,7,10 | |||||
adde 11,8,11 | |||||
addze 9,9 | |||||
addc 10,7,10 | |||||
adde 11,8,11 | |||||
addze 9,9 | |||||
lwz 5,0(4) | |||||
lwz 6,16(4) | |||||
mullw 7,5,6 | |||||
mulhwu 8,5,6 | |||||
addc 10,7,10 | |||||
adde 11,8,11 | |||||
addze 9,9 | |||||
addc 10,7,10 | |||||
adde 11,8,11 | |||||
addze 9,9 | |||||
stw 10,16(3) | |||||
lwz 6,20(4) | |||||
mullw 7,5,6 | |||||
mulhwu 8,5,6 | |||||
addc 11,7,11 | |||||
adde 9,8,9 | |||||
addze 10,0 | |||||
addc 11,7,11 | |||||
adde 9,8,9 | |||||
addze 10,10 | |||||
lwz 5,4(4) | |||||
lwz 6,16(4) | |||||
mullw 7,5,6 | |||||
mulhwu 8,5,6 | |||||
addc 11,7,11 | |||||
adde 9,8,9 | |||||
addze 10,10 | |||||
addc 11,7,11 | |||||
adde 9,8,9 | |||||
addze 10,10 | |||||
lwz 5,8(4) | |||||
lwz 6,12(4) | |||||
mullw 7,5,6 | |||||
mulhwu 8,5,6 | |||||
addc 11,7,11 | |||||
adde 9,8,9 | |||||
addze 10,10 | |||||
addc 11,7,11 | |||||
adde 9,8,9 | |||||
addze 10,10 | |||||
stw 11,20(3) | |||||
mullw 7,6,6 | |||||
mulhwu 8,6,6 | |||||
addc 9,7,9 | |||||
adde 10,8,10 | |||||
addze 11,0 | |||||
lwz 6,16(4) | |||||
mullw 7,5,6 | |||||
mulhwu 8,5,6 | |||||
addc 9,7,9 | |||||
adde 10,8,10 | |||||
addze 11,11 | |||||
addc 9,7,9 | |||||
adde 10,8,10 | |||||
addze 11,11 | |||||
lwz 5,4(4) | |||||
lwz 6,20(4) | |||||
mullw 7,5,6 | |||||
mulhwu 8,5,6 | |||||
addc 9,7,9 | |||||
adde 10,8,10 | |||||
addze 11,11 | |||||
addc 9,7,9 | |||||
adde 10,8,10 | |||||
addze 11,11 | |||||
lwz 5,0(4) | |||||
lwz 6,24(4) | |||||
mullw 7,5,6 | |||||
mulhwu 8,5,6 | |||||
addc 9,7,9 | |||||
adde 10,8,10 | |||||
addze 11,11 | |||||
addc 9,7,9 | |||||
adde 10,8,10 | |||||
addze 11,11 | |||||
stw 9,24(3) | |||||
lwz 6,28(4) | |||||
mullw 7,5,6 | |||||
mulhwu 8,5,6 | |||||
addc 10,7,10 | |||||
adde 11,8,11 | |||||
addze 9,0 | |||||
addc 10,7,10 | |||||
adde 11,8,11 | |||||
addze 9,9 | |||||
lwz 5,4(4) | |||||
lwz 6,24(4) | |||||
mullw 7,5,6 | |||||
mulhwu 8,5,6 | |||||
addc 10,7,10 | |||||
adde 11,8,11 | |||||
addze 9,9 | |||||
addc 10,7,10 | |||||
adde 11,8,11 | |||||
addze 9,9 | |||||
lwz 5,8(4) | |||||
lwz 6,20(4) | |||||
mullw 7,5,6 | |||||
mulhwu 8,5,6 | |||||
addc 10,7,10 | |||||
adde 11,8,11 | |||||
addze 9,9 | |||||
addc 10,7,10 | |||||
adde 11,8,11 | |||||
addze 9,9 | |||||
lwz 5,12(4) | |||||
lwz 6,16(4) | |||||
mullw 7,5,6 | |||||
mulhwu 8,5,6 | |||||
addc 10,7,10 | |||||
adde 11,8,11 | |||||
addze 9,9 | |||||
addc 10,7,10 | |||||
adde 11,8,11 | |||||
addze 9,9 | |||||
stw 10,28(3) | |||||
mullw 7,6,6 | |||||
mulhwu 8,6,6 | |||||
addc 11,7,11 | |||||
adde 9,8,9 | |||||
addze 10,0 | |||||
lwz 6,20(4) | |||||
mullw 7,5,6 | |||||
mulhwu 8,5,6 | |||||
addc 11,7,11 | |||||
adde 9,8,9 | |||||
addze 10,10 | |||||
addc 11,7,11 | |||||
adde 9,8,9 | |||||
addze 10,10 | |||||
lwz 5,8(4) | |||||
lwz 6,24(4) | |||||
mullw 7,5,6 | |||||
mulhwu 8,5,6 | |||||
addc 11,7,11 | |||||
adde 9,8,9 | |||||
addze 10,10 | |||||
addc 11,7,11 | |||||
adde 9,8,9 | |||||
addze 10,10 | |||||
lwz 5,4(4) | |||||
lwz 6,28(4) | |||||
mullw 7,5,6 | |||||
mulhwu 8,5,6 | |||||
addc 11,7,11 | |||||
adde 9,8,9 | |||||
addze 10,10 | |||||
addc 11,7,11 | |||||
adde 9,8,9 | |||||
addze 10,10 | |||||
stw 11,32(3) | |||||
lwz 5,8(4) | |||||
mullw 7,5,6 | |||||
mulhwu 8,5,6 | |||||
addc 9,7,9 | |||||
adde 10,8,10 | |||||
addze 11,0 | |||||
addc 9,7,9 | |||||
adde 10,8,10 | |||||
addze 11,11 | |||||
lwz 5,12(4) | |||||
lwz 6,24(4) | |||||
mullw 7,5,6 | |||||
mulhwu 8,5,6 | |||||
addc 9,7,9 | |||||
adde 10,8,10 | |||||
addze 11,11 | |||||
addc 9,7,9 | |||||
adde 10,8,10 | |||||
addze 11,11 | |||||
lwz 5,16(4) | |||||
lwz 6,20(4) | |||||
mullw 7,5,6 | |||||
mulhwu 8,5,6 | |||||
addc 9,7,9 | |||||
adde 10,8,10 | |||||
addze 11,11 | |||||
addc 9,7,9 | |||||
adde 10,8,10 | |||||
addze 11,11 | |||||
stw 9,36(3) | |||||
mullw 7,6,6 | |||||
mulhwu 8,6,6 | |||||
addc 10,7,10 | |||||
adde 11,8,11 | |||||
addze 9,0 | |||||
lwz 6,24(4) | |||||
mullw 7,5,6 | |||||
mulhwu 8,5,6 | |||||
addc 10,7,10 | |||||
adde 11,8,11 | |||||
addze 9,9 | |||||
addc 10,7,10 | |||||
adde 11,8,11 | |||||
addze 9,9 | |||||
lwz 5,12(4) | |||||
lwz 6,28(4) | |||||
mullw 7,5,6 | |||||
mulhwu 8,5,6 | |||||
addc 10,7,10 | |||||
adde 11,8,11 | |||||
addze 9,9 | |||||
addc 10,7,10 | |||||
adde 11,8,11 | |||||
addze 9,9 | |||||
stw 10,40(3) | |||||
lwz 5,16(4) | |||||
mullw 7,5,6 | |||||
mulhwu 8,5,6 | |||||
addc 11,7,11 | |||||
adde 9,8,9 | |||||
addze 10,0 | |||||
addc 11,7,11 | |||||
adde 9,8,9 | |||||
addze 10,10 | |||||
lwz 5,20(4) | |||||
lwz 6,24(4) | |||||
mullw 7,5,6 | |||||
mulhwu 8,5,6 | |||||
addc 11,7,11 | |||||
adde 9,8,9 | |||||
addze 10,10 | |||||
addc 11,7,11 | |||||
adde 9,8,9 | |||||
addze 10,10 | |||||
stw 11,44(3) | |||||
mullw 7,6,6 | |||||
mulhwu 8,6,6 | |||||
addc 9,7,9 | |||||
adde 10,8,10 | |||||
addze 11,0 | |||||
lwz 6,28(4) | |||||
mullw 7,5,6 | |||||
mulhwu 8,5,6 | |||||
addc 9,7,9 | |||||
adde 10,8,10 | |||||
addze 11,11 | |||||
addc 9,7,9 | |||||
adde 10,8,10 | |||||
addze 11,11 | |||||
stw 9,48(3) | |||||
lwz 5,24(4) | |||||
mullw 7,5,6 | |||||
mulhwu 8,5,6 | |||||
addc 10,7,10 | |||||
adde 11,8,11 | |||||
addze 9,0 | |||||
addc 10,7,10 | |||||
adde 11,8,11 | |||||
addze 9,9 | |||||
stw 10,52(3) | |||||
mullw 7,6,6 | |||||
mulhwu 8,6,6 | |||||
addc 11,7,11 | |||||
adde 9,8,9 | |||||
stw 11,56(3) | |||||
stw 9, 60(3) | |||||
blr | |||||
.long 0 | |||||
.byte 0,12,0x14,0,0,0,2,0 | |||||
.long 0 | |||||
.size bn_sqr_comba8,.-bn_sqr_comba8 | |||||
.align 4 | |||||
bn_mul_comba4: | |||||
xor 0,0,0 | |||||
lwz 6,0(4) | |||||
lwz 7,0(5) | |||||
mullw 10,6,7 | |||||
mulhwu 11,6,7 | |||||
stw 10,0(3) | |||||
lwz 7,4(5) | |||||
mullw 8,6,7 | |||||
mulhwu 9,6,7 | |||||
addc 11,8,11 | |||||
adde 12,9,0 | |||||
addze 10,0 | |||||
lwz 6, 4(4) | |||||
lwz 7, 0(5) | |||||
mullw 8,6,7 | |||||
mulhwu 9,6,7 | |||||
addc 11,8,11 | |||||
adde 12,9,12 | |||||
addze 10,10 | |||||
stw 11,4(3) | |||||
lwz 6,8(4) | |||||
mullw 8,6,7 | |||||
mulhwu 9,6,7 | |||||
addc 12,8,12 | |||||
adde 10,9,10 | |||||
addze 11,0 | |||||
lwz 6,4(4) | |||||
lwz 7,4(5) | |||||
mullw 8,6,7 | |||||
mulhwu 9,6,7 | |||||
addc 12,8,12 | |||||
adde 10,9,10 | |||||
addze 11,11 | |||||
lwz 6,0(4) | |||||
lwz 7,8(5) | |||||
mullw 8,6,7 | |||||
mulhwu 9,6,7 | |||||
addc 12,8,12 | |||||
adde 10,9,10 | |||||
addze 11,11 | |||||
stw 12,8(3) | |||||
lwz 7,12(5) | |||||
mullw 8,6,7 | |||||
mulhwu 9,6,7 | |||||
addc 10,8,10 | |||||
adde 11,9,11 | |||||
addze 12,0 | |||||
lwz 6,4(4) | |||||
lwz 7,8(5) | |||||
mullw 8,6,7 | |||||
mulhwu 9,6,7 | |||||
addc 10,8,10 | |||||
adde 11,9,11 | |||||
addze 12,12 | |||||
lwz 6,8(4) | |||||
lwz 7,4(5) | |||||
mullw 8,6,7 | |||||
mulhwu 9,6,7 | |||||
addc 10,8,10 | |||||
adde 11,9,11 | |||||
addze 12,12 | |||||
lwz 6,12(4) | |||||
lwz 7,0(5) | |||||
mullw 8,6,7 | |||||
mulhwu 9,6,7 | |||||
addc 10,8,10 | |||||
adde 11,9,11 | |||||
addze 12,12 | |||||
stw 10,12(3) | |||||
lwz 7,4(5) | |||||
mullw 8,6,7 | |||||
mulhwu 9,6,7 | |||||
addc 11,8,11 | |||||
adde 12,9,12 | |||||
addze 10,0 | |||||
lwz 6,8(4) | |||||
lwz 7,8(5) | |||||
mullw 8,6,7 | |||||
mulhwu 9,6,7 | |||||
addc 11,8,11 | |||||
adde 12,9,12 | |||||
addze 10,10 | |||||
lwz 6,4(4) | |||||
lwz 7,12(5) | |||||
mullw 8,6,7 | |||||
mulhwu 9,6,7 | |||||
addc 11,8,11 | |||||
adde 12,9,12 | |||||
addze 10,10 | |||||
stw 11,16(3) | |||||
lwz 6,8(4) | |||||
mullw 8,6,7 | |||||
mulhwu 9,6,7 | |||||
addc 12,8,12 | |||||
adde 10,9,10 | |||||
addze 11,0 | |||||
lwz 6,12(4) | |||||
lwz 7,8(5) | |||||
mullw 8,6,7 | |||||
mulhwu 9,6,7 | |||||
addc 12,8,12 | |||||
adde 10,9,10 | |||||
addze 11,11 | |||||
stw 12,20(3) | |||||
lwz 7,12(5) | |||||
mullw 8,6,7 | |||||
mulhwu 9,6,7 | |||||
addc 10,8,10 | |||||
adde 11,9,11 | |||||
stw 10,24(3) | |||||
stw 11,28(3) | |||||
blr | |||||
.long 0 | |||||
.byte 0,12,0x14,0,0,0,3,0 | |||||
.long 0 | |||||
.size bn_mul_comba4,.-bn_mul_comba4 | |||||
.align 4 | |||||
bn_mul_comba8: | |||||
xor 0,0,0 | |||||
lwz 6,0(4) | |||||
lwz 7,0(5) | |||||
mullw 10,6,7 | |||||
mulhwu 11,6,7 | |||||
stw 10,0(3) | |||||
lwz 7,4(5) | |||||
mullw 8,6,7 | |||||
mulhwu 9,6,7 | |||||
addc 11,11,8 | |||||
addze 12,9 | |||||
addze 10,0 | |||||
lwz 6,4(4) | |||||
lwz 7,0(5) | |||||
mullw 8,6,7 | |||||
mulhwu 9,6,7 | |||||
addc 11,11,8 | |||||
adde 12,12,9 | |||||
addze 10,10 | |||||
stw 11,4(3) | |||||
lwz 6,8(4) | |||||
mullw 8,6,7 | |||||
mulhwu 9,6,7 | |||||
addc 12,12,8 | |||||
adde 10,10,9 | |||||
addze 11,0 | |||||
lwz 6,4(4) | |||||
lwz 7,4(5) | |||||
mullw 8,6,7 | |||||
mulhwu 9,6,7 | |||||
addc 12,12,8 | |||||
adde 10,10,9 | |||||
addze 11,11 | |||||
lwz 6,0(4) | |||||
lwz 7,8(5) | |||||
mullw 8,6,7 | |||||
mulhwu 9,6,7 | |||||
addc 12,12,8 | |||||
adde 10,10,9 | |||||
addze 11,11 | |||||
stw 12,8(3) | |||||
lwz 7,12(5) | |||||
mullw 8,6,7 | |||||
mulhwu 9,6,7 | |||||
addc 10,10,8 | |||||
adde 11,11,9 | |||||
addze 12,0 | |||||
lwz 6,4(4) | |||||
lwz 7,8(5) | |||||
mullw 8,6,7 | |||||
mulhwu 9,6,7 | |||||
addc 10,10,8 | |||||
adde 11,11,9 | |||||
addze 12,12 | |||||
lwz 6,8(4) | |||||
lwz 7,4(5) | |||||
mullw 8,6,7 | |||||
mulhwu 9,6,7 | |||||
addc 10,10,8 | |||||
adde 11,11,9 | |||||
addze 12,12 | |||||
lwz 6,12(4) | |||||
lwz 7,0(5) | |||||
mullw 8,6,7 | |||||
mulhwu 9,6,7 | |||||
addc 10,10,8 | |||||
adde 11,11,9 | |||||
addze 12,12 | |||||
stw 10,12(3) | |||||
lwz 6,16(4) | |||||
mullw 8,6,7 | |||||
mulhwu 9,6,7 | |||||
addc 11,11,8 | |||||
adde 12,12,9 | |||||
addze 10,0 | |||||
lwz 6,12(4) | |||||
lwz 7,4(5) | |||||
mullw 8,6,7 | |||||
mulhwu 9,6,7 | |||||
addc 11,11,8 | |||||
adde 12,12,9 | |||||
addze 10,10 | |||||
lwz 6,8(4) | |||||
lwz 7,8(5) | |||||
mullw 8,6,7 | |||||
mulhwu 9,6,7 | |||||
addc 11,11,8 | |||||
adde 12,12,9 | |||||
addze 10,10 | |||||
lwz 6,4(4) | |||||
lwz 7,12(5) | |||||
mullw 8,6,7 | |||||
mulhwu 9,6,7 | |||||
addc 11,11,8 | |||||
adde 12,12,9 | |||||
addze 10,10 | |||||
lwz 6,0(4) | |||||
lwz 7,16(5) | |||||
mullw 8,6,7 | |||||
mulhwu 9,6,7 | |||||
addc 11,11,8 | |||||
adde 12,12,9 | |||||
addze 10,10 | |||||
stw 11,16(3) | |||||
lwz 7,20(5) | |||||
mullw 8,6,7 | |||||
mulhwu 9,6,7 | |||||
addc 12,12,8 | |||||
adde 10,10,9 | |||||
addze 11,0 | |||||
lwz 6,4(4) | |||||
lwz 7,16(5) | |||||
mullw 8,6,7 | |||||
mulhwu 9,6,7 | |||||
addc 12,12,8 | |||||
adde 10,10,9 | |||||
addze 11,11 | |||||
lwz 6,8(4) | |||||
lwz 7,12(5) | |||||
mullw 8,6,7 | |||||
mulhwu 9,6,7 | |||||
addc 12,12,8 | |||||
adde 10,10,9 | |||||
addze 11,11 | |||||
lwz 6,12(4) | |||||
lwz 7,8(5) | |||||
mullw 8,6,7 | |||||
mulhwu 9,6,7 | |||||
addc 12,12,8 | |||||
adde 10,10,9 | |||||
addze 11,11 | |||||
lwz 6,16(4) | |||||
lwz 7,4(5) | |||||
mullw 8,6,7 | |||||
mulhwu 9,6,7 | |||||
addc 12,12,8 | |||||
adde 10,10,9 | |||||
addze 11,11 | |||||
lwz 6,20(4) | |||||
lwz 7,0(5) | |||||
mullw 8,6,7 | |||||
mulhwu 9,6,7 | |||||
addc 12,12,8 | |||||
adde 10,10,9 | |||||
addze 11,11 | |||||
stw 12,20(3) | |||||
lwz 6,24(4) | |||||
mullw 8,6,7 | |||||
mulhwu 9,6,7 | |||||
addc 10,10,8 | |||||
adde 11,11,9 | |||||
addze 12,0 | |||||
lwz 6,20(4) | |||||
lwz 7,4(5) | |||||
mullw 8,6,7 | |||||
mulhwu 9,6,7 | |||||
addc 10,10,8 | |||||
adde 11,11,9 | |||||
addze 12,12 | |||||
lwz 6,16(4) | |||||
lwz 7,8(5) | |||||
mullw 8,6,7 | |||||
mulhwu 9,6,7 | |||||
addc 10,10,8 | |||||
adde 11,11,9 | |||||
addze 12,12 | |||||
lwz 6,12(4) | |||||
lwz 7,12(5) | |||||
mullw 8,6,7 | |||||
mulhwu 9,6,7 | |||||
addc 10,10,8 | |||||
adde 11,11,9 | |||||
addze 12,12 | |||||
lwz 6,8(4) | |||||
lwz 7,16(5) | |||||
mullw 8,6,7 | |||||
mulhwu 9,6,7 | |||||
addc 10,10,8 | |||||
adde 11,11,9 | |||||
addze 12,12 | |||||
lwz 6,4(4) | |||||
lwz 7,20(5) | |||||
mullw 8,6,7 | |||||
mulhwu 9,6,7 | |||||
addc 10,10,8 | |||||
adde 11,11,9 | |||||
addze 12,12 | |||||
lwz 6,0(4) | |||||
lwz 7,24(5) | |||||
mullw 8,6,7 | |||||
mulhwu 9,6,7 | |||||
addc 10,10,8 | |||||
adde 11,11,9 | |||||
addze 12,12 | |||||
stw 10,24(3) | |||||
lwz 7,28(5) | |||||
mullw 8,6,7 | |||||
mulhwu 9,6,7 | |||||
addc 11,11,8 | |||||
adde 12,12,9 | |||||
addze 10,0 | |||||
lwz 6,4(4) | |||||
lwz 7,24(5) | |||||
mullw 8,6,7 | |||||
mulhwu 9,6,7 | |||||
addc 11,11,8 | |||||
adde 12,12,9 | |||||
addze 10,10 | |||||
lwz 6,8(4) | |||||
lwz 7,20(5) | |||||
mullw 8,6,7 | |||||
mulhwu 9,6,7 | |||||
addc 11,11,8 | |||||
adde 12,12,9 | |||||
addze 10,10 | |||||
lwz 6,12(4) | |||||
lwz 7,16(5) | |||||
mullw 8,6,7 | |||||
mulhwu 9,6,7 | |||||
addc 11,11,8 | |||||
adde 12,12,9 | |||||
addze 10,10 | |||||
lwz 6,16(4) | |||||
lwz 7,12(5) | |||||
mullw 8,6,7 | |||||
mulhwu 9,6,7 | |||||
addc 11,11,8 | |||||
adde 12,12,9 | |||||
addze 10,10 | |||||
lwz 6,20(4) | |||||
lwz 7,8(5) | |||||
mullw 8,6,7 | |||||
mulhwu 9,6,7 | |||||
addc 11,11,8 | |||||
adde 12,12,9 | |||||
addze 10,10 | |||||
lwz 6,24(4) | |||||
lwz 7,4(5) | |||||
mullw 8,6,7 | |||||
mulhwu 9,6,7 | |||||
addc 11,11,8 | |||||
adde 12,12,9 | |||||
addze 10,10 | |||||
lwz 6,28(4) | |||||
lwz 7,0(5) | |||||
mullw 8,6,7 | |||||
mulhwu 9,6,7 | |||||
addc 11,11,8 | |||||
adde 12,12,9 | |||||
addze 10,10 | |||||
stw 11,28(3) | |||||
lwz 7,4(5) | |||||
mullw 8,6,7 | |||||
mulhwu 9,6,7 | |||||
addc 12,12,8 | |||||
adde 10,10,9 | |||||
addze 11,0 | |||||
lwz 6,24(4) | |||||
lwz 7,8(5) | |||||
mullw 8,6,7 | |||||
mulhwu 9,6,7 | |||||
addc 12,12,8 | |||||
adde 10,10,9 | |||||
addze 11,11 | |||||
lwz 6,20(4) | |||||
lwz 7,12(5) | |||||
mullw 8,6,7 | |||||
mulhwu 9,6,7 | |||||
addc 12,12,8 | |||||
adde 10,10,9 | |||||
addze 11,11 | |||||
lwz 6,16(4) | |||||
lwz 7,16(5) | |||||
mullw 8,6,7 | |||||
mulhwu 9,6,7 | |||||
addc 12,12,8 | |||||
adde 10,10,9 | |||||
addze 11,11 | |||||
lwz 6,12(4) | |||||
lwz 7,20(5) | |||||
mullw 8,6,7 | |||||
mulhwu 9,6,7 | |||||
addc 12,12,8 | |||||
adde 10,10,9 | |||||
addze 11,11 | |||||
lwz 6,8(4) | |||||
lwz 7,24(5) | |||||
mullw 8,6,7 | |||||
mulhwu 9,6,7 | |||||
addc 12,12,8 | |||||
adde 10,10,9 | |||||
addze 11,11 | |||||
lwz 6,4(4) | |||||
lwz 7,28(5) | |||||
mullw 8,6,7 | |||||
mulhwu 9,6,7 | |||||
addc 12,12,8 | |||||
adde 10,10,9 | |||||
addze 11,11 | |||||
stw 12,32(3) | |||||
lwz 6,8(4) | |||||
mullw 8,6,7 | |||||
mulhwu 9,6,7 | |||||
addc 10,10,8 | |||||
adde 11,11,9 | |||||
addze 12,0 | |||||
lwz 6,12(4) | |||||
lwz 7,24(5) | |||||
mullw 8,6,7 | |||||
mulhwu 9,6,7 | |||||
addc 10,10,8 | |||||
adde 11,11,9 | |||||
addze 12,12 | |||||
lwz 6,16(4) | |||||
lwz 7,20(5) | |||||
mullw 8,6,7 | |||||
mulhwu 9,6,7 | |||||
addc 10,10,8 | |||||
adde 11,11,9 | |||||
addze 12,12 | |||||
lwz 6,20(4) | |||||
lwz 7,16(5) | |||||
mullw 8,6,7 | |||||
mulhwu 9,6,7 | |||||
addc 10,10,8 | |||||
adde 11,11,9 | |||||
addze 12,12 | |||||
lwz 6,24(4) | |||||
lwz 7,12(5) | |||||
mullw 8,6,7 | |||||
mulhwu 9,6,7 | |||||
addc 10,10,8 | |||||
adde 11,11,9 | |||||
addze 12,12 | |||||
lwz 6,28(4) | |||||
lwz 7,8(5) | |||||
mullw 8,6,7 | |||||
mulhwu 9,6,7 | |||||
addc 10,10,8 | |||||
adde 11,11,9 | |||||
addze 12,12 | |||||
stw 10,36(3) | |||||
lwz 7,12(5) | |||||
mullw 8,6,7 | |||||
mulhwu 9,6,7 | |||||
addc 11,11,8 | |||||
adde 12,12,9 | |||||
addze 10,0 | |||||
lwz 6,24(4) | |||||
lwz 7,16(5) | |||||
mullw 8,6,7 | |||||
mulhwu 9,6,7 | |||||
addc 11,11,8 | |||||
adde 12,12,9 | |||||
addze 10,10 | |||||
lwz 6,20(4) | |||||
lwz 7,20(5) | |||||
mullw 8,6,7 | |||||
mulhwu 9,6,7 | |||||
addc 11,11,8 | |||||
adde 12,12,9 | |||||
addze 10,10 | |||||
lwz 6,16(4) | |||||
lwz 7,24(5) | |||||
mullw 8,6,7 | |||||
mulhwu 9,6,7 | |||||
addc 11,11,8 | |||||
adde 12,12,9 | |||||
addze 10,10 | |||||
lwz 6,12(4) | |||||
lwz 7,28(5) | |||||
mullw 8,6,7 | |||||
mulhwu 9,6,7 | |||||
addc 11,11,8 | |||||
adde 12,12,9 | |||||
addze 10,10 | |||||
stw 11,40(3) | |||||
lwz 6,16(4) | |||||
mullw 8,6,7 | |||||
mulhwu 9,6,7 | |||||
addc 12,12,8 | |||||
adde 10,10,9 | |||||
addze 11,0 | |||||
lwz 6,20(4) | |||||
lwz 7,24(5) | |||||
mullw 8,6,7 | |||||
mulhwu 9,6,7 | |||||
addc 12,12,8 | |||||
adde 10,10,9 | |||||
addze 11,11 | |||||
lwz 6,24(4) | |||||
lwz 7,20(5) | |||||
mullw 8,6,7 | |||||
mulhwu 9,6,7 | |||||
addc 12,12,8 | |||||
adde 10,10,9 | |||||
addze 11,11 | |||||
lwz 6,28(4) | |||||
lwz 7,16(5) | |||||
mullw 8,6,7 | |||||
mulhwu 9,6,7 | |||||
addc 12,12,8 | |||||
adde 10,10,9 | |||||
addze 11,11 | |||||
stw 12,44(3) | |||||
lwz 7,20(5) | |||||
mullw 8,6,7 | |||||
mulhwu 9,6,7 | |||||
addc 10,10,8 | |||||
adde 11,11,9 | |||||
addze 12,0 | |||||
lwz 6,24(4) | |||||
lwz 7,24(5) | |||||
mullw 8,6,7 | |||||
mulhwu 9,6,7 | |||||
addc 10,10,8 | |||||
adde 11,11,9 | |||||
addze 12,12 | |||||
lwz 6,20(4) | |||||
lwz 7,28(5) | |||||
mullw 8,6,7 | |||||
mulhwu 9,6,7 | |||||
addc 10,10,8 | |||||
adde 11,11,9 | |||||
addze 12,12 | |||||
stw 10,48(3) | |||||
lwz 6,24(4) | |||||
mullw 8,6,7 | |||||
mulhwu 9,6,7 | |||||
addc 11,11,8 | |||||
adde 12,12,9 | |||||
addze 10,0 | |||||
lwz 6,28(4) | |||||
lwz 7,24(5) | |||||
mullw 8,6,7 | |||||
mulhwu 9,6,7 | |||||
addc 11,11,8 | |||||
adde 12,12,9 | |||||
addze 10,10 | |||||
stw 11,52(3) | |||||
lwz 7,28(5) | |||||
mullw 8,6,7 | |||||
mulhwu 9,6,7 | |||||
addc 12,12,8 | |||||
adde 10,10,9 | |||||
stw 12,56(3) | |||||
stw 10,60(3) | |||||
blr | |||||
.long 0 | |||||
.byte 0,12,0x14,0,0,0,3,0 | |||||
.long 0 | |||||
.size bn_mul_comba8,.-bn_mul_comba8 | |||||
.align 4 | |||||
bn_sub_words: | |||||
xor 0,0,0 | |||||
subfc. 7,0,6 | |||||
beq .Lppcasm_sub_adios | |||||
addi 4,4,-4 | |||||
addi 3,3,-4 | |||||
addi 5,5,-4 | |||||
mtctr 6 | |||||
.Lppcasm_sub_mainloop: | |||||
lwzu 7,4(4) | |||||
lwzu 8,4(5) | |||||
subfe 6,8,7 | |||||
stwu 6,4(3) | |||||
bdnz .Lppcasm_sub_mainloop | |||||
.Lppcasm_sub_adios: | |||||
subfze 3,0 | |||||
andi. 3,3,1 | |||||
blr | |||||
.long 0 | |||||
.byte 0,12,0x14,0,0,0,4,0 | |||||
.long 0 | |||||
.size bn_sub_words,.-bn_sub_words | |||||
.align 4 | |||||
bn_add_words: | |||||
xor 0,0,0 | |||||
addic. 6,6,0 | |||||
beq .Lppcasm_add_adios | |||||
addi 4,4,-4 | |||||
addi 3,3,-4 | |||||
addi 5,5,-4 | |||||
mtctr 6 | |||||
.Lppcasm_add_mainloop: | |||||
lwzu 7,4(4) | |||||
lwzu 8,4(5) | |||||
adde 8,7,8 | |||||
stwu 8,4(3) | |||||
bdnz .Lppcasm_add_mainloop | |||||
.Lppcasm_add_adios: | |||||
addze 3,0 | |||||
blr | |||||
.long 0 | |||||
.byte 0,12,0x14,0,0,0,4,0 | |||||
.long 0 | |||||
.size bn_add_words,.-bn_add_words | |||||
.align 4 | |||||
bn_div_words: | |||||
cmplwi 0,5,0 | |||||
bne .Lppcasm_div1 | |||||
li 3,-1 | |||||
blr | |||||
.Lppcasm_div1: | |||||
xor 0,0,0 | |||||
li 8,32 | |||||
cntlzw. 7,5 | |||||
beq .Lppcasm_div2 | |||||
subf 8,7,8 | |||||
srw. 9,3,8 | |||||
tw 16,9,0 | |||||
.Lppcasm_div2: | |||||
.long 0x7c032840 | |||||
blt .Lppcasm_div3 | |||||
subf 3,5,3 | |||||
.Lppcasm_div3: | |||||
cmpi 0,0,7,0 | |||||
beq .Lppcasm_div4 | |||||
slw 3,3,7 | |||||
srw 8,4,8 | |||||
slw 5,5,7 | |||||
or 3,3,8 | |||||
slw 4,4,7 | |||||
.Lppcasm_div4: | |||||
srwi 9,5,16 | |||||
li 6,2 | |||||
mtctr 6 | |||||
.Lppcasm_divouterloop: | |||||
srwi 8,3,16 | |||||
srwi 11,4,16 | |||||
.long 0x7c084840 | |||||
bne .Lppcasm_div5 | |||||
li 8,-1 | |||||
clrlwi 8,8,16 | |||||
b .Lppcasm_div6 | |||||
.Lppcasm_div5: | |||||
divwu 8,3,9 | |||||
.Lppcasm_div6: | |||||
mullw 12,9,8 | |||||
clrlwi 10,5,16 | |||||
mullw 6,8,10 | |||||
.Lppcasm_divinnerloop: | |||||
subf 10,12,3 | |||||
srwi 7,10,16 | |||||
addic. 7,7,0 | |||||
slwi 7,10,16 | |||||
or 7,7,11 | |||||
.long 0x7c863840 | |||||
bne .Lppcasm_divinnerexit | |||||
ble 1,.Lppcasm_divinnerexit | |||||
addi 8,8,-1 | |||||
subf 12,9,12 | |||||
clrlwi 10,5,16 | |||||
subf 6,10,6 | |||||
b .Lppcasm_divinnerloop | |||||
.Lppcasm_divinnerexit: | |||||
srwi 10,6,16 | |||||
slwi 11,6,16 | |||||
.long 0x7c845840 | |||||
add 12,12,10 | |||||
bge 1,.Lppcasm_div7 | |||||
addi 12,12,1 | |||||
.Lppcasm_div7: | |||||
subf 11,11,4 | |||||
.long 0x7c836040 | |||||
bge 1,.Lppcasm_div8 | |||||
addi 8,8,-1 | |||||
add 3,5,3 | |||||
.Lppcasm_div8: | |||||
subf 12,12,3 | |||||
slwi 4,11,16 | |||||
insrwi 11,12,16,16 | |||||
rotlwi 3,11,16 | |||||
bdz .Lppcasm_div9 | |||||
slwi 0,8,16 | |||||
b .Lppcasm_divouterloop | |||||
.Lppcasm_div9: | |||||
or 3,8,0 | |||||
blr | |||||
.long 0 | |||||
.byte 0,12,0x14,0,0,0,3,0 | |||||
.long 0 | |||||
.size bn_div_words,.-bn_div_words | |||||
.align 4 | |||||
bn_sqr_words: | |||||
addic. 5,5,0 | |||||
beq .Lppcasm_sqr_adios | |||||
addi 4,4,-4 | |||||
addi 3,3,-4 | |||||
mtctr 5 | |||||
.Lppcasm_sqr_mainloop: | |||||
lwzu 6,4(4) | |||||
mullw 7,6,6 | |||||
mulhwu 8,6,6 | |||||
stwu 7,4(3) | |||||
stwu 8,4(3) | |||||
bdnz .Lppcasm_sqr_mainloop | |||||
.Lppcasm_sqr_adios: | |||||
blr | |||||
.long 0 | |||||
.byte 0,12,0x14,0,0,0,3,0 | |||||
.long 0 | |||||
.size bn_sqr_words,.-bn_sqr_words | |||||
.align 4 | |||||
bn_mul_words: | |||||
xor 0,0,0 | |||||
xor 12,12,12 | |||||
rlwinm. 7,5,30,2,31 | |||||
beq .Lppcasm_mw_REM | |||||
mtctr 7 | |||||
.Lppcasm_mw_LOOP: | |||||
lwz 8,0(4) | |||||
mullw 9,6,8 | |||||
mulhwu 10,6,8 | |||||
addc 9,9,12 | |||||
stw 9,0(3) | |||||
lwz 8,4(4) | |||||
mullw 11,6,8 | |||||
mulhwu 12,6,8 | |||||
adde 11,11,10 | |||||
stw 11,4(3) | |||||
lwz 8,8(4) | |||||
mullw 9,6,8 | |||||
mulhwu 10,6,8 | |||||
adde 9,9,12 | |||||
stw 9,8(3) | |||||
lwz 8,12(4) | |||||
mullw 11,6,8 | |||||
mulhwu 12,6,8 | |||||
adde 11,11,10 | |||||
addze 12,12 | |||||
stw 11,12(3) | |||||
addi 3,3,16 | |||||
addi 4,4,16 | |||||
bdnz .Lppcasm_mw_LOOP | |||||
.Lppcasm_mw_REM: | |||||
andi. 5,5,0x3 | |||||
beq .Lppcasm_mw_OVER | |||||
lwz 8,0(4) | |||||
mullw 9,6,8 | |||||
mulhwu 10,6,8 | |||||
addc 9,9,12 | |||||
addze 10,10 | |||||
stw 9,0(3) | |||||
addi 12,10,0 | |||||
addi 5,5,-1 | |||||
cmpli 0,0,5,0 | |||||
beq .Lppcasm_mw_OVER | |||||
lwz 8,4(4) | |||||
mullw 9,6,8 | |||||
mulhwu 10,6,8 | |||||
addc 9,9,12 | |||||
addze 10,10 | |||||
stw 9,4(3) | |||||
addi 12,10,0 | |||||
addi 5,5,-1 | |||||
cmpli 0,0,5,0 | |||||
beq .Lppcasm_mw_OVER | |||||
lwz 8,8(4) | |||||
mullw 9,6,8 | |||||
mulhwu 10,6,8 | |||||
addc 9,9,12 | |||||
addze 10,10 | |||||
stw 9,8(3) | |||||
addi 12,10,0 | |||||
.Lppcasm_mw_OVER: | |||||
addi 3,12,0 | |||||
blr | |||||
.long 0 | |||||
.byte 0,12,0x14,0,0,0,4,0 | |||||
.long 0 | |||||
.size bn_mul_words,.-bn_mul_words | |||||
.align 4 | |||||
bn_mul_add_words: | |||||
xor 0,0,0 | |||||
xor 12,12,12 | |||||
rlwinm. 7,5,30,2,31 | |||||
beq .Lppcasm_maw_leftover | |||||
mtctr 7 | |||||
.Lppcasm_maw_mainloop: | |||||
lwz 8,0(4) | |||||
lwz 11,0(3) | |||||
mullw 9,6,8 | |||||
mulhwu 10,6,8 | |||||
addc 9,9,12 | |||||
addze 10,10 | |||||
addc 9,9,11 | |||||
stw 9,0(3) | |||||
lwz 8,4(4) | |||||
lwz 9,4(3) | |||||
mullw 11,6,8 | |||||
mulhwu 12,6,8 | |||||
adde 11,11,10 | |||||
addze 12,12 | |||||
addc 11,11,9 | |||||
stw 11,4(3) | |||||
lwz 8,8(4) | |||||
mullw 9,6,8 | |||||
lwz 11,8(3) | |||||
mulhwu 10,6,8 | |||||
adde 9,9,12 | |||||
addze 10,10 | |||||
addc 9,9,11 | |||||
stw 9,8(3) | |||||
lwz 8,12(4) | |||||
mullw 11,6,8 | |||||
lwz 9,12(3) | |||||
mulhwu 12,6,8 | |||||
adde 11,11,10 | |||||
addze 12,12 | |||||
addc 11,11,9 | |||||
addze 12,12 | |||||
stw 11,12(3) | |||||
addi 3,3,16 | |||||
addi 4,4,16 | |||||
bdnz .Lppcasm_maw_mainloop | |||||
.Lppcasm_maw_leftover: | |||||
andi. 5,5,0x3 | |||||
beq .Lppcasm_maw_adios | |||||
addi 3,3,-4 | |||||
addi 4,4,-4 | |||||
mtctr 5 | |||||
lwzu 8,4(4) | |||||
mullw 9,6,8 | |||||
mulhwu 10,6,8 | |||||
lwzu 11,4(3) | |||||
addc 9,9,11 | |||||
addze 10,10 | |||||
addc 9,9,12 | |||||
addze 12,10 | |||||
stw 9,0(3) | |||||
bdz .Lppcasm_maw_adios | |||||
lwzu 8,4(4) | |||||
mullw 9,6,8 | |||||
mulhwu 10,6,8 | |||||
lwzu 11,4(3) | |||||
addc 9,9,11 | |||||
addze 10,10 | |||||
addc 9,9,12 | |||||
addze 12,10 | |||||
stw 9,0(3) | |||||
bdz .Lppcasm_maw_adios | |||||
lwzu 8,4(4) | |||||
mullw 9,6,8 | |||||
mulhwu 10,6,8 | |||||
lwzu 11,4(3) | |||||
addc 9,9,11 | |||||
addze 10,10 | |||||
addc 9,9,12 | |||||
addze 12,10 | |||||
stw 9,0(3) | |||||
.Lppcasm_maw_adios: | |||||
addi 3,12,0 | |||||
blr | |||||
.long 0 | |||||
.byte 0,12,0x14,0,0,0,4,0 | |||||
.long 0 | |||||
.size bn_mul_add_words,.-bn_mul_add_words | |||||
.align 4 |