diff options
Diffstat (limited to 'src')
| -rwxr-xr-x | src/lib/libcrypto/sha/asm/sha512-ppc.pl | 25 |
1 files changed, 7 insertions, 18 deletions
diff --git a/src/lib/libcrypto/sha/asm/sha512-ppc.pl b/src/lib/libcrypto/sha/asm/sha512-ppc.pl index 2a7d5a0e8b..b5649299dc 100755 --- a/src/lib/libcrypto/sha/asm/sha512-ppc.pl +++ b/src/lib/libcrypto/sha/asm/sha512-ppc.pl | |||
| @@ -220,8 +220,11 @@ $func: | |||
| 220 | $LD $G,`6*$SZ`($ctx) | 220 | $LD $G,`6*$SZ`($ctx) |
| 221 | $LD $H,`7*$SZ`($ctx) | 221 | $LD $H,`7*$SZ`($ctx) |
| 222 | 222 | ||
| 223 | bl LPICmeup | 223 | bcl 20,31,Lpc |
| 224 | LPICedup: | 224 | Lpc: |
| 225 | mflr $Tbl | ||
| 226 | addis $Tbl,$Tbl,Ltable-Lpc\@ha | ||
| 227 | addi $Tbl,$Tbl,Ltable-Lpc\@l | ||
| 225 | andi. r0,$inp,3 | 228 | andi. r0,$inp,3 |
| 226 | bne Lunaligned | 229 | bne Lunaligned |
| 227 | Laligned: | 230 | Laligned: |
| @@ -377,22 +380,8 @@ $code.=<<___; | |||
| 377 | blr | 380 | blr |
| 378 | .long 0 | 381 | .long 0 |
| 379 | .byte 0,12,0x14,0,0,0,0,0 | 382 | .byte 0,12,0x14,0,0,0,0,0 |
| 380 | ___ | 383 | .rodata |
| 381 | 384 | Ltable: | |
| 382 | # Ugly hack here, because PPC assembler syntax seem to vary too | ||
| 383 | # much from platforms to platform... | ||
| 384 | $code.=<<___; | ||
| 385 | .align 6 | ||
| 386 | LPICmeup: | ||
| 387 | mflr r0 | ||
| 388 | bcl 20,31,\$+4 | ||
| 389 | mflr $Tbl ; vvvvvv "distance" between . and 1st data entry | ||
| 390 | addi $Tbl,$Tbl,`64-8` | ||
| 391 | mtlr r0 | ||
| 392 | blr | ||
| 393 | .long 0 | ||
| 394 | .byte 0,12,0x14,0,0,0,0,0 | ||
| 395 | .space `64-9*4` | ||
| 396 | ___ | 385 | ___ |
| 397 | $code.=<<___ if ($SZ==8); | 386 | $code.=<<___ if ($SZ==8); |
| 398 | .long 0x428a2f98,0xd728ae22,0x71374491,0x23ef65cd | 387 | .long 0x428a2f98,0xd728ae22,0x71374491,0x23ef65cd |
