1 /* TomsFastMath, a fast ISO C bignum library.
3 * This project is meant to fill in where LibTomMath
4 * falls short. That is speed ;-)
6 * This project is public domain and free for all purposes.
8 * Tom St Denis, tomstdenis@gmail.com
10 #include <tfm_private.h>
12 void fp_add(fp_int *a, fp_int *b, fp_int *c)
16 /* get sign of both inputs */
20 /* handle two cases, not four */
22 /* both positive or both negative */
23 /* add their magnitudes, copy the sign */
27 /* one positive, the other negative */
28 /* subtract the one with the greater magnitude from */
29 /* the one of the lesser magnitude. The result gets */
30 /* the sign of the one with the greater magnitude. */
31 if (fp_cmp_mag (a, b) == FP_LT) {