Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6
[linux-2.6] / arch / mips / lib / cmpdi2.c
1 #include <linux/module.h>
2
3 #include "libgcc.h"
4
5 word_type __cmpdi2(long long a, long long b)
6 {
7         const DWunion au = {
8                 .ll = a
9         };
10         const DWunion bu = {
11                 .ll = b
12         };
13
14         if (au.s.high < bu.s.high)
15                 return 0;
16         else if (au.s.high > bu.s.high)
17                 return 2;
18
19         if ((unsigned int) au.s.low < (unsigned int) bu.s.low)
20                 return 0;
21         else if ((unsigned int) au.s.low > (unsigned int) bu.s.low)
22                 return 2;
23
24         return 1;
25 }
26
27 EXPORT_SYMBOL(__cmpdi2);