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

           Summary: Codegen/TLS: invalid assembler syntax
           Product: gcc
           Version: 4.5.2
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: target
        AssignedTo: unassig...@gcc.gnu.org
        ReportedBy: fth...@telegraphics.com.au
            Target: m68k-linux-gnu


Created attachment 22157
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=22157
pre-processed source from gen_uuid.c from util-linux

gcc version 4.5.2 20101021 (prerelease) (GCC)

$ m68k-linux-gnu-gcc -c gen_uuid.i -O2   
/tmp/cceVtxzz.s: Assembler messages:
/tmp/cceVtxzz.s:709: Error: syntax error -- statement `move.l
%d1,last.5...@tlsle+4(%a0)' ignored
/tmp/cceVtxzz.s:886: Error: syntax error -- statement `move.l
%d1,last.5...@tlsle+4(%a0)' ignored

Some background may be found here (relating to debian's gcc-4.4 package which
has TLS backported):
http://lists.debian.org/debian-68k/2010/10/msg00037.html
(In that compiler, the code generated is an offset against TLSLDO, but shows
the same bug.)

The bug was initially filed for binutils (since closed as invalid):
http://sourceware.org/bugzilla/show_bug.cgi?id=12157

Bug may be worked around with -O0.

Reply via email to