diff options
Diffstat (limited to '')
-rw-r--r-- | src/lib/libcrypto/sha/sha512.c | 8 |
1 files changed, 1 insertions, 7 deletions
diff --git a/src/lib/libcrypto/sha/sha512.c b/src/lib/libcrypto/sha/sha512.c index 50c229ddeb..32bfecbf9b 100644 --- a/src/lib/libcrypto/sha/sha512.c +++ b/src/lib/libcrypto/sha/sha512.c | |||
@@ -318,13 +318,11 @@ static const SHA_LONG64 K512[80] = { | |||
318 | : "=r"(ret) \ | 318 | : "=r"(ret) \ |
319 | : "J"(n),"0"(a) \ | 319 | : "J"(n),"0"(a) \ |
320 | : "cc"); ret; }) | 320 | : "cc"); ret; }) |
321 | # if !defined(B_ENDIAN) | ||
322 | # define PULL64(x) ({ SHA_LONG64 ret=*((const SHA_LONG64 *)(&(x))); \ | 321 | # define PULL64(x) ({ SHA_LONG64 ret=*((const SHA_LONG64 *)(&(x))); \ |
323 | asm ("bswapq %0" \ | 322 | asm ("bswapq %0" \ |
324 | : "=r"(ret) \ | 323 | : "=r"(ret) \ |
325 | : "0"(ret)); ret; }) | 324 | : "0"(ret)); ret; }) |
326 | # endif | 325 | # elif (defined(__i386) || defined(__i386__)) |
327 | # elif (defined(__i386) || defined(__i386__)) && !defined(B_ENDIAN) | ||
328 | # if defined(I386_ONLY) | 326 | # if defined(I386_ONLY) |
329 | # define PULL64(x) ({ const unsigned int *p=(const unsigned int *)(&(x));\ | 327 | # define PULL64(x) ({ const unsigned int *p=(const unsigned int *)(&(x));\ |
330 | unsigned int hi=p[0],lo=p[1]; \ | 328 | unsigned int hi=p[0],lo=p[1]; \ |
@@ -421,11 +419,7 @@ static void sha512_block_data_order (SHA512_CTX *ctx, const void *in, size_t num | |||
421 | 419 | ||
422 | for (i=0;i<16;i++,F--) | 420 | for (i=0;i<16;i++,F--) |
423 | { | 421 | { |
424 | #ifdef B_ENDIAN | ||
425 | T = W[i]; | ||
426 | #else | ||
427 | T = PULL64(W[i]); | 422 | T = PULL64(W[i]); |
428 | #endif | ||
429 | F[0] = A; | 423 | F[0] = A; |
430 | F[4] = E; | 424 | F[4] = E; |
431 | F[8] = T; | 425 | F[8] = T; |