Re: gnumach FTBFS
Svante Signell, le Wed 18 May 2011 16:54:24 +0200, a écrit :
> A question: I can avoid the warnings below by doing the following asm
> change. I saw it somewhere on the web that people recommended this type
> of change to enable the inline code go into a register. Does it make
> sense (I don't remember much of asm)
> asm("xorl %0,%0\n0:\tbsfw %1,%w0\n\tbtr %0,%1\n\tjnc 0b"
> - : "=&r" (rv), "=m" (*field) : "1" (*field));
> + : "=&r" (rv), "=m" (*field) : "m" (*field));
It does, but it's not the same, you have no guarantee that the register
name will be the same. I have pushed a correct simplification, and
actually reported a bug to the Linux kernel, where they actually dropped
the read part entirely...
> -> The error below goes away with -O1 or higher!
> -> ../linux/src/drivers/scsi/ultrastor.c:308:3: error: inconsistent
> operand constraints in an ‘asm’
>
> Is this OK? There is also a similar case in the glibc code.
Where?
Samuel
Reply to: