On Mon, Jan 07, 2008 at 09:43:24AM +0900, John Summerfield wrote: > >See http://gcc.gnu.org/PR32044 > >__udivdi3/__umoddi3 are in libgcc.a and gcc relies on it libgcc being > >available, but the kernel chooses to link without libgcc - for some > >routines > >it has its own counterparts, for some it chooses not to implement them at > >all and just assumes they won't be needed. > > It doesn't "assume they won't be needed," the kernel is written to be > self-complete. > > Think a while, what place does user-space code have in the kernel? libgcc routines are self-complete. And on a bunch of architectures Linux kernel is linked with libgcc.a, e.g. sh{,64}, xtensa, pa, cris, h8300, m32r. If you do nm on i386 libgcc.a, you'll see: ... _divdi3.o: 0000000000000000 T __divdi3 _moddi3.o: 0000000000000000 T __moddi3 _udivdi3.o: 0000000000000000 T __udivdi3 _umoddi3.o: 0000000000000000 T __umoddi3 ... i.e. all these routines don't need anything else. Jakub -- fedora-test-list mailing list fedora-test-list@xxxxxxxxxx To unsubscribe: https://www.redhat.com/mailman/listinfo/fedora-test-list