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

--- Comment #6 from Thiago Macieira <thiago at kde dot org> ---
Compiling with -fno-plt just to confirm:

$ objdump -R  a.so  

a.so:     file format elf64-x86-64

DYNAMIC RELOCATION RECORDS
OFFSET           TYPE              VALUE
0000000000003e10 R_X86_64_RELATIVE  *ABS*+0x0000000000001100
0000000000003e18 R_X86_64_RELATIVE  *ABS*+0x00000000000010c0
0000000000004000 R_X86_64_RELATIVE  *ABS*+0x0000000000004000
0000000000004010 R_X86_64_RELATIVE  *ABS*+0x0000000000001120
0000000000003fc0 R_X86_64_GLOB_DAT  _ITM_deregisterTMCloneTable@Base
0000000000003fc8 R_X86_64_GLOB_DAT  my_func_overridable@@Base
0000000000004018 R_X86_64_64       my_func_overridable@@Base
0000000000003fd0 R_X86_64_GLOB_DAT  __gmon_start__@Base
0000000000003fd8 R_X86_64_GLOB_DAT  _ITM_registerTMCloneTable@Base
0000000000003fe0 R_X86_64_GLOB_DAT  __cxa_finalize@GLIBC_2.2.5

$ objdump -d a.so | sed -n '/<f>:/,/^$/p'                                       
0000000000001130 <f>:
    1130:       48 83 ec 08             sub    $0x8,%rsp
    1134:       e8 e7 ff ff ff          call   1120 <my_func>
    1139:       ff 15 89 2e 00 00       call   *0x2e89(%rip)        # 3fc8
<my_func_overridable@@Base+0x2eb8>
    113f:       48 8d 05 ca 2e 00 00    lea    0x2eca(%rip),%rax        # 4010
<vtable>
    1146:       48 83 c4 08             add    $0x8,%rsp
    114a:       c3                      ret

The JUMP_SLOTs disappear, the call to <my_func> remains PC-relative and the
call to <my_func_overridable> goes through the GOT, for which a
R_X86_64_GLOB_DAT shows up.

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

Reply via email to