comparison libtommath/bn_mp_sub_d.c @ 415:8b9aba1d5fa4 channel-fix

merge of '73fe066c5d9e2395354ba74756124d45c978a04d' and 'f5014cc84558f1e8eba42dbecf9f72f94bfe6134'
author Matt Johnston <matt@ucc.asn.au>
date Tue, 06 Feb 2007 16:00:18 +0000
parents 5ff8218bcee9
children 60fc6476e044
comparison
equal deleted inserted replaced
414:c53a26c430e5 415:8b9aba1d5fa4
10 * additional optimizations in place. 10 * additional optimizations in place.
11 * 11 *
12 * The library is free for all purposes without any express 12 * The library is free for all purposes without any express
13 * guarantee it works. 13 * guarantee it works.
14 * 14 *
15 * Tom St Denis, [email protected], http://math.libtomcrypt.org 15 * Tom St Denis, [email protected], http://math.libtomcrypt.com
16 */ 16 */
17 17
18 /* single digit subtraction */ 18 /* single digit subtraction */
19 int 19 int
20 mp_sub_d (mp_int * a, mp_digit b, mp_int * c) 20 mp_sub_d (mp_int * a, mp_digit b, mp_int * c)
34 */ 34 */
35 if (a->sign == MP_NEG) { 35 if (a->sign == MP_NEG) {
36 a->sign = MP_ZPOS; 36 a->sign = MP_ZPOS;
37 res = mp_add_d(a, b, c); 37 res = mp_add_d(a, b, c);
38 a->sign = c->sign = MP_NEG; 38 a->sign = c->sign = MP_NEG;
39
40 /* clamp */
41 mp_clamp(c);
42
39 return res; 43 return res;
40 } 44 }
41 45
42 /* setup regs */ 46 /* setup regs */
43 oldused = c->used; 47 oldused = c->used;
81 mp_clamp(c); 85 mp_clamp(c);
82 return MP_OKAY; 86 return MP_OKAY;
83 } 87 }
84 88
85 #endif 89 #endif
90
91 /* $Source: /cvs/libtom/libtommath/bn_mp_sub_d.c,v $ */
92 /* $Revision: 1.5 $ */
93 /* $Date: 2006/03/31 14:18:44 $ */