Alex Tsariounov <[EMAIL PROTECTED]> writes:

> When compiling the attached code on i386, the compilers seems to
> generate an illegal intermediate assembly file that fails to assemble
> with following messages:
> 
> [type2:lttk]$ gcc -o syscall_time syscall_time.c
> /tmp/cc3VnwUh.s: Assembler messages:
> /tmp/cc3VnwUh.s:118: Error: invalid character '=' in operand 1

Well, that's because you provide this asm:

> #define mTICKNOW(T) __asm__ __volatile__("mov %0=ar.itc" : "=r"(T) :: 
> "memory");

and gcc happily inserts %eax for %0, leading to the invalid assembly

        mov %eax=ar.itc

Could you elaborate on why you think this is a bug in gcc?

-- 
        Falk


Reply via email to