projects
/
oweals
/
openssl.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
[crypto/ec] disable SCA mitigations for curves with incomplete parameters
[oweals/openssl.git]
/
crypto
/
alphacpuid.pl
diff --git
a/crypto/alphacpuid.pl
b/crypto/alphacpuid.pl
index 6b51731b45311f3038cac54cc782e6fc87ca3b63..6c7fd4c9dd3dd1dbd19a9c93141f44e6e6295716 100644
(file)
--- a/
crypto/alphacpuid.pl
+++ b/
crypto/alphacpuid.pl
@@
-8,7
+8,7
@@
$output = pop;
$output = pop;
-open STDOUT,">$
stdo
ut";
+open STDOUT,">$
outp
ut";
print <<'___';
.text
print <<'___';
.text
@@
-134,6
+134,34
@@
OPENSSL_cleanse:
bne $17,.Little
.Ldone: ret ($26)
.end OPENSSL_cleanse
bne $17,.Little
.Ldone: ret ($26)
.end OPENSSL_cleanse
+
+.globl CRYPTO_memcmp
+.ent CRYPTO_memcmp
+CRYPTO_memcmp:
+ .frame $30,0,$26
+ .prologue 0
+ xor $0,$0,$0
+ beq $18,.Lno_data
+
+ xor $1,$1,$1
+ nop
+.Loop_cmp:
+ ldq_u $2,0($16)
+ subq $18,1,$18
+ ldq_u $3,0($17)
+ extbl $2,$16,$2
+ lda $16,1($16)
+ extbl $3,$17,$3
+ lda $17,1($17)
+ xor $3,$2,$2
+ or $2,$0,$0
+ bne $18,.Loop_cmp
+
+ subq $31,$0,$0
+ srl $0,63,$0
+.Lno_data:
+ ret ($26)
+.end CRYPTO_memcmp
___
{
my ($out,$cnt,$max)=("\$16","\$17","\$18");
___
{
my ($out,$cnt,$max)=("\$16","\$17","\$18");