X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=Kernel%2Farch%2Farm7%2Flib.c;h=e8eb7d3bf6e5b1099822e6d5e04f35b72972c942;hb=0823932d2ca869dc5dc972ac76261e1b264e70a0;hp=6f11f012d6fd3b4f44aa51d9c86211c8a31da6fb;hpb=afe31a49af11cf83b48947de018a5ac147835762;p=tpg%2Facess2.git diff --git a/Kernel/arch/arm7/lib.c b/Kernel/arch/arm7/lib.c index 6f11f012..e8eb7d3b 100644 --- a/Kernel/arch/arm7/lib.c +++ b/Kernel/arch/arm7/lib.c @@ -167,6 +167,7 @@ Uint64 DivMod64U(Uint64 Num, Uint64 Den, Uint64 *Rem) Uint64 __udivdi3(Uint64 Num, Uint64 Den) { return DivMod64U(Num, Den, NULL); + #if 0 // if( Den == 0 ) return 5 / (Uint32)Den; // Force a #DIV0 if( Den == 16 ) return Num >> 4; if( Den == 256 ) return Num >> 8; @@ -186,11 +187,16 @@ Uint64 __udivdi3(Uint64 Num, Uint64 Den) Uint64 ret = 0; for( ret = 0; Num > Den; ret ++, Num -= Den ); return ret; + #endif } // Unsigned Modulus 64-bit Integer Uint64 __umoddi3(Uint64 Num, Uint64 Den) { + Uint64 ret = 0; + DivMod64U(Num, Den, &ret); + return ret; + #if 0 if( Den == 0 ) return 5 / (Uint32)Den; // Force a #DIV0 if( Num < Den ) return Num; if( Den == 1 ) return 0; @@ -211,6 +217,7 @@ Uint64 __umoddi3(Uint64 Num, Uint64 Den) #endif for( ; Num > Den; Num -= Den ); return Num; + #endif } #define _divide_s_32(Num, Den, rem) __asm__ __volatile__ ( \