[Nasm-bugs] [Bug 3392470] Make mach-o local labels start with a L in the object file
noreply-nasm at gorcunov.org
noreply-nasm at gorcunov.org
Tue May 29 08:43:03 PDT 2018
https://bugzilla.nasm.us/show_bug.cgi?id=3392470
--- Comment #3 from Andrew Fish <afish at apple.com> ---
nasm -f macho32 -o IoFifoSev.o IoFifoSev.nasm
clang -arch i386 IoFifoSev.o main.c -dead_strip
lldb a.out
(lldb) dis -b -n IoReadFifo8
a.out`IoReadFifo8:
a.out[0x1f89] <+0>: 57 pushl %edi
a.out[0x1f8a] <+1>: eb 00 jmp 0x1f8c ; IoReadFifo8.skip
vs.
(lldb) dis -b -n IoReadFifo8
a.out`IoReadFifo8:
a.out[0x1f89] <+0>: 57 pushl %edi
a.out[0x1f8a] <+1>: e8 f1 ff ff ff calll 0x1f80 ;
SevNoRepIo
a.out[0x1f8f] <+6>: eb ef jmp 0x1f80 ;
SevNoRepIo
a.out[0x1f91] <+8>: 85 c0 testl %eax, %eax
a.out[0x1f93] <+10>: 5f popl %edi
a.out[0x1f94] <+11>: c3 retl
The .skip local label is triggering dead striping. I tested with the 3392469
mach-O fix, and it is still broken as it is due the naming convention used in
the dead strip by the linker :(.
--
You are receiving this mail because:
You are watching all bug changes.
You are on the CC list for the bug.
More information about the Nasm-bugs
mailing list