VirtualBox

Ticket #17851: R_X86_64_PLT32.diff

File R_X86_64_PLT32.diff, 1.7 KB (added by bird, 6 years ago)

Patches for dealing with R_X86_64_PLT32 relocation.

  • src/VBox/Runtime/common/ldr/ldrELFRelocatable.cpp.h

     
    359359             * PC relative addressing.
    360360             */
    361361            case R_X86_64_PC32:
     362            case R_X86_64_PLT32: /* binutils commit 451875b4f976a527395e9303224c7881b65e12ed feature/regression. */
    362363            {
    363364                const Elf_Addr SourceAddr = SecAddr + paRels[iRel].r_offset + BaseAddr; /* Where the source really is. */
    364365                Value -= SourceAddr;
  • src/VBox/ValidationKit/bootsectors/bs3kit/VBoxBs3ObjConverter.cpp

     
    18601860                        fSelfRel = false;
    18611861                        RT_FALL_THRU();
    18621862                    case R_X86_64_PC32:
     1863                    case R_X86_64_PLT32: /* binutils commit 451875b4f976a527395e9303224c7881b65e12ed feature/regression. */
    18631864                    {
    18641865                        /* defaults are ok, just handle the addend. */
    18651866                        int32_t iAddend = paRelocs[iReloc].r_addend;
     
    18771878                        continue; /* Ignore this one */
    18781879
    18791880                    case R_X86_64_GOT32:
    1880                     case R_X86_64_PLT32:
    18811881                    case R_X86_64_COPY:
    18821882                    case R_X86_64_GLOB_DAT:
    18831883                    case R_X86_64_JMP_SLOT:

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy