bug-binutils
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Bug gold/15200] New: Runtime undefined reference to __exidx_start/_end


From: petechou at gmail dot com
Subject: [Bug gold/15200] New: Runtime undefined reference to __exidx_start/_end
Date: Tue, 26 Feb 2013 03:50:02 +0000

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

             Bug #: 15200
           Summary: Runtime undefined reference to __exidx_start/_end
           Product: binutils
           Version: 2.24 (HEAD)
            Status: NEW
          Severity: normal
          Priority: P2
         Component: gold
        AssignedTo: address@hidden
        ReportedBy: address@hidden
                CC: address@hidden
    Classification: Unclassified


Created attachment 6896
  --> http://sourceware.org/bugzilla/attachment.cgi?id=6896
Android plasma test case

We should be able to define a symbol in output even if there is already a
definition in dso, e.g., we should use local exidx in output but not in a
certaion dso.

Attached please find a Android test case and also a possible patch to fix this
problem.

The issue is also reproducible by using gold linker to link against libraries
in Android ndk-r8.

===== REPRODUCE STEP =====

$ readelf -rs plasma.o | grep exidx
...
00000590  00009c1a R_ARM_GOT_BREL    00000000   __exidx_end
00000594  00009d1a R_ARM_GOT_BREL    00000000   __exidx_start
...
   154: 00000000     0 NOTYPE  WEAK   DEFAULT  UND __gnu_Unwind_Find_exidx
   156: 00000000     0 NOTYPE  GLOBAL DEFAULT  UND __exidx_end
   157: 00000000     0 NOTYPE  GLOBAL DEFAULT  UND __exidx_start

$ readelf -s libc.so | grep exidx
   103: 0000c82c     0 NOTYPE  GLOBAL DEFAULT  ABS __exidx_end
   322: 0000c82c     0 NOTYPE  GLOBAL DEFAULT  ABS __exidx_start
   707: 000084e8    20 FUNC    GLOBAL DEFAULT    4 __gnu_Unwind_Find_exidx
   115: 0000c82c     0 NOTYPE  GLOBAL DEFAULT  ABS __exidx_end
   334: 0000c82c     0 NOTYPE  GLOBAL DEFAULT  ABS __exidx_start
   719: 000084e8    20 FUNC    GLOBAL DEFAULT    4 __gnu_Unwind_Find_exidx

$ arm-linux-androideabi-ld.gold -shared -o libplasma.so plasma.o libc.so 

$ readelf -rs libplasma.so | grep exidx
000040a4  00001a15 R_ARM_GLOB_DAT    00000000   __exidx_end
000040a8  00001b15 R_ARM_GLOB_DAT    00000000   __exidx_start
    25: 00000000     0 FUNC    WEAK   DEFAULT  UND __gnu_Unwind_Find_exidx
    26: 00000000     0 NOTYPE  GLOBAL DEFAULT  UND __exidx_end
    27: 00000000     0 NOTYPE  GLOBAL DEFAULT  UND __exidx_start
   120: 00000000     0 FUNC    WEAK   DEFAULT  UND __gnu_Unwind_Find_exidx
   121: 00000000     0 NOTYPE  GLOBAL DEFAULT  UND __exidx_end
   122: 00000000     0 NOTYPE  GLOBAL DEFAULT  UND __exidx_start

-- 
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.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]