1*c8ae8a82SMichal Simek #include <linux/module.h> 2*c8ae8a82SMichal Simek 3*c8ae8a82SMichal Simek #include "libgcc.h" 4*c8ae8a82SMichal Simek 5*c8ae8a82SMichal Simek word_type __ucmpdi2(unsigned long long a, unsigned long long b) 6*c8ae8a82SMichal Simek { 7*c8ae8a82SMichal Simek const DWunion au = {.ll = a}; 8*c8ae8a82SMichal Simek const DWunion bu = {.ll = b}; 9*c8ae8a82SMichal Simek 10*c8ae8a82SMichal Simek if ((unsigned int) au.s.high < (unsigned int) bu.s.high) 11*c8ae8a82SMichal Simek return 0; 12*c8ae8a82SMichal Simek else if ((unsigned int) au.s.high > (unsigned int) bu.s.high) 13*c8ae8a82SMichal Simek return 2; 14*c8ae8a82SMichal Simek if ((unsigned int) au.s.low < (unsigned int) bu.s.low) 15*c8ae8a82SMichal Simek return 0; 16*c8ae8a82SMichal Simek else if ((unsigned int) au.s.low > (unsigned int) bu.s.low) 17*c8ae8a82SMichal Simek return 2; 18*c8ae8a82SMichal Simek return 1; 19*c8ae8a82SMichal Simek } 20*c8ae8a82SMichal Simek EXPORT_SYMBOL(__ucmpdi2); 21