------- Comment #3 from balrogg at gmail dot com 2009-03-06 10:34 ------- (In reply to comment #2) > You need to use a "memory" clobber instead. "=X" (params[1]) says to GCC > that the asm operand 0 should be stored to params[1], which it does > (it allocates %eax to it).
Note that "=r" doesn't produce the useless move. Neither does "=X" (params) if params is an integer. Note also that the documentation uses "=X" (sum) as an example of adding a dependency on the asm statement. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39375