[Bug inline-asm/39590] inline asm %z on amd64 says "ll" instead of "q"

felix-gcc at fefe dot de gcc-bugzilla@gcc.gnu.org
Mon Mar 30 22:11:00 GMT 2009



------- Comment #6 from felix-gcc at fefe dot de  2009-03-30 22:10 -------
> 'z' is for x87 insns.

Uh, what?!  Let me quote the relevant "documentation"
(gcc/config/i386/i386.md):

;; The special asm out single letter directives following a '%' are:
;; 'z' mov%z1 would be movl, movw, or movb depending on the mode of
;;     operands[1].

No mention of floating point.

> You have to check size of size_t and use
> proper suffix in your code.

No.  The whole point of %z is that you can write asm statements in a way that
does not specify the argument size explicitly in the statement.


-- 


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



More information about the Gcc-bugs mailing list