diff options
| author | jsing <> | 2025-08-30 07:54:27 +0000 |
|---|---|---|
| committer | jsing <> | 2025-08-30 07:54:27 +0000 |
| commit | 694b88dc8ad458db9997e90128806a423fec09db (patch) | |
| tree | b32cfc481059f60610a60af1e8974af46557ef41 /src/lib/libcrypto/bn/asm | |
| parent | 3adccdb355e2f651255227b11a6324730cb85e48 (diff) | |
| download | openbsd-694b88dc8ad458db9997e90128806a423fec09db.tar.gz openbsd-694b88dc8ad458db9997e90128806a423fec09db.tar.bz2 openbsd-694b88dc8ad458db9997e90128806a423fec09db.zip | |
Rename bn_mul_words()/bn_mul_add_words().
Most bn_.*_words() functions operate on two word arrays, however
bn_mul_words() and bn_mul_add_words() operate on one word array and
multiply by a single word. Rename these to bn_mulw_words() and
bn_mulw_add_words() to reflect this, following naming scheme that we use
for primitives.
This frees up bn_mul_words() to actually be used for multiplying two word
arrays. Rename bn_mul_normal() to bn_mul_words(), which will then become
one of the possible assembly integration points.
ok tb@
Diffstat (limited to 'src/lib/libcrypto/bn/asm')
| -rw-r--r-- | src/lib/libcrypto/bn/asm/bn-586.pl | 8 | ||||
| -rw-r--r-- | src/lib/libcrypto/bn/asm/mips.pl | 64 | ||||
| -rw-r--r-- | src/lib/libcrypto/bn/asm/ppc.pl | 20 |
3 files changed, 46 insertions, 46 deletions
diff --git a/src/lib/libcrypto/bn/asm/bn-586.pl b/src/lib/libcrypto/bn/asm/bn-586.pl index 19a1afdbbe..7f550b3b7c 100644 --- a/src/lib/libcrypto/bn/asm/bn-586.pl +++ b/src/lib/libcrypto/bn/asm/bn-586.pl | |||
| @@ -10,8 +10,8 @@ $sse2=1; | |||
| 10 | 10 | ||
| 11 | &external_label("OPENSSL_ia32cap_P") if ($sse2); | 11 | &external_label("OPENSSL_ia32cap_P") if ($sse2); |
| 12 | 12 | ||
| 13 | &bn_mul_add_words("bn_mul_add_words"); | 13 | &bn_mulw_add_words("bn_mulw_add_words"); |
| 14 | &bn_mul_words("bn_mul_words"); | 14 | &bn_mulw_words("bn_mulw_words"); |
| 15 | &bn_sqr_words("bn_sqr_words"); | 15 | &bn_sqr_words("bn_sqr_words"); |
| 16 | &bn_div_words("bn_div_words"); | 16 | &bn_div_words("bn_div_words"); |
| 17 | &bn_add_words("bn_add_words"); | 17 | &bn_add_words("bn_add_words"); |
| @@ -19,7 +19,7 @@ $sse2=1; | |||
| 19 | 19 | ||
| 20 | &asm_finish(); | 20 | &asm_finish(); |
| 21 | 21 | ||
| 22 | sub bn_mul_add_words | 22 | sub bn_mulw_add_words |
| 23 | { | 23 | { |
| 24 | local($name)=@_; | 24 | local($name)=@_; |
| 25 | 25 | ||
| @@ -206,7 +206,7 @@ sub bn_mul_add_words | |||
| 206 | &function_end($name); | 206 | &function_end($name); |
| 207 | } | 207 | } |
| 208 | 208 | ||
| 209 | sub bn_mul_words | 209 | sub bn_mulw_words |
| 210 | { | 210 | { |
| 211 | local($name)=@_; | 211 | local($name)=@_; |
| 212 | 212 | ||
diff --git a/src/lib/libcrypto/bn/asm/mips.pl b/src/lib/libcrypto/bn/asm/mips.pl index 02d43e15b0..378af371e7 100644 --- a/src/lib/libcrypto/bn/asm/mips.pl +++ b/src/lib/libcrypto/bn/asm/mips.pl | |||
| @@ -110,19 +110,19 @@ $code.=<<___; | |||
| 110 | .set noat | 110 | .set noat |
| 111 | 111 | ||
| 112 | .align 5 | 112 | .align 5 |
| 113 | .globl bn_mul_add_words | 113 | .globl bn_mulw_add_words |
| 114 | .ent bn_mul_add_words | 114 | .ent bn_mulw_add_words |
| 115 | bn_mul_add_words: | 115 | bn_mulw_add_words: |
| 116 | .set noreorder | 116 | .set noreorder |
| 117 | bgtz $a2,bn_mul_add_words_internal | 117 | bgtz $a2,bn_mulw_add_words_internal |
| 118 | move $v0,$zero | 118 | move $v0,$zero |
| 119 | jr $ra | 119 | jr $ra |
| 120 | move $a0,$v0 | 120 | move $a0,$v0 |
| 121 | .end bn_mul_add_words | 121 | .end bn_mulw_add_words |
| 122 | 122 | ||
| 123 | .align 5 | 123 | .align 5 |
| 124 | .ent bn_mul_add_words_internal | 124 | .ent bn_mulw_add_words_internal |
| 125 | bn_mul_add_words_internal: | 125 | bn_mulw_add_words_internal: |
| 126 | ___ | 126 | ___ |
| 127 | $code.=<<___ if ($flavour =~ /nubi/i); | 127 | $code.=<<___ if ($flavour =~ /nubi/i); |
| 128 | .frame $sp,6*$SZREG,$ra | 128 | .frame $sp,6*$SZREG,$ra |
| @@ -140,9 +140,9 @@ $code.=<<___; | |||
| 140 | .set reorder | 140 | .set reorder |
| 141 | li $minus4,-4 | 141 | li $minus4,-4 |
| 142 | and $ta0,$a2,$minus4 | 142 | and $ta0,$a2,$minus4 |
| 143 | beqz $ta0,.L_bn_mul_add_words_tail | 143 | beqz $ta0,.L_bn_mulw_add_words_tail |
| 144 | 144 | ||
| 145 | .L_bn_mul_add_words_loop: | 145 | .L_bn_mulw_add_words_loop: |
| 146 | $LD $t0,0($a1) | 146 | $LD $t0,0($a1) |
| 147 | $MULTU $t0,$a3 | 147 | $MULTU $t0,$a3 |
| 148 | $LD $t1,0($a0) | 148 | $LD $t1,0($a0) |
| @@ -201,13 +201,13 @@ $code.=<<___; | |||
| 201 | sltu $at,$ta3,$at | 201 | sltu $at,$ta3,$at |
| 202 | $ST $ta3,-$BNSZ($a0) | 202 | $ST $ta3,-$BNSZ($a0) |
| 203 | .set noreorder | 203 | .set noreorder |
| 204 | bgtz $ta0,.L_bn_mul_add_words_loop | 204 | bgtz $ta0,.L_bn_mulw_add_words_loop |
| 205 | $ADDU $v0,$at | 205 | $ADDU $v0,$at |
| 206 | 206 | ||
| 207 | beqz $a2,.L_bn_mul_add_words_return | 207 | beqz $a2,.L_bn_mulw_add_words_return |
| 208 | nop | 208 | nop |
| 209 | 209 | ||
| 210 | .L_bn_mul_add_words_tail: | 210 | .L_bn_mulw_add_words_tail: |
| 211 | .set reorder | 211 | .set reorder |
| 212 | $LD $t0,0($a1) | 212 | $LD $t0,0($a1) |
| 213 | $MULTU $t0,$a3 | 213 | $MULTU $t0,$a3 |
| @@ -222,7 +222,7 @@ $code.=<<___; | |||
| 222 | sltu $at,$t1,$at | 222 | sltu $at,$t1,$at |
| 223 | $ST $t1,0($a0) | 223 | $ST $t1,0($a0) |
| 224 | $ADDU $v0,$at | 224 | $ADDU $v0,$at |
| 225 | beqz $a2,.L_bn_mul_add_words_return | 225 | beqz $a2,.L_bn_mulw_add_words_return |
| 226 | 226 | ||
| 227 | $LD $t0,$BNSZ($a1) | 227 | $LD $t0,$BNSZ($a1) |
| 228 | $MULTU $t0,$a3 | 228 | $MULTU $t0,$a3 |
| @@ -237,7 +237,7 @@ $code.=<<___; | |||
| 237 | sltu $at,$t1,$at | 237 | sltu $at,$t1,$at |
| 238 | $ST $t1,$BNSZ($a0) | 238 | $ST $t1,$BNSZ($a0) |
| 239 | $ADDU $v0,$at | 239 | $ADDU $v0,$at |
| 240 | beqz $a2,.L_bn_mul_add_words_return | 240 | beqz $a2,.L_bn_mulw_add_words_return |
| 241 | 241 | ||
| 242 | $LD $t0,2*$BNSZ($a1) | 242 | $LD $t0,2*$BNSZ($a1) |
| 243 | $MULTU $t0,$a3 | 243 | $MULTU $t0,$a3 |
| @@ -252,7 +252,7 @@ $code.=<<___; | |||
| 252 | $ST $t1,2*$BNSZ($a0) | 252 | $ST $t1,2*$BNSZ($a0) |
| 253 | $ADDU $v0,$at | 253 | $ADDU $v0,$at |
| 254 | 254 | ||
| 255 | .L_bn_mul_add_words_return: | 255 | .L_bn_mulw_add_words_return: |
| 256 | .set noreorder | 256 | .set noreorder |
| 257 | ___ | 257 | ___ |
| 258 | $code.=<<___ if ($flavour =~ /nubi/i); | 258 | $code.=<<___ if ($flavour =~ /nubi/i); |
| @@ -266,22 +266,22 @@ ___ | |||
| 266 | $code.=<<___; | 266 | $code.=<<___; |
| 267 | jr $ra | 267 | jr $ra |
| 268 | move $a0,$v0 | 268 | move $a0,$v0 |
| 269 | .end bn_mul_add_words_internal | 269 | .end bn_mulw_add_words_internal |
| 270 | 270 | ||
| 271 | .align 5 | 271 | .align 5 |
| 272 | .globl bn_mul_words | 272 | .globl bn_mulw_words |
| 273 | .ent bn_mul_words | 273 | .ent bn_mulw_words |
| 274 | bn_mul_words: | 274 | bn_mulw_words: |
| 275 | .set noreorder | 275 | .set noreorder |
| 276 | bgtz $a2,bn_mul_words_internal | 276 | bgtz $a2,bn_mulw_words_internal |
| 277 | move $v0,$zero | 277 | move $v0,$zero |
| 278 | jr $ra | 278 | jr $ra |
| 279 | move $a0,$v0 | 279 | move $a0,$v0 |
| 280 | .end bn_mul_words | 280 | .end bn_mulw_words |
| 281 | 281 | ||
| 282 | .align 5 | 282 | .align 5 |
| 283 | .ent bn_mul_words_internal | 283 | .ent bn_mulw_words_internal |
| 284 | bn_mul_words_internal: | 284 | bn_mulw_words_internal: |
| 285 | ___ | 285 | ___ |
| 286 | $code.=<<___ if ($flavour =~ /nubi/i); | 286 | $code.=<<___ if ($flavour =~ /nubi/i); |
| 287 | .frame $sp,6*$SZREG,$ra | 287 | .frame $sp,6*$SZREG,$ra |
| @@ -299,9 +299,9 @@ $code.=<<___; | |||
| 299 | .set reorder | 299 | .set reorder |
| 300 | li $minus4,-4 | 300 | li $minus4,-4 |
| 301 | and $ta0,$a2,$minus4 | 301 | and $ta0,$a2,$minus4 |
| 302 | beqz $ta0,.L_bn_mul_words_tail | 302 | beqz $ta0,.L_bn_mulw_words_tail |
| 303 | 303 | ||
| 304 | .L_bn_mul_words_loop: | 304 | .L_bn_mulw_words_loop: |
| 305 | $LD $t0,0($a1) | 305 | $LD $t0,0($a1) |
| 306 | $MULTU $t0,$a3 | 306 | $MULTU $t0,$a3 |
| 307 | $LD $t2,$BNSZ($a1) | 307 | $LD $t2,$BNSZ($a1) |
| @@ -341,13 +341,13 @@ $code.=<<___; | |||
| 341 | sltu $ta3,$v0,$at | 341 | sltu $ta3,$v0,$at |
| 342 | $ST $v0,-$BNSZ($a0) | 342 | $ST $v0,-$BNSZ($a0) |
| 343 | .set noreorder | 343 | .set noreorder |
| 344 | bgtz $ta0,.L_bn_mul_words_loop | 344 | bgtz $ta0,.L_bn_mulw_words_loop |
| 345 | $ADDU $v0,$ta3,$ta2 | 345 | $ADDU $v0,$ta3,$ta2 |
| 346 | 346 | ||
| 347 | beqz $a2,.L_bn_mul_words_return | 347 | beqz $a2,.L_bn_mulw_words_return |
| 348 | nop | 348 | nop |
| 349 | 349 | ||
| 350 | .L_bn_mul_words_tail: | 350 | .L_bn_mulw_words_tail: |
| 351 | .set reorder | 351 | .set reorder |
| 352 | $LD $t0,0($a1) | 352 | $LD $t0,0($a1) |
| 353 | $MULTU $t0,$a3 | 353 | $MULTU $t0,$a3 |
| @@ -358,7 +358,7 @@ $code.=<<___; | |||
| 358 | sltu $t1,$v0,$at | 358 | sltu $t1,$v0,$at |
| 359 | $ST $v0,0($a0) | 359 | $ST $v0,0($a0) |
| 360 | $ADDU $v0,$t1,$t0 | 360 | $ADDU $v0,$t1,$t0 |
| 361 | beqz $a2,.L_bn_mul_words_return | 361 | beqz $a2,.L_bn_mulw_words_return |
| 362 | 362 | ||
| 363 | $LD $t0,$BNSZ($a1) | 363 | $LD $t0,$BNSZ($a1) |
| 364 | $MULTU $t0,$a3 | 364 | $MULTU $t0,$a3 |
| @@ -369,7 +369,7 @@ $code.=<<___; | |||
| 369 | sltu $t1,$v0,$at | 369 | sltu $t1,$v0,$at |
| 370 | $ST $v0,$BNSZ($a0) | 370 | $ST $v0,$BNSZ($a0) |
| 371 | $ADDU $v0,$t1,$t0 | 371 | $ADDU $v0,$t1,$t0 |
| 372 | beqz $a2,.L_bn_mul_words_return | 372 | beqz $a2,.L_bn_mulw_words_return |
| 373 | 373 | ||
| 374 | $LD $t0,2*$BNSZ($a1) | 374 | $LD $t0,2*$BNSZ($a1) |
| 375 | $MULTU $t0,$a3 | 375 | $MULTU $t0,$a3 |
| @@ -380,7 +380,7 @@ $code.=<<___; | |||
| 380 | $ST $v0,2*$BNSZ($a0) | 380 | $ST $v0,2*$BNSZ($a0) |
| 381 | $ADDU $v0,$t1,$t0 | 381 | $ADDU $v0,$t1,$t0 |
| 382 | 382 | ||
| 383 | .L_bn_mul_words_return: | 383 | .L_bn_mulw_words_return: |
| 384 | .set noreorder | 384 | .set noreorder |
| 385 | ___ | 385 | ___ |
| 386 | $code.=<<___ if ($flavour =~ /nubi/i); | 386 | $code.=<<___ if ($flavour =~ /nubi/i); |
| @@ -394,7 +394,7 @@ ___ | |||
| 394 | $code.=<<___; | 394 | $code.=<<___; |
| 395 | jr $ra | 395 | jr $ra |
| 396 | move $a0,$v0 | 396 | move $a0,$v0 |
| 397 | .end bn_mul_words_internal | 397 | .end bn_mulw_words_internal |
| 398 | 398 | ||
| 399 | .align 5 | 399 | .align 5 |
| 400 | .globl bn_sqr_words | 400 | .globl bn_sqr_words |
diff --git a/src/lib/libcrypto/bn/asm/ppc.pl b/src/lib/libcrypto/bn/asm/ppc.pl index c9b7f9477d..547baa111c 100644 --- a/src/lib/libcrypto/bn/asm/ppc.pl +++ b/src/lib/libcrypto/bn/asm/ppc.pl | |||
| @@ -205,8 +205,8 @@ $data=<<EOF; | |||
| 205 | # bn_add_words | 205 | # bn_add_words |
| 206 | # bn_div_words | 206 | # bn_div_words |
| 207 | # bn_sqr_words | 207 | # bn_sqr_words |
| 208 | # bn_mul_words | 208 | # bn_mulw_words |
| 209 | # bn_mul_add_words | 209 | # bn_mulw_add_words |
| 210 | # | 210 | # |
| 211 | # NOTE: It is possible to optimize this code more for | 211 | # NOTE: It is possible to optimize this code more for |
| 212 | # specific PowerPC or Power architectures. On the Northstar | 212 | # specific PowerPC or Power architectures. On the Northstar |
| @@ -249,8 +249,8 @@ $data=<<EOF; | |||
| 249 | .globl .bn_add_words | 249 | .globl .bn_add_words |
| 250 | .globl .bn_div_words | 250 | .globl .bn_div_words |
| 251 | .globl .bn_sqr_words | 251 | .globl .bn_sqr_words |
| 252 | .globl .bn_mul_words | 252 | .globl .bn_mulw_words |
| 253 | .globl .bn_mul_add_words | 253 | .globl .bn_mulw_add_words |
| 254 | 254 | ||
| 255 | # .text section | 255 | # .text section |
| 256 | 256 | ||
| @@ -1740,15 +1740,15 @@ Lppcasm_sqr_adios: | |||
| 1740 | 1740 | ||
| 1741 | # | 1741 | # |
| 1742 | # NOTE: The following label name should be changed to | 1742 | # NOTE: The following label name should be changed to |
| 1743 | # "bn_mul_words" i.e. remove the first dot | 1743 | # "bn_mulw_words" i.e. remove the first dot |
| 1744 | # for the gcc compiler. This should be automatically | 1744 | # for the gcc compiler. This should be automatically |
| 1745 | # done in the build | 1745 | # done in the build |
| 1746 | # | 1746 | # |
| 1747 | 1747 | ||
| 1748 | .align 4 | 1748 | .align 4 |
| 1749 | .bn_mul_words: | 1749 | .bn_mulw_words: |
| 1750 | # | 1750 | # |
| 1751 | # BN_ULONG bn_mul_words(BN_ULONG *rp, BN_ULONG *ap, int num, BN_ULONG w) | 1751 | # BN_ULONG bn_mulw_words(BN_ULONG *rp, BN_ULONG *ap, int num, BN_ULONG w) |
| 1752 | # | 1752 | # |
| 1753 | # r3 = rp | 1753 | # r3 = rp |
| 1754 | # r4 = ap | 1754 | # r4 = ap |
| @@ -1842,15 +1842,15 @@ Lppcasm_mw_OVER: | |||
| 1842 | 1842 | ||
| 1843 | # | 1843 | # |
| 1844 | # NOTE: The following label name should be changed to | 1844 | # NOTE: The following label name should be changed to |
| 1845 | # "bn_mul_add_words" i.e. remove the first dot | 1845 | # "bn_mulw_add_words" i.e. remove the first dot |
| 1846 | # for the gcc compiler. This should be automatically | 1846 | # for the gcc compiler. This should be automatically |
| 1847 | # done in the build | 1847 | # done in the build |
| 1848 | # | 1848 | # |
| 1849 | 1849 | ||
| 1850 | .align 4 | 1850 | .align 4 |
| 1851 | .bn_mul_add_words: | 1851 | .bn_mulw_add_words: |
| 1852 | # | 1852 | # |
| 1853 | # BN_ULONG bn_mul_add_words(BN_ULONG *rp, BN_ULONG *ap, int num, BN_ULONG w) | 1853 | # BN_ULONG bn_mulw_add_words(BN_ULONG *rp, BN_ULONG *ap, int num, BN_ULONG w) |
| 1854 | # | 1854 | # |
| 1855 | # r3 = rp | 1855 | # r3 = rp |
| 1856 | # r4 = ap | 1856 | # r4 = ap |
