lkml.org 
[lkml]   [2012]   [May]   [16]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: Build regressions/improvements in v3.4-rc7
From
Date
On Wed, 2012-05-16 at 10:47 +0200, Geert Uytterhoeven wrote:
> On Wed, May 16, 2012 at 10:30 AM, Geert Uytterhoeven
> <geert@linux-m68k.org> 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




\
 
 \ /
  Last update: 2012-05-16 17:21    [from the cache]
©2003-2011 Jasper Spaans