This is the mail archive of the glibc-bugs@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug dynamic-link/14979] New: Incorrect R_386_GLOB_DAT/R_386_JUMP_SLOT handling


http://sourceware.org/bugzilla/show_bug.cgi?id=14979

             Bug #: 14979
           Summary: Incorrect R_386_GLOB_DAT/R_386_JUMP_SLOT handling
           Product: glibc
           Version: 2.18
            Status: NEW
          Severity: normal
          Priority: P2
         Component: dynamic-link
        AssignedTo: unassigned@sourceware.org
        ReportedBy: hjl.tools@gmail.com
    Classification: Unclassified


i386 psABI specifies that R_386_GLOB_DAT and R_386_JUMP_SLOT
should use the symbol value without addend.  But i386/dl-machine.h
has

351         case R_386_GLOB_DAT:
352         case R_386_JMP_SLOT:
353           *reloc_addr = value;
354           break;


508       switch (ELF32_R_TYPE (reloc->r_info))
509         {
510         case R_386_GLOB_DAT:
511         case R_386_JMP_SLOT:
512         case R_386_32:
513           *reloc_addr = value + reloc->r_addend;
514           break;


The second one is wrong.  We shouldn't add addend.

-- 
Configure bugmail: http://sourceware.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]