diff options
Diffstat (limited to 'openssl/crypto/modes/asm')
-rw-r--r-- | openssl/crypto/modes/asm/ghash-alpha.pl | 25 | ||||
-rw-r--r-- | openssl/crypto/modes/asm/ghash-parisc.pl | 1 |
2 files changed, 18 insertions, 8 deletions
diff --git a/openssl/crypto/modes/asm/ghash-alpha.pl b/openssl/crypto/modes/asm/ghash-alpha.pl index 6358b2750..aa3602938 100644 --- a/openssl/crypto/modes/asm/ghash-alpha.pl +++ b/openssl/crypto/modes/asm/ghash-alpha.pl @@ -266,8 +266,8 @@ gcm_gmult_4bit: ldq $Xlo,8($Xi) ldq $Xhi,0($Xi) - br $rem_4bit,.Lpic1 -.Lpic1: lda $rem_4bit,rem_4bit-.Lpic1($rem_4bit) + bsr $t0,picmeup + nop ___ &loop(); @@ -341,8 +341,8 @@ gcm_ghash_4bit: ldq $Xhi,0($Xi) ldq $Xlo,8($Xi) - br $rem_4bit,.Lpic2 -.Lpic2: lda $rem_4bit,rem_4bit-.Lpic2($rem_4bit) + bsr $t0,picmeup + nop .Louter: extql $inhi,$inp,$inhi @@ -436,11 +436,20 @@ $code.=<<___; .end gcm_ghash_4bit .align 4 +.ent picmeup +picmeup: + .frame sp,0,$t0 + .prologue 0 + br $rem_4bit,.Lpic +.Lpic: lda $rem_4bit,12($rem_4bit) + ret ($t0) +.end picmeup + nop rem_4bit: - .quad 0x0000<<48, 0x1C20<<48, 0x3840<<48, 0x2460<<48 - .quad 0x7080<<48, 0x6CA0<<48, 0x48C0<<48, 0x54E0<<48 - .quad 0xE100<<48, 0xFD20<<48, 0xD940<<48, 0xC560<<48 - .quad 0x9180<<48, 0x8DA0<<48, 0xA9C0<<48, 0xB5E0<<48 + .long 0,0x0000<<16, 0,0x1C20<<16, 0,0x3840<<16, 0,0x2460<<16 + .long 0,0x7080<<16, 0,0x6CA0<<16, 0,0x48C0<<16, 0,0x54E0<<16 + .long 0,0xE100<<16, 0,0xFD20<<16, 0,0xD940<<16, 0,0xC560<<16 + .long 0,0x9180<<16, 0,0x8DA0<<16, 0,0xA9C0<<16, 0,0xB5E0<<16 .ascii "GHASH for Alpha, CRYPTOGAMS by <appro\@openssl.org>" .align 4 diff --git a/openssl/crypto/modes/asm/ghash-parisc.pl b/openssl/crypto/modes/asm/ghash-parisc.pl index 8c7454ee9..d5ad96b40 100644 --- a/openssl/crypto/modes/asm/ghash-parisc.pl +++ b/openssl/crypto/modes/asm/ghash-parisc.pl @@ -724,6 +724,7 @@ foreach (split("\n",$code)) { s/cmpb,\*/comb,/; s/,\*/,/; } + s/\bbv\b/bve/ if ($SIZE_T==8); print $_,"\n"; } |