Problem with extended asm clobber

Etienne LORRAIN etienne_lorrain@yahoo.fr
Wed Dec 8 09:40:00 GMT 1999


Eric Rudd <rudd at cyberoptics dot com> wrote:
> In gcc v2.95, a change was made in the way that gcc handles clobbered
> registers in extended asm statements.  It is discussed in the gcc FAQ:
> 
>    http://www.gnu.org/software/gcc/faq.html#asmclobber
>
> ...
> but beyond the manifest awkwardness of the dummy variables (and the
> re-numbering of existing arguments that it necessitates), there arises a
> new problem: where there previously had been six operands, there are now
> 11, and gcc now complains that it can't handle more than 10 operands to
> an extended asm.

  I used this solution (the '+' instead of '='), for the same problem:

unsigned input_output;
input_output = 3;
asm ( " xchg %0,addr " : "+r" (input_output) : ... );
return input_output;

  Described on newer "info gcc".
  Etienne.
___________________________________________________________
Do You Yahoo!?
Achetez, vendez! À votre prix! Sur http://encheres.yahoo.fr


More information about the Gcc-bugs mailing list