mirror of
https://github.com/openssl/openssl.git
synced 2025-01-30 14:01:55 +08:00
keccak1600-armv4.pl: Further fix for the DigestSqueeze() support
Reviewed-by: Matt Caswell <matt@openssl.org> Reviewed-by: Shane Lontis <shane.lontis@oracle.com> Reviewed-by: Hugo Landau <hlandau@openssl.org> (Merged from https://github.com/openssl/openssl/pull/22750)
This commit is contained in:
parent
0414f89d5c
commit
69d4d5282f
@ -933,7 +933,7 @@ SHA3_absorb:
|
||||
___
|
||||
}
|
||||
|
||||
{ my ($out,$len,$A_flat,$bsz,$next) = map("r$_", (4,5,10,12,11));
|
||||
{ my ($out,$len,$A_flat,$bsz,$next) = map("r$_", (4,5,10,12,0));
|
||||
|
||||
|
||||
# void SHA3_squeeze(uint64_t A[5][5],
|
||||
@ -947,13 +947,13 @@ $code.=<<___;
|
||||
.type SHA3_squeeze,%function
|
||||
.align 5
|
||||
SHA3_squeeze:
|
||||
stmdb sp!,{r0,r3-r11,lr} @ push 11 registers
|
||||
stmdb sp!,{r0,r3-r10,lr}
|
||||
|
||||
mov $A_flat,r0
|
||||
mov $out,r1
|
||||
mov $len,r2
|
||||
mov $bsz,r3
|
||||
ldr $next, [sp, #48] @ next is after the 11 pushed registers (12*4)
|
||||
ldr $next, [sp, #40] @ next is after the 10 pushed registers (10*4)
|
||||
|
||||
#ifdef __thumb2__
|
||||
mov r9,#0x00ff00ff
|
||||
@ -1090,9 +1090,9 @@ SHA3_squeeze:
|
||||
.Lsqueeze_done:
|
||||
add sp,sp,#24
|
||||
#if __ARM_ARCH__>=5
|
||||
ldmia sp!,{r4-r11,pc}
|
||||
ldmia sp!,{r4-r10,pc}
|
||||
#else
|
||||
ldmia sp!,{r4-r11,lr}
|
||||
ldmia sp!,{r4-r10,lr}
|
||||
tst lr,#1
|
||||
moveq pc,lr @ be binary compatible with V4, yet
|
||||
bx lr @ interoperable with Thumb ISA:-)
|
||||
|
@ -169,15 +169,16 @@ GENERATE[keccak1600-s390x.S]=asm/keccak1600-s390x.pl
|
||||
GENERATE[sha1-c64xplus.S]=asm/sha1-c64xplus.pl
|
||||
GENERATE[sha256-c64xplus.S]=asm/sha256-c64xplus.pl
|
||||
GENERATE[sha512-c64xplus.S]=asm/sha512-c64xplus.pl
|
||||
GENERATE[keccak1600-c64x.S]=asm/keccak1600-c64x.pl
|
||||
|
||||
GENERATE[sha256-riscv64-zvkb-zvknha_or_zvknhb.S]=asm/sha256-riscv64-zvkb-zvknha_or_zvknhb.pl
|
||||
GENERATE[sha512-riscv64-zvkb-zvknhb.S]=asm/sha512-riscv64-zvkb-zvknhb.pl
|
||||
|
||||
# These are not yet used
|
||||
# These are not yet used and do not support multi-squeeze
|
||||
GENERATE[keccak1600-c64x.S]=asm/keccak1600-c64x.pl
|
||||
GENERATE[keccak1600-avx2.S]=asm/keccak1600-avx2.pl
|
||||
GENERATE[keccak1600-avx512.S]=asm/keccak1600-avx512.pl
|
||||
GENERATE[keccak1600-avx512vl.S]=asm/keccak1600-avx512vl.pl
|
||||
GENERATE[keccak1600-mmx.S]=asm/keccak1600-mmx.pl
|
||||
GENERATE[keccak1600p8-ppc.S]=asm/keccak1600p8-ppc.pl
|
||||
|
||||
GENERATE[sha1-thumb.S]=asm/sha1-thumb.pl
|
||||
|
Loading…
Reference in New Issue
Block a user