mirror of
https://git.yoctoproject.org/meta-ti
synced 2026-07-17 06:48:07 +00:00
ebbeb55561
Also add script used to generate patches and SRC_URI Signed-off-by: Koen Kooi <koen@dominion.thruhere.net> Signed-off-by: Denys Dmytriyenko <denys@ti.com>
43 lines
1.4 KiB
Diff
43 lines
1.4 KiB
Diff
From 1671634439eee95d8d54c7cd18e6ff1db20fc87c Mon Sep 17 00:00:00 2001
|
|
From: Herbert Xu <herbert@gondor.apana.org.au>
|
|
Date: Thu, 26 Jan 2012 15:03:16 +1100
|
|
Subject: [PATCH 20/30] crypto: sha512 - Use binary and instead of modulus
|
|
|
|
commit 58d7d18b5268febb8b1391c6dffc8e2aaa751fcd upstream.
|
|
|
|
The previous patch used the modulus operator over a power of 2
|
|
unnecessarily which may produce suboptimal binary code. This
|
|
patch changes changes them to binary ands instead.
|
|
|
|
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
|
|
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
|
---
|
|
crypto/sha512_generic.c | 4 ++--
|
|
1 file changed, 2 insertions(+), 2 deletions(-)
|
|
|
|
diff --git a/crypto/sha512_generic.c b/crypto/sha512_generic.c
|
|
index 88f160b..3edebfd 100644
|
|
--- a/crypto/sha512_generic.c
|
|
+++ b/crypto/sha512_generic.c
|
|
@@ -78,7 +78,7 @@ static inline void LOAD_OP(int I, u64 *W, const u8 *input)
|
|
|
|
static inline void BLEND_OP(int I, u64 *W)
|
|
{
|
|
- W[I % 16] += s1(W[(I-2) % 16]) + W[(I-7) % 16] + s0(W[(I-15) % 16]);
|
|
+ W[I & 15] += s1(W[(I-2) & 15]) + W[(I-7) & 15] + s0(W[(I-15) & 15]);
|
|
}
|
|
|
|
static void
|
|
@@ -105,7 +105,7 @@ sha512_transform(u64 *state, const u8 *input)
|
|
|
|
#define SHA512_16_79(i, a, b, c, d, e, f, g, h) \
|
|
BLEND_OP(i, W); \
|
|
- t1 = h + e1(e) + Ch(e, f, g) + sha512_K[i] + W[(i)%16]; \
|
|
+ t1 = h + e1(e) + Ch(e, f, g) + sha512_K[i] + W[(i)&15]; \
|
|
t2 = e0(a) + Maj(a, b, c); \
|
|
d += t1; \
|
|
h = t1 + t2
|
|
--
|
|
1.7.9.4
|
|
|