mirror of https://github.com/0intro/conterm
29 lines
402 B
C
29 lines
402 B
C
#include "os.h"
|
|
#include <mp.h>
|
|
#include "dat.h"
|
|
|
|
// prereq: alen >= blen
|
|
int
|
|
mpveccmp(mpdigit *a, int alen, mpdigit *b, int blen)
|
|
{
|
|
mpdigit x;
|
|
|
|
while(alen > blen)
|
|
if(a[--alen] != 0)
|
|
return 1;
|
|
while(blen > alen)
|
|
if(b[--blen] != 0)
|
|
return -1;
|
|
while(alen > 0){
|
|
--alen;
|
|
x = a[alen] - b[alen];
|
|
if(x == 0)
|
|
continue;
|
|
if(x > a[alen])
|
|
return -1;
|
|
else
|
|
return 1;
|
|
}
|
|
return 0;
|
|
}
|