https://sourceware.org/bugzilla/show_bug.cgi?id=26685

--- Comment #9 from Jan Beulich <jbeulich at suse dot com> ---
(In reply to H.J. Lu from comment #8)
> (In reply to Jan Beulich from comment #7)
> > Of course, that's all fine. But it's still gcc emitting wrong code, which
> > gas legitimately diagnoses. You've introduced a bug into gas instead of
> > fixing one.
> 
> No.

How "no"? Just because the compiler produces bad code doesn't mean gas needs to
correct it. Identical hand-written code like this absolutely needs to be
diagnosed. As since there's no way to tell hand written code from compiler
generated one, the fix will need to be in the compiler (otherwise I might
accept us adjusting things for the compiler's sake).

>  The fix is also incomplete:
> 
> [hjl@gnu-cfl-2 pr26685]$ cat foo.s 
>       movdir64b       foo, %eax
>       movdir64b       0x12345678, %eax
> [hjl@gnu-cfl-2 pr26685]$ make foo.o
> ./as   -o foo.o foo.s
> foo.s: Assembler messages:
> foo.s:1: Error: invalid register operand size for `movdir64b'
> foo.s:2: Error: invalid register operand size for `movdir64b'
> make: *** [<builtin>: foo.o] Error 1
> [hjl@gnu-cfl-2 pr26685]$

This is a different problem, and indeed wants fixing.

-- 
You are receiving this mail because:
You are on the CC list for the bug.

Reply via email to