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

--- Comment #9 from Jakub Jelinek <jakub at gcc dot gnu.org> 2010-11-23 
14:26:53 UTC ---
Looks just like bogus inline asm.  For rdtsc which sets 32-bits in %eax and
32-bits in %edx, for 32-bit code you want "=A" (long_long_variable) and
for 64-bit code you need "=a" (one_int_variable), "=d" (another_int_variable)
Otherwise you are lying on what the insn does.
"=A" with an lvalue which is smaller or equal to word size means allocate it
either in ax or in dx.  Only with double word sized lvalue it means both ax and
dx.

Reply via email to