[Bug inline-asm/13167] Incorrect register `%ecx' used with `q' suffix

dhazeghi at yahoo dot com gcc-bugzilla@gcc.gnu.org
Sun Jan 18 18:33:00 GMT 2004


------- Additional Comments From dhazeghi at yahoo dot com  2004-01-18 18:33 -------
Here's the reduced snippet (copied directly from kernel). GCC thinks the
assembly is invalid. Is it right?

void __clear_bit(int nr, volatile void *addr)
{
        __asm__ __volatile__(
                "btrq %1,%0"
                :"=m" ((*(volatile long *) addr))
                :"dIr" (nr));
}

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |pinskia at gcc dot gnu dot
                   |                            |org
             Status|UNCONFIRMED                 |WAITING
           Keywords|wrong-code                  |


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=13167



More information about the Gcc-bugs mailing list