mirror of
https://github.com/openssl/openssl.git
synced 2024-12-03 05:41:46 +08:00
501 lines
9.6 KiB
Plaintext
501 lines
9.6 KiB
Plaintext
.text
|
|
.align 3
|
|
.globl bn_sqr_comba8
|
|
.ent bn_sqr_comba8
|
|
bn_sqr_comba8:
|
|
bn_sqr_comba8..ng:
|
|
.frame $30,0,$26,0
|
|
.prologue 0
|
|
|
|
ldq $0, 0($17)
|
|
ldq $1, 8($17)
|
|
ldq $2, 16($17)
|
|
ldq $3, 24($17)
|
|
ldq $4, 32($17)
|
|
ldq $5, 40($17)
|
|
ldq $6, 48($17)
|
|
ldq $7, 56($17)
|
|
bis $31, $31, $23
|
|
mulq $0, $0, $8
|
|
umulh $0, $0, $22
|
|
stq $8, 0($16)
|
|
bis $31, $31, $8
|
|
mulq $1, $0, $24
|
|
umulh $1, $0, $25
|
|
cmplt $24, $31, $27
|
|
cmplt $25, $31, $28
|
|
addq $24, $24, $24
|
|
addq $25, $25, $25
|
|
addq $25, $27, $25
|
|
addq $8, $28, $8
|
|
addq $22, $24, $22
|
|
addq $23, $25, $23
|
|
cmpult $22, $24, $21
|
|
cmpult $23, $25, $20
|
|
addq $23, $21, $23
|
|
addq $8, $20, $8
|
|
stq $22, 8($16)
|
|
bis $31, $31, $22
|
|
mulq $1, $1, $19
|
|
umulh $1, $1, $18
|
|
addq $23, $19, $23
|
|
addq $8, $18, $8
|
|
cmpult $23, $19, $17
|
|
cmpult $8, $18, $27
|
|
addq $8, $17, $8
|
|
addq $22, $27, $22
|
|
mulq $2, $0, $28
|
|
umulh $2, $0, $24
|
|
cmplt $28, $31, $25
|
|
cmplt $24, $31, $21
|
|
addq $28, $28, $28
|
|
addq $24, $24, $24
|
|
addq $24, $25, $24
|
|
addq $22, $21, $22
|
|
addq $23, $28, $23
|
|
addq $8, $24, $8
|
|
cmpult $23, $28, $20
|
|
cmpult $8, $24, $19
|
|
addq $8, $20, $8
|
|
addq $22, $19, $22
|
|
stq $23, 16($16)
|
|
bis $31, $31, $23
|
|
mulq $2, $1, $18
|
|
umulh $2, $1, $17
|
|
cmplt $18, $31, $27
|
|
cmplt $17, $31, $25
|
|
addq $18, $18, $18
|
|
addq $17, $17, $17
|
|
addq $17, $27, $17
|
|
addq $23, $25, $23
|
|
addq $8, $18, $8
|
|
addq $22, $17, $22
|
|
cmpult $8, $18, $21
|
|
cmpult $22, $17, $28
|
|
addq $22, $21, $22
|
|
addq $23, $28, $23
|
|
mulq $3, $0, $24
|
|
umulh $3, $0, $20
|
|
cmplt $24, $31, $19
|
|
cmplt $20, $31, $27
|
|
addq $24, $24, $24
|
|
addq $20, $20, $20
|
|
addq $20, $19, $20
|
|
addq $23, $27, $23
|
|
addq $8, $24, $8
|
|
addq $22, $20, $22
|
|
cmpult $8, $24, $25
|
|
cmpult $22, $20, $18
|
|
addq $22, $25, $22
|
|
addq $23, $18, $23
|
|
stq $8, 24($16)
|
|
bis $31, $31, $8
|
|
mulq $2, $2, $17
|
|
umulh $2, $2, $21
|
|
addq $22, $17, $22
|
|
addq $23, $21, $23
|
|
cmpult $22, $17, $28
|
|
cmpult $23, $21, $19
|
|
addq $23, $28, $23
|
|
addq $8, $19, $8
|
|
mulq $3, $1, $27
|
|
umulh $3, $1, $24
|
|
cmplt $27, $31, $20
|
|
cmplt $24, $31, $25
|
|
addq $27, $27, $27
|
|
addq $24, $24, $24
|
|
addq $24, $20, $24
|
|
addq $8, $25, $8
|
|
addq $22, $27, $22
|
|
addq $23, $24, $23
|
|
cmpult $22, $27, $18
|
|
cmpult $23, $24, $17
|
|
addq $23, $18, $23
|
|
addq $8, $17, $8
|
|
mulq $4, $0, $21
|
|
umulh $4, $0, $28
|
|
cmplt $21, $31, $19
|
|
cmplt $28, $31, $20
|
|
addq $21, $21, $21
|
|
addq $28, $28, $28
|
|
addq $28, $19, $28
|
|
addq $8, $20, $8
|
|
addq $22, $21, $22
|
|
addq $23, $28, $23
|
|
cmpult $22, $21, $25
|
|
cmpult $23, $28, $27
|
|
addq $23, $25, $23
|
|
addq $8, $27, $8
|
|
stq $22, 32($16)
|
|
bis $31, $31, $22
|
|
mulq $3, $2, $24
|
|
umulh $3, $2, $18
|
|
cmplt $24, $31, $17
|
|
cmplt $18, $31, $19
|
|
addq $24, $24, $24
|
|
addq $18, $18, $18
|
|
addq $18, $17, $18
|
|
addq $22, $19, $22
|
|
addq $23, $24, $23
|
|
addq $8, $18, $8
|
|
cmpult $23, $24, $20
|
|
cmpult $8, $18, $21
|
|
addq $8, $20, $8
|
|
addq $22, $21, $22
|
|
mulq $4, $1, $28
|
|
umulh $4, $1, $25
|
|
cmplt $28, $31, $27
|
|
cmplt $25, $31, $17
|
|
addq $28, $28, $28
|
|
addq $25, $25, $25
|
|
addq $25, $27, $25
|
|
addq $22, $17, $22
|
|
addq $23, $28, $23
|
|
addq $8, $25, $8
|
|
cmpult $23, $28, $19
|
|
cmpult $8, $25, $24
|
|
addq $8, $19, $8
|
|
addq $22, $24, $22
|
|
mulq $5, $0, $18
|
|
umulh $5, $0, $20
|
|
cmplt $18, $31, $21
|
|
cmplt $20, $31, $27
|
|
addq $18, $18, $18
|
|
addq $20, $20, $20
|
|
addq $20, $21, $20
|
|
addq $22, $27, $22
|
|
addq $23, $18, $23
|
|
addq $8, $20, $8
|
|
cmpult $23, $18, $17
|
|
cmpult $8, $20, $28
|
|
addq $8, $17, $8
|
|
addq $22, $28, $22
|
|
stq $23, 40($16)
|
|
bis $31, $31, $23
|
|
mulq $3, $3, $25
|
|
umulh $3, $3, $19
|
|
addq $8, $25, $8
|
|
addq $22, $19, $22
|
|
cmpult $8, $25, $24
|
|
cmpult $22, $19, $21
|
|
addq $22, $24, $22
|
|
addq $23, $21, $23
|
|
mulq $4, $2, $27
|
|
umulh $4, $2, $18
|
|
cmplt $27, $31, $20
|
|
cmplt $18, $31, $17
|
|
addq $27, $27, $27
|
|
addq $18, $18, $18
|
|
addq $18, $20, $18
|
|
addq $23, $17, $23
|
|
addq $8, $27, $8
|
|
addq $22, $18, $22
|
|
cmpult $8, $27, $28
|
|
cmpult $22, $18, $25
|
|
addq $22, $28, $22
|
|
addq $23, $25, $23
|
|
mulq $5, $1, $19
|
|
umulh $5, $1, $24
|
|
cmplt $19, $31, $21
|
|
cmplt $24, $31, $20
|
|
addq $19, $19, $19
|
|
addq $24, $24, $24
|
|
addq $24, $21, $24
|
|
addq $23, $20, $23
|
|
addq $8, $19, $8
|
|
addq $22, $24, $22
|
|
cmpult $8, $19, $17
|
|
cmpult $22, $24, $27
|
|
addq $22, $17, $22
|
|
addq $23, $27, $23
|
|
mulq $6, $0, $18
|
|
umulh $6, $0, $28
|
|
cmplt $18, $31, $25
|
|
cmplt $28, $31, $21
|
|
addq $18, $18, $18
|
|
addq $28, $28, $28
|
|
addq $28, $25, $28
|
|
addq $23, $21, $23
|
|
addq $8, $18, $8
|
|
addq $22, $28, $22
|
|
cmpult $8, $18, $20
|
|
cmpult $22, $28, $19
|
|
addq $22, $20, $22
|
|
addq $23, $19, $23
|
|
stq $8, 48($16)
|
|
bis $31, $31, $8
|
|
mulq $4, $3, $24
|
|
umulh $4, $3, $17
|
|
cmplt $24, $31, $27
|
|
cmplt $17, $31, $25
|
|
addq $24, $24, $24
|
|
addq $17, $17, $17
|
|
addq $17, $27, $17
|
|
addq $8, $25, $8
|
|
addq $22, $24, $22
|
|
addq $23, $17, $23
|
|
cmpult $22, $24, $21
|
|
cmpult $23, $17, $18
|
|
addq $23, $21, $23
|
|
addq $8, $18, $8
|
|
mulq $5, $2, $28
|
|
umulh $5, $2, $20
|
|
cmplt $28, $31, $19
|
|
cmplt $20, $31, $27
|
|
addq $28, $28, $28
|
|
addq $20, $20, $20
|
|
addq $20, $19, $20
|
|
addq $8, $27, $8
|
|
addq $22, $28, $22
|
|
addq $23, $20, $23
|
|
cmpult $22, $28, $25
|
|
cmpult $23, $20, $24
|
|
addq $23, $25, $23
|
|
addq $8, $24, $8
|
|
mulq $6, $1, $17
|
|
umulh $6, $1, $21
|
|
cmplt $17, $31, $18
|
|
cmplt $21, $31, $19
|
|
addq $17, $17, $17
|
|
addq $21, $21, $21
|
|
addq $21, $18, $21
|
|
addq $8, $19, $8
|
|
addq $22, $17, $22
|
|
addq $23, $21, $23
|
|
cmpult $22, $17, $27
|
|
cmpult $23, $21, $28
|
|
addq $23, $27, $23
|
|
addq $8, $28, $8
|
|
mulq $7, $0, $20
|
|
umulh $7, $0, $25
|
|
cmplt $20, $31, $24
|
|
cmplt $25, $31, $18
|
|
addq $20, $20, $20
|
|
addq $25, $25, $25
|
|
addq $25, $24, $25
|
|
addq $8, $18, $8
|
|
addq $22, $20, $22
|
|
addq $23, $25, $23
|
|
cmpult $22, $20, $19
|
|
cmpult $23, $25, $17
|
|
addq $23, $19, $23
|
|
addq $8, $17, $8
|
|
stq $22, 56($16)
|
|
bis $31, $31, $22
|
|
mulq $4, $4, $21
|
|
umulh $4, $4, $27
|
|
addq $23, $21, $23
|
|
addq $8, $27, $8
|
|
cmpult $23, $21, $28
|
|
cmpult $8, $27, $24
|
|
addq $8, $28, $8
|
|
addq $22, $24, $22
|
|
mulq $5, $3, $18
|
|
umulh $5, $3, $20
|
|
cmplt $18, $31, $25
|
|
cmplt $20, $31, $19
|
|
addq $18, $18, $18
|
|
addq $20, $20, $20
|
|
addq $20, $25, $20
|
|
addq $22, $19, $22
|
|
addq $23, $18, $23
|
|
addq $8, $20, $8
|
|
cmpult $23, $18, $17
|
|
cmpult $8, $20, $21
|
|
addq $8, $17, $8
|
|
addq $22, $21, $22
|
|
mulq $6, $2, $27
|
|
umulh $6, $2, $28
|
|
cmplt $27, $31, $24
|
|
cmplt $28, $31, $25
|
|
addq $27, $27, $27
|
|
addq $28, $28, $28
|
|
addq $28, $24, $28
|
|
addq $22, $25, $22
|
|
addq $23, $27, $23
|
|
addq $8, $28, $8
|
|
cmpult $23, $27, $19
|
|
cmpult $8, $28, $18
|
|
addq $8, $19, $8
|
|
addq $22, $18, $22
|
|
mulq $7, $1, $20
|
|
umulh $7, $1, $17
|
|
cmplt $20, $31, $21
|
|
cmplt $17, $31, $24
|
|
addq $20, $20, $20
|
|
addq $17, $17, $17
|
|
addq $17, $21, $17
|
|
addq $22, $24, $22
|
|
addq $23, $20, $23
|
|
addq $8, $17, $8
|
|
cmpult $23, $20, $25
|
|
cmpult $8, $17, $27
|
|
addq $8, $25, $8
|
|
addq $22, $27, $22
|
|
stq $23, 64($16)
|
|
bis $31, $31, $23
|
|
mulq $5, $4, $28
|
|
umulh $5, $4, $19
|
|
cmplt $28, $31, $18
|
|
cmplt $19, $31, $21
|
|
addq $28, $28, $28
|
|
addq $19, $19, $19
|
|
addq $19, $18, $19
|
|
addq $23, $21, $23
|
|
addq $8, $28, $8
|
|
addq $22, $19, $22
|
|
cmpult $8, $28, $24
|
|
cmpult $22, $19, $20
|
|
addq $22, $24, $22
|
|
addq $23, $20, $23
|
|
mulq $6, $3, $17
|
|
umulh $6, $3, $25
|
|
cmplt $17, $31, $27
|
|
cmplt $25, $31, $18
|
|
addq $17, $17, $17
|
|
addq $25, $25, $25
|
|
addq $25, $27, $25
|
|
addq $23, $18, $23
|
|
addq $8, $17, $8
|
|
addq $22, $25, $22
|
|
cmpult $8, $17, $21
|
|
cmpult $22, $25, $28
|
|
addq $22, $21, $22
|
|
addq $23, $28, $23
|
|
mulq $7, $2, $19
|
|
umulh $7, $2, $24
|
|
cmplt $19, $31, $20
|
|
cmplt $24, $31, $27
|
|
addq $19, $19, $19
|
|
addq $24, $24, $24
|
|
addq $24, $20, $24
|
|
addq $23, $27, $23
|
|
addq $8, $19, $8
|
|
addq $22, $24, $22
|
|
cmpult $8, $19, $18
|
|
cmpult $22, $24, $17
|
|
addq $22, $18, $22
|
|
addq $23, $17, $23
|
|
stq $8, 72($16)
|
|
bis $31, $31, $8
|
|
mulq $5, $5, $25
|
|
umulh $5, $5, $21
|
|
addq $22, $25, $22
|
|
addq $23, $21, $23
|
|
cmpult $22, $25, $28
|
|
cmpult $23, $21, $20
|
|
addq $23, $28, $23
|
|
addq $8, $20, $8
|
|
mulq $6, $4, $27
|
|
umulh $6, $4, $19
|
|
cmplt $27, $31, $24
|
|
cmplt $19, $31, $18
|
|
addq $27, $27, $27
|
|
addq $19, $19, $19
|
|
addq $19, $24, $19
|
|
addq $8, $18, $8
|
|
addq $22, $27, $22
|
|
addq $23, $19, $23
|
|
cmpult $22, $27, $17
|
|
cmpult $23, $19, $25
|
|
addq $23, $17, $23
|
|
addq $8, $25, $8
|
|
mulq $7, $3, $21
|
|
umulh $7, $3, $28
|
|
cmplt $21, $31, $20
|
|
cmplt $28, $31, $24
|
|
addq $21, $21, $21
|
|
addq $28, $28, $28
|
|
addq $28, $20, $28
|
|
addq $8, $24, $8
|
|
addq $22, $21, $22
|
|
addq $23, $28, $23
|
|
cmpult $22, $21, $18
|
|
cmpult $23, $28, $27
|
|
addq $23, $18, $23
|
|
addq $8, $27, $8
|
|
stq $22, 80($16)
|
|
bis $31, $31, $22
|
|
mulq $6, $5, $19
|
|
umulh $6, $5, $17
|
|
cmplt $19, $31, $25
|
|
cmplt $17, $31, $20
|
|
addq $19, $19, $19
|
|
addq $17, $17, $17
|
|
addq $17, $25, $17
|
|
addq $22, $20, $22
|
|
addq $23, $19, $23
|
|
addq $8, $17, $8
|
|
cmpult $23, $19, $24
|
|
cmpult $8, $17, $21
|
|
addq $8, $24, $8
|
|
addq $22, $21, $22
|
|
mulq $7, $4, $28
|
|
umulh $7, $4, $18
|
|
cmplt $28, $31, $27
|
|
cmplt $18, $31, $25
|
|
addq $28, $28, $28
|
|
addq $18, $18, $18
|
|
addq $18, $27, $18
|
|
addq $22, $25, $22
|
|
addq $23, $28, $23
|
|
addq $8, $18, $8
|
|
cmpult $23, $28, $20
|
|
cmpult $8, $18, $19
|
|
addq $8, $20, $8
|
|
addq $22, $19, $22
|
|
stq $23, 88($16)
|
|
bis $31, $31, $23
|
|
mulq $6, $6, $17
|
|
umulh $6, $6, $24
|
|
addq $8, $17, $8
|
|
addq $22, $24, $22
|
|
cmpult $8, $17, $21
|
|
cmpult $22, $24, $27
|
|
addq $22, $21, $22
|
|
addq $23, $27, $23
|
|
mulq $7, $5, $25
|
|
umulh $7, $5, $28
|
|
cmplt $25, $31, $18
|
|
cmplt $28, $31, $20
|
|
addq $25, $25, $25
|
|
addq $28, $28, $28
|
|
addq $28, $18, $28
|
|
addq $23, $20, $23
|
|
addq $8, $25, $8
|
|
addq $22, $28, $22
|
|
cmpult $8, $25, $19
|
|
cmpult $22, $28, $17
|
|
addq $22, $19, $22
|
|
addq $23, $17, $23
|
|
stq $8, 96($16)
|
|
bis $31, $31, $8
|
|
mulq $7, $6, $24
|
|
umulh $7, $6, $21
|
|
cmplt $24, $31, $27
|
|
cmplt $21, $31, $18
|
|
addq $24, $24, $24
|
|
addq $21, $21, $21
|
|
addq $21, $27, $21
|
|
addq $8, $18, $8
|
|
addq $22, $24, $22
|
|
addq $23, $21, $23
|
|
cmpult $22, $24, $20
|
|
cmpult $23, $21, $25
|
|
addq $23, $20, $23
|
|
addq $8, $25, $8
|
|
stq $22, 104($16)
|
|
bis $31, $31, $22
|
|
mulq $7, $7, $28
|
|
umulh $7, $7, $19
|
|
addq $23, $28, $23
|
|
addq $8, $19, $8
|
|
cmpult $23, $28, $17
|
|
cmpult $8, $19, $27
|
|
addq $8, $17, $8
|
|
addq $22, $27, $22
|
|
stq $23, 112($16)
|
|
stq $8, 120($16)
|
|
ret $31,($26),1
|
|
.end bn_sqr_comba8
|