Blame


1 b3f61791 2004-03-21 devnull #include "os.h"
2 b3f61791 2004-03-21 devnull #include <mp.h>
3 b3f61791 2004-03-21 devnull #include "dat.h"
4 b3f61791 2004-03-21 devnull
5 cbeb0b26 2006-04-01 devnull /* return neg, 0, pos as abs(b1)-abs(b2) is neg, 0, pos */
6 b3f61791 2004-03-21 devnull int
7 b3f61791 2004-03-21 devnull mpmagcmp(mpint *b1, mpint *b2)
8 b3f61791 2004-03-21 devnull {
9 b3f61791 2004-03-21 devnull int i;
10 b3f61791 2004-03-21 devnull
11 b3f61791 2004-03-21 devnull i = b1->top - b2->top;
12 b3f61791 2004-03-21 devnull if(i)
13 b3f61791 2004-03-21 devnull return i;
14 b3f61791 2004-03-21 devnull
15 b3f61791 2004-03-21 devnull return mpveccmp(b1->p, b1->top, b2->p, b2->top);
16 b3f61791 2004-03-21 devnull }
17 b3f61791 2004-03-21 devnull
18 cbeb0b26 2006-04-01 devnull /* return neg, 0, pos as b1-b2 is neg, 0, pos */
19 b3f61791 2004-03-21 devnull int
20 b3f61791 2004-03-21 devnull mpcmp(mpint *b1, mpint *b2)
21 b3f61791 2004-03-21 devnull {
22 b3f61791 2004-03-21 devnull if(b1->sign != b2->sign)
23 b3f61791 2004-03-21 devnull return b1->sign - b2->sign;
24 b3f61791 2004-03-21 devnull if(b1->sign < 0)
25 b3f61791 2004-03-21 devnull return mpmagcmp(b2, b1);
26 b3f61791 2004-03-21 devnull else
27 b3f61791 2004-03-21 devnull return mpmagcmp(b1, b2);
28 b3f61791 2004-03-21 devnull }