| Index: openssl/crypto/bn/asm/mips-mont.S
|
| diff --git a/openssl/crypto/bn/asm/mips-mont.S b/openssl/crypto/bn/asm/mips-mont.S
|
| deleted file mode 100644
|
| index 32ecee55a5dae016e6f497c48302124c41756df6..0000000000000000000000000000000000000000
|
| --- a/openssl/crypto/bn/asm/mips-mont.S
|
| +++ /dev/null
|
| @@ -1,284 +0,0 @@
|
| -.text
|
| -
|
| -.set noat
|
| -.set noreorder
|
| -
|
| -.align 5
|
| -.globl bn_mul_mont
|
| -.ent bn_mul_mont
|
| -bn_mul_mont:
|
| - lw $8,16($29)
|
| - lw $9,20($29)
|
| - slt $1,$9,4
|
| - bnez $1,1f
|
| - li $2,0
|
| - slt $1,$9,17 # on in-order CPU
|
| - bnezl $1,bn_mul_mont_internal
|
| - nop
|
| -1: jr $31
|
| - li $4,0
|
| -.end bn_mul_mont
|
| -
|
| -.align 5
|
| -.ent bn_mul_mont_internal
|
| -bn_mul_mont_internal:
|
| - .frame $30,14*4,$31
|
| - .mask 0x40000000|16711680,-4
|
| - sub $29,14*4
|
| - sw $30,(14-1)*4($29)
|
| - sw $23,(14-2)*4($29)
|
| - sw $22,(14-3)*4($29)
|
| - sw $21,(14-4)*4($29)
|
| - sw $20,(14-5)*4($29)
|
| - sw $19,(14-6)*4($29)
|
| - sw $18,(14-7)*4($29)
|
| - sw $17,(14-8)*4($29)
|
| - sw $16,(14-9)*4($29)
|
| - move $30,$29
|
| -
|
| - .set reorder
|
| - lw $8,0($8)
|
| - lw $13,0($6) # bp[0]
|
| - lw $12,0($5) # ap[0]
|
| - lw $14,0($7) # np[0]
|
| -
|
| - sub $29,2*4 # place for two extra words
|
| - sll $9,2
|
| - li $1,-4096
|
| - sub $29,$9
|
| - and $29,$1
|
| -
|
| - multu $12,$13
|
| - lw $16,4($5)
|
| - lw $18,4($7)
|
| - mflo $10
|
| - mfhi $11
|
| - multu $10,$8
|
| - mflo $23
|
| -
|
| - multu $16,$13
|
| - mflo $16
|
| - mfhi $17
|
| -
|
| - multu $14,$23
|
| - mflo $24
|
| - mfhi $25
|
| - multu $18,$23
|
| - addu $24,$10
|
| - sltu $1,$24,$10
|
| - addu $25,$1
|
| - mflo $18
|
| - mfhi $19
|
| -
|
| - move $15,$29
|
| - li $22,2*4
|
| -.align 4
|
| -.L1st:
|
| - .set noreorder
|
| - add $12,$5,$22
|
| - add $14,$7,$22
|
| - lw $12,($12)
|
| - lw $14,($14)
|
| -
|
| - multu $12,$13
|
| - addu $10,$16,$11
|
| - addu $24,$18,$25
|
| - sltu $1,$10,$11
|
| - sltu $2,$24,$25
|
| - addu $11,$17,$1
|
| - addu $25,$19,$2
|
| - mflo $16
|
| - mfhi $17
|
| -
|
| - addu $24,$10
|
| - sltu $1,$24,$10
|
| - multu $14,$23
|
| - addu $25,$1
|
| - addu $22,4
|
| - sw $24,($15)
|
| - sltu $2,$22,$9
|
| - mflo $18
|
| - mfhi $19
|
| -
|
| - bnez $2,.L1st
|
| - add $15,4
|
| - .set reorder
|
| -
|
| - addu $10,$16,$11
|
| - sltu $1,$10,$11
|
| - addu $11,$17,$1
|
| -
|
| - addu $24,$18,$25
|
| - sltu $2,$24,$25
|
| - addu $25,$19,$2
|
| - addu $24,$10
|
| - sltu $1,$24,$10
|
| - addu $25,$1
|
| -
|
| - sw $24,($15)
|
| -
|
| - addu $25,$11
|
| - sltu $1,$25,$11
|
| - sw $25,4($15)
|
| - sw $1,2*4($15)
|
| -
|
| - li $21,4
|
| -.align 4
|
| -.Louter:
|
| - add $13,$6,$21
|
| - lw $13,($13)
|
| - lw $12,($5)
|
| - lw $16,4($5)
|
| - lw $20,($29)
|
| -
|
| - multu $12,$13
|
| - lw $14,($7)
|
| - lw $18,4($7)
|
| - mflo $10
|
| - mfhi $11
|
| - addu $10,$20
|
| - multu $10,$8
|
| - sltu $1,$10,$20
|
| - addu $11,$1
|
| - mflo $23
|
| -
|
| - multu $16,$13
|
| - mflo $16
|
| - mfhi $17
|
| -
|
| - multu $14,$23
|
| - mflo $24
|
| - mfhi $25
|
| -
|
| - multu $18,$23
|
| - addu $24,$10
|
| - sltu $1,$24,$10
|
| - addu $25,$1
|
| - mflo $18
|
| - mfhi $19
|
| -
|
| - move $15,$29
|
| - li $22,2*4
|
| - lw $20,4($15)
|
| -.align 4
|
| -.Linner:
|
| - .set noreorder
|
| - add $12,$5,$22
|
| - add $14,$7,$22
|
| - lw $12,($12)
|
| - lw $14,($14)
|
| -
|
| - multu $12,$13
|
| - addu $10,$16,$11
|
| - addu $24,$18,$25
|
| - sltu $1,$10,$11
|
| - sltu $2,$24,$25
|
| - addu $11,$17,$1
|
| - addu $25,$19,$2
|
| - mflo $16
|
| - mfhi $17
|
| -
|
| - addu $10,$20
|
| - addu $22,4
|
| - multu $14,$23
|
| - sltu $1,$10,$20
|
| - addu $24,$10
|
| - addu $11,$1
|
| - sltu $2,$24,$10
|
| - lw $20,2*4($15)
|
| - addu $25,$2
|
| - sltu $1,$22,$9
|
| - mflo $18
|
| - mfhi $19
|
| - sw $24,($15)
|
| - bnez $1,.Linner
|
| - add $15,4
|
| - .set reorder
|
| -
|
| - addu $10,$16,$11
|
| - sltu $1,$10,$11
|
| - addu $11,$17,$1
|
| - addu $10,$20
|
| - sltu $2,$10,$20
|
| - addu $11,$2
|
| -
|
| - lw $20,2*4($15)
|
| - addu $24,$18,$25
|
| - sltu $1,$24,$25
|
| - addu $25,$19,$1
|
| - addu $24,$10
|
| - sltu $2,$24,$10
|
| - addu $25,$2
|
| - sw $24,($15)
|
| -
|
| - addu $24,$25,$11
|
| - sltu $25,$24,$11
|
| - addu $24,$20
|
| - sltu $1,$24,$20
|
| - addu $25,$1
|
| - sw $24,4($15)
|
| - sw $25,2*4($15)
|
| -
|
| - addu $21,4
|
| - sltu $2,$21,$9
|
| - bnez $2,.Louter
|
| -
|
| - .set noreorder
|
| - add $20,$29,$9 # &tp[num]
|
| - move $15,$29
|
| - move $5,$29
|
| - li $11,0 # clear borrow bit
|
| -
|
| -.align 4
|
| -.Lsub: lw $10,($15)
|
| - lw $24,($7)
|
| - add $15,4
|
| - add $7,4
|
| - subu $24,$10,$24 # tp[i]-np[i]
|
| - sgtu $1,$24,$10
|
| - subu $10,$24,$11
|
| - sgtu $11,$10,$24
|
| - sw $10,($4)
|
| - or $11,$1
|
| - sltu $1,$15,$20
|
| - bnez $1,.Lsub
|
| - add $4,4
|
| -
|
| - subu $11,$25,$11 # handle upmost overflow bit
|
| - move $15,$29
|
| - sub $4,$9 # restore rp
|
| - not $25,$11
|
| -
|
| - and $5,$11,$29
|
| - and $6,$25,$4
|
| - or $5,$5,$6 # ap=borrow?tp:rp
|
| -
|
| -.align 4
|
| -.Lcopy: lw $12,($5)
|
| - add $5,4
|
| - sw $0,($15)
|
| - add $15,4
|
| - sltu $1,$15,$20
|
| - sw $12,($4)
|
| - bnez $1,.Lcopy
|
| - add $4,4
|
| -
|
| - li $4,1
|
| - li $2,1
|
| -
|
| - .set noreorder
|
| - move $29,$30
|
| - lw $30,(14-1)*4($29)
|
| - lw $23,(14-2)*4($29)
|
| - lw $22,(14-3)*4($29)
|
| - lw $21,(14-4)*4($29)
|
| - lw $20,(14-5)*4($29)
|
| - lw $19,(14-6)*4($29)
|
| - lw $18,(14-7)*4($29)
|
| - lw $17,(14-8)*4($29)
|
| - lw $16,(14-9)*4($29)
|
| - jr $31
|
| - add $29,14*4
|
| -.end bn_mul_mont_internal
|
| -.rdata
|
| -.asciiz "Montgomery Multiplication for MIPS, CRYPTOGAMS by <appro@openssl.org>"
|
|
|