From 0ee24c00ceaea805c0c7222a13733e4030331ac5 Mon Sep 17 00:00:00 2001 From: Jeff Garzik Date: Sat, 18 Dec 2010 16:29:07 -0500 Subject: [PATCH] sha256_4way: work around gcc 4.5.x bug by always inlining ROTR and SHR --- sha256_4way.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sha256_4way.c b/sha256_4way.c index 5ffe1c88..b196e8d9 100644 --- a/sha256_4way.c +++ b/sha256_4way.c @@ -47,11 +47,11 @@ static inline __m128i Maj(const __m128i b, const __m128i c, const __m128i d) { return (b & c) ^ (b & d) ^ (c & d); } -static inline __m128i ROTR(__m128i x, const int n) { +static __attribute__((always_inline)) __m128i ROTR(__m128i x, const int n) { return _mm_srli_epi32(x, n) | _mm_slli_epi32(x, 32 - n); } -static inline __m128i SHR(__m128i x, const int n) { +static __attribute__((always_inline)) __m128i SHR(__m128i x, const int n) { return _mm_srli_epi32(x, n); }