https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63359

James Molloy <james.molloy at arm dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |james.molloy at arm dot com

--- Comment #1 from James Molloy <james.molloy at arm dot com> ---
Hi,

> Besides, clang rejects it, so please find a common syntax...

It shouldn't. The "w" modifier should have been supported since clang 3.4, and
is certainly supported in clang 3.5.

Clang 3.5 has a warning about this:

"""
/tmp/test.c:2:27: warning: value size does not match register size specified by
the constraint and modifier [-Wasm-operand-widths]
    asm("clz %0, %0":"+r"(i));
                          ^
/tmp/test.c:2:14: note: use constraint modifier "w"
    asm("clz %0, %0":"+r"(i));
             ^~
             %w0
/tmp/test.c:2:27: warning: value size does not match register size specified by
the constraint and modifier [-Wasm-operand-widths]
    asm("clz %0, %0":"+r"(i));
                          ^
/tmp/test.c:2:18: note: use constraint modifier "w"
    asm("clz %0, %0":"+r"(i));
                 ^~
                 %w0
2 warnings generated.
"""

Reply via email to