On Wed, May 16, 2012 at 5:46 PM, James Bottomley <James.Bottomley@xxxxxxxxxxxxxxxxxxxxx> wrote: > On Wed, 2012-05-16 at 10:47 +0200, Geert Uytterhoeven wrote: >> On Wed, May 16, 2012 at 10:30 AM, Geert Uytterhoeven >> <geert@xxxxxxxxxxxxxx> wrote: >> + lib/mpi/generic_mpih-mul1.c: error: inconsistent operand >> constraints in an 'asm': => 50:70 >> + lib/mpi/generic_mpih-mul2.c: error: inconsistent operand >> constraints in an 'asm': => 49:70 >> + lib/mpi/generic_mpih-mul3.c: error: inconsistent operand >> constraints in an 'asm': => 49:70 >> + lib/mpi/mpih-div.c: error: inconsistent operand constraints in an >> 'asm': => 135:122, 135:371, 97:122, 106:121, 106:370, 97:371 >> >> parisc-allmodconfig > > Wow, lib/mpi/ is a complete horror: it's full of hand crafted asm code. > The error in this case appears to be that umul_ppm() is implemented as > an xmpyu instruction. That's a floating point instruction. We > deliberately compile the kernel with floating point disabled because we > don't want to save and restore the floating point register file on each > context switch, hence the operand constraints are unsatisfiable. > > It appears to be completely untested on non-x86 and to have been > imported via the security tree ... what are we supposed to do with this? > I thought the general principle was that asm code was really supposed to > be confined to the arch directories? > > James > > Yes.. it is suxx. But it is only longlong.h and inherited from gpg.. And now there is a stuff such as /include/math-emu/soft-fp and <stdlib/longlong.h> I planned to look to that but now I will start doing it right away. - Dmitry -- To unsubscribe from this list: send the line "unsubscribe linux-parisc" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html