Názor k článku Nástroj objdump: švýcarský nožík pro vývojáře od Michal Kubeček - U disassemblování by bylo dobré zmínit, že pokud...

  • Článek je starý, nové názory již nelze přidávat.
  • 24. 1. 2023 11:41

    Michal Kubeček

    U disassemblování by bylo dobré zmínit, že pokud se objdump používá na object file nebo soubor, u kterého se některé relokace budou provádět až později (např. dynamicky linkovaná knihovna nebo modul), je vhodné použít parametr -r, aby bylo vidět, kam externí volání opravdu vedou:

    ...> objdump -d vmnet.o
    ...
    0000000000000120 <init_module>:
         120:       e8 00 00 00 00          call   125 <init_module+0x5>
         125:       41 54                   push   %r12
         127:       e8 00 00 00 00          call   12c <init_module+0xc>
         12c:       85 c0                   test   %eax,%eax
    ...

    vs.

    ...> objdump -r -d vmnet.o
    ...
    0000000000000120 <init_module>:
         120:       e8 00 00 00 00          call   125 <init_module+0x5>
                            121: R_X86_64_PC32      __fentry__-0x4
         125:       41 54                   push   %r12
         127:       e8 00 00 00 00          call   12c <init_module+0xc>
                            128: R_X86_64_PC32      VNetProc_Init-0x4
         12c:       85 c0                   test   %eax,%eax
    ...