Messages in this thread | | | Date | Sat, 21 Jan 2012 01:12:43 +0000 | From | Al Viro <> | Subject | sparc32 vs lib/mpi |
| |
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...
| |