sparc32 vs lib/mpi

From: Al Viro
Date: Fri Jan 20 2012 - 20:13:19 EST


I realize that very few people care about sparc32 these days,
but...
a) __clz_tab[] is defined (with identical contents) in
lib/mpi/mpi-bit.c and arch/sparc/lib/divdi3.S. Linker is unhappy,
of course...
b) the same thing ends up using __udiv_qrnnd(), which simply
does not exist on sparc32. There's a Cthulhu-scaring cascade of
ifdefs in lib/mpi/longlong.h, with several variants of udiv_qrnnd()
for sparc. Unfortunately, it falls back on use of __udiv_qrnnd()...
Note that arch/sparc/math-emu/sfp-util_32.h has a definition of
udiv_qrnnd() which might match one of inline assembly variants in
lib/mpi/longlong.h. Or not. BTW, what the hell is LONGLONG_STANDALONE?

Could somebody who might remember still remember that stuff
come up with comments? For now I'm disabling everything from
INTEGRITY_SIGNATURE down to MPILIB on sparc32 cross-build, but it
would be nice to get it at least somewhat sorted out...
--
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/