00001 /* 00002 * arch/i386/libgcc/__divdi3.c 00003 */ 00004 00005 #include "libgcc.h" 00006 00007 __libgcc int64_t __divdi3(int64_t num, int64_t den) 00008 { 00009 int minus = 0; 00010 int64_t v; 00011 00012 if ( num < 0 ) { 00013 num = -num; 00014 minus = 1; 00015 } 00016 if ( den < 0 ) { 00017 den = -den; 00018 minus ^= 1; 00019 } 00020 00021 v = __udivmoddi4(num, den, NULL); 00022 if ( minus ) 00023 v = -v; 00024 00025 return v; 00026 }
1.5.7.1