__udivdi3 and linux kernel u64 division question [x86]

From: Mateusz Berezecki
Date: Tue May 24 2005 - 07:30:14 EST


Hi list members,

After a failure of compilation of the similar code snippet


u64 mconst = somebig64bitvalue;
u64 tmp = some32bitvalue;
u64 r = mconst / tmp;

I encounter compilation error and gcc reporting __udivdi3 has not been
found!
After firing up cscope I found that this function has never(?) been
implemented for
x86 architecture. How is it possible that during compilation process of
some module
make system tries to link with nonexisting function?

I've also found a do_div() and it was sufficent for my purposes but Im
still curious about
__udivdi3. Can someone explain this issue to me?
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/