summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndy Polyakov <appro@openssl.org>2013-02-14 09:51:41 +0100
committerAndy Polyakov <appro@openssl.org>2013-02-16 11:37:38 +0100
commitb9eef988836097356ce7b463049d108f3b97eb10 (patch)
treeb51a9658f146f990e5788064eb036cd16b9b50a4
parentae5c1ca377601fc539ec03a000fc7357bb033d42 (diff)
bn_nist.c: work around clang 3.0 bug.
(cherry picked from commit 750398acd85a7ae220d272d28a76dff7bb269c31)
-rw-r--r--crypto/bn/bn_nist.c20
1 files changed, 8 insertions, 12 deletions
diff --git a/crypto/bn/bn_nist.c b/crypto/bn/bn_nist.c
index 0797f92918..e22968d4a3 100644
--- a/crypto/bn/bn_nist.c
+++ b/crypto/bn/bn_nist.c
@@ -286,29 +286,25 @@ const BIGNUM *BN_get0_nist_prime_521(void)
}
-static void nist_cp_bn_0(BN_ULONG *buf, const BN_ULONG *a, int top, int max)
+static void nist_cp_bn_0(BN_ULONG *dst, const BN_ULONG *src, int top, int max)
{
int i;
- BN_ULONG *_tmp1 = (buf);
- const BN_ULONG *_tmp2 = (a);
#ifdef BN_DEBUG
OPENSSL_assert(top <= max);
#endif
- for (i = (top); i != 0; i--)
- *_tmp1++ = *_tmp2++;
- for (i = (max) - (top); i != 0; i--)
- *_tmp1++ = (BN_ULONG) 0;
+ for (i = 0; i < top; i++)
+ dst[i] = src[i];
+ for (; i < max; i++)
+ dst[i] = 0;
}
-static void nist_cp_bn(BN_ULONG *buf, const BN_ULONG *a, int top)
+static void nist_cp_bn(BN_ULONG *dst, const BN_ULONG *src, int top)
{
int i;
- BN_ULONG *_tmp1 = (buf);
- const BN_ULONG *_tmp2 = (a);
- for (i = (top); i != 0; i--)
- *_tmp1++ = *_tmp2++;
+ for (i = 0; i < top; i++)
+ dst[i] = src[i];
}
#if BN_BITS2 == 64