On Tue, Mar 25, 2014 at 07:53:12PM -0500, John D. Baker wrote: ... > Here's the result of running objdump -dr against the object file as it > exists on my filesystem (not extracted from library): > > /d0/build/current/obj/amd64/external/mit/xorg/lib/freetype/ftxf86.o: > file format elf64-x86-64 > > > Disassembly of section .text: > > 0000000000000000 <FT_Get_X11_Font_Format>: > 0: 48 85 ff test %rdi,%rdi > 3: 74 1a je 1f <FT_Get_X11_Font_Format+0x1f> > 5: 48 8b bf b0 00 00 00 mov 0xb0(%rdi),%rdi > c: 48 8b 07 mov (%rdi),%rax > f: 48 8b 40 40 mov 0x40(%rax),%rax > 13: 48 85 c0 test %rax,%rax > 16: 74 07 je 1f <FT_Get_X11_Font_Format+0x1f> > 18: be 00 00 00 00 mov $0x0,%esi > 19: R_X86_64_32 .rodata.str1.1 > 1d: ff e0 jmpq *%rax > 1f: 31 c0 xor %eax,%eax > 21: c3 retq > > I extracted the module from the library and ran 'objdump -dr' on it. > It's the same.
That isn't PIC code, the PIC version is in ftxf86.pico I've not checked the .a from a working build, but since a .so is being generated it ought to contain the .pico versions. I wonder how that is supposed to happen? Maybe a parallel make happened to leave the wrong file lurking? David -- David Laight: da...@l8s.co.uk