I get the same results... /Volumes/btc-0.12/gcc-4.4/lib/gcc/m68k-linux-gnu/4.4.5/../../../../m68k-linux-gnu/bin/as -m68020 --pcrel -V -Qy -o gen_uuid.o /var/tmp//cc8hhpkh.s GNU assembler version 2.20.1 (m68k-linux-gnu) using BFD version (GNU Binutils) 2.20.1.20100303 /var/tmp//cc8hhpkh.s: Assembler messages: /var/tmp//cc8hhpkh.s:1299: Error: syntax error -- statement `move.l %a2,last.5...@tlsldo+4(%a0)' ignored /var/tmp//cc8hhpkh.s:1736: Error: syntax error -- statement `move.l %a2,last.5...@tlsldo+4(%a0)' ignored
$ fgrep -n TLSLDO /tmp/gen_uuid.s [snip] 1735: move.l %a1,last.5...@tlsldo(%a0) 1736: move.l %a2,last.5...@tlsldo+4(%a0) [snip] gas is happy with line 1735 (and all the other occurrances except line 1299). It seems to be the "+4" offset that gas doesn't like: $ fgrep -n TLSLDO+ /tmp/gen_uuid.s 1299: move.l %a2,last.5...@tlsldo+4(%a0) 1736: move.l %a2,last.5...@tlsldo+4(%a0) 5668: .long adjustment.5...@tlsldo+0x8000 5674: .long last.5...@tlsldo+0x8000 5680: .long state_fd.5...@tlsldo+0x8000 5686: .long state_f.5...@tlsldo+0x8000 5692: .long clock_seq.5...@tlsldo+0x8000 5745: .long num.5...@tlsldo+0x8000 5754: .long uu.5...@tlsldo+0x8000 5763: .long last_time.5...@tlsldo+0x8000 5795: .long jrand_s...@tlsldo+0x8000 $ I'm afraid I have no idea whether this is a bug in gas or gcc. Finn On Sun, 24 Oct 2010, Thorsten Glaser wrote: > Finn Thain dixit: > > >Send me the file and I'll see if I can reproduce it. > > Sent. The .loc are line numbers in the C file, I see, but I fail > to be able to produce a reduced testcase… > > Anyway, it’s 06:09 localtime, so I should be sleeping for a couple > of hours already (but this is fun…) which I’ll do now. > > gn8, > //mirabilos >

