comparison tomsfastmath/src/bit/fp_rshd.c @ 643:a362b62d38b2 dropbear-tfm

Add tomsfastmath from git rev bfa4582842bc3bab42e4be4aed5703437049502a with Makefile.in renamed
author Matt Johnston <matt@ucc.asn.au>
date Wed, 23 Nov 2011 18:10:20 +0700
parents
children
comparison
equal deleted inserted replaced
642:33fd2f3499d2 643:a362b62d38b2
1 /* TomsFastMath, a fast ISO C bignum library.
2 *
3 * This project is meant to fill in where LibTomMath
4 * falls short. That is speed ;-)
5 *
6 * This project is public domain and free for all purposes.
7 *
8 * Tom St Denis, [email protected]
9 */
10 #include <tfm.h>
11
12 void fp_rshd(fp_int *a, int x)
13 {
14 int y;
15
16 /* too many digits just zero and return */
17 if (x >= a->used) {
18 fp_zero(a);
19 return;
20 }
21
22 /* shift */
23 for (y = 0; y < a->used - x; y++) {
24 a->dp[y] = a->dp[y+x];
25 }
26
27 /* zero rest */
28 for (; y < a->used; y++) {
29 a->dp[y] = 0;
30 }
31
32 /* decrement count */
33 a->used -= x;
34 fp_clamp(a);
35 }
36
37
38 /* $Source$ */
39 /* $Revision$ */
40 /* $Date$ */