17dd7cddfSDavid du Colombier #include "os.h"
27dd7cddfSDavid du Colombier #include <mp.h>
37dd7cddfSDavid du Colombier #include "dat.h"
47dd7cddfSDavid du Colombier
5*dc5a79c1SDavid du Colombier // return neg, 0, pos as abs(b1)-abs(b2) is neg, 0, pos
67dd7cddfSDavid du Colombier int
mpmagcmp(mpint * b1,mpint * b2)77dd7cddfSDavid du Colombier mpmagcmp(mpint *b1, mpint *b2)
87dd7cddfSDavid du Colombier {
97dd7cddfSDavid du Colombier int i;
107dd7cddfSDavid du Colombier
117dd7cddfSDavid du Colombier i = b1->top - b2->top;
127dd7cddfSDavid du Colombier if(i)
137dd7cddfSDavid du Colombier return i;
147dd7cddfSDavid du Colombier
157dd7cddfSDavid du Colombier return mpveccmp(b1->p, b1->top, b2->p, b2->top);
167dd7cddfSDavid du Colombier }
177dd7cddfSDavid du Colombier
187dd7cddfSDavid du Colombier // return neg, 0, pos as b1-b2 is neg, 0, pos
197dd7cddfSDavid du Colombier int
mpcmp(mpint * b1,mpint * b2)207dd7cddfSDavid du Colombier mpcmp(mpint *b1, mpint *b2)
217dd7cddfSDavid du Colombier {
227dd7cddfSDavid du Colombier if(b1->sign != b2->sign)
237dd7cddfSDavid du Colombier return b1->sign - b2->sign;
247dd7cddfSDavid du Colombier if(b1->sign < 0)
257dd7cddfSDavid du Colombier return mpmagcmp(b2, b1);
267dd7cddfSDavid du Colombier else
277dd7cddfSDavid du Colombier return mpmagcmp(b1, b2);
287dd7cddfSDavid du Colombier }
29