gold bug combining .bss sections...

David Miller davem@davemloft.net
Fri Apr 11 23:14:00 GMT 2008


From: Ian Lance Taylor <iant@google.com>
Date: Fri, 11 Apr 2008 15:56:02 -0700

> David Miller <davem@davemloft.net> writes:
> 
> > If, for example, we have a normal .bss in the final link with only a
> > necessary alignment of 4, and we also have a dynbss .bss with a copy
> > reloc needing an alignment of 8, gold outputs the final combined .bss
> > section with only an alignment of 4.
> 
> I just committed this patch which I think should fix this problem.

Unfortunately it does not.  (I remembered to remove the
.bss alignment hack in my sparc copy reloc function before
testing).

Here is the 'readelf -a' output from the executable of one such case
that fails, two_file_shared_2_test.

I've also put up the binaries that compose this test case at:

	http://vger.kernel.org/~davem/two_file_shared_2.tar.gz

in case that helps diagnose this further.

Thanks!

ELF Header:
  Magic:   7f 45 4c 46 02 02 01 00 00 00 00 00 00 00 00 00 
  Class:                             ELF64
  Data:                              2's complement, big endian
  Version:                           1 (current)
  OS/ABI:                            UNIX - System V
  ABI Version:                       0
  Type:                              EXEC (Executable file)
  Machine:                           Sparc v9
  Version:                           0x1
  Entry point address:               0x100220
  Start of program headers:          64 (bytes into file)
  Start of section headers:          17760 (bytes into file)
  Flags:                             0x0
  Size of this header:               64 (bytes)
  Size of program headers:           56 (bytes)
  Number of program headers:         8
  Size of section headers:           64 (bytes)
  Number of section headers:         39
  Section header string table index: 38

Section Headers:
  [Nr] Name              Type             Address           Offset
       Size              EntSize          Flags  Link  Info  Align
  [ 0]                   NULL             0000000000000000  00000000
       0000000000000000  0000000000000000           0     0     0
  [ 1] .note             NOTE             0000000000100200  00000200
       0000000000000020  0000000000000000   A       0     0     4
  [ 2] .text             PROGBITS         0000000000100220  00000220
       0000000000000a80  0000000000000000  AX       0     0     32
  [ 3] .rodata           PROGBITS         0000000000100ca0  00000ca0
       0000000000000160  0000000000000000   A       0     0     8
  [ 4] .init             PROGBITS         0000000000100e00  00000e00
       0000000000000078  0000000000000000  AX       0     0     32
  [ 5] .fini             PROGBITS         0000000000100e80  00000e80
       0000000000000030  0000000000000000  AX       0     0     32
  [ 6] .eh_frame         PROGBITS         0000000000100eb0  00000eb0
       000000000000012c  0000000000000000   A       0     0     8
  [ 7] .eh_frame_hdr     PROGBITS         0000000000100fdc  00000fdc
       0000000000000064  0000000000000000   A       0     0     4
  [ 8] .rela.plt         RELA             0000000000101040  00001040
       0000000000000150  0000000000000018   A      10     0     8
  [ 9] .rela.dyn         RELA             0000000000101190  00001190
       00000000000000c0  0000000000000018   A      10     0     8
  [10] .dynsym           DYNSYM           0000000000101250  00001250
       00000000000002d0  0000000000000018   A      11     1     8
  [11] .dynstr           STRTAB           0000000000101520  00001520
       000000000000016e  0000000000000000   A       0     0     1
  [12] .hash             HASH             0000000000101690  00001690
       00000000000000c4  0000000000000004   A      10     0     8
  [13] .gnu.hash         GNU_HASH         0000000000101758  00001758
       00000000000000dc  0000000000000004   A      10     0     8
  [14] .interp           PROGBITS         0000000000101834  00001834
       0000000000000015  0000000000000000   A       0     0     1
  [15] .gnu.version      VERSYM           000000000010184a  0000184a
       000000000000003c  0000000000000002   A      10     0     2
  [16] .gnu.version_r    VERNEED          0000000000101888  00001888
       0000000000000040  0000000000000000   A      11     2     4
  [17] .data             PROGBITS         00000000001118c8  000018c8
       0000000000000038  0000000000000000  WA       0     0     8
  [18] .ctors            PROGBITS         0000000000111900  00001900
       0000000000000010  0000000000000000  WA       0     0     8
  [19] .dtors            PROGBITS         0000000000111910  00001910
       0000000000000010  0000000000000000  WA       0     0     8
  [20] .jcr              PROGBITS         0000000000111920  00001920
       0000000000000008  0000000000000000  WA       0     0     8
  [21] .dynamic          DYNAMIC          0000000000111928  00001928
       00000000000001c0  0000000000000010  WA      11     0     8
  [22] .got              PROGBITS         0000000000111ae8  00001ae8
       0000000000000048  0000000000000000  WA       0     0     8
  [23] .plt              PROGBITS         0000000000111b30  00001b30
       0000000000000240  0000000000000000 WAX       0     0     8
  [24] .bss              NOBITS           0000000000111d70  00001d70
       0000000000000054  0000000000000000  WA       0     0     8
  [25] .comment          PROGBITS         0000000000000000  00001d70
       00000000000001ed  0000000000000000           0     0     1
  [26] .debug_pubnames   PROGBITS         0000000000000000  00001f5d
       000000000000012a  0000000000000000           0     0     1
  [27] .debug_info       PROGBITS         0000000000000000  00002087
       0000000000000808  0000000000000000           0     0     1
  [28] .debug_abbrev     PROGBITS         0000000000000000  0000288f
       000000000000029a  0000000000000000           0     0     1
  [29] .debug_line       PROGBITS         0000000000000000  00002b29
       0000000000000349  0000000000000000           0     0     1
  [30] .debug_str        PROGBITS         0000000000000000  00002e72
       00000000000002d5  0000000000000000           0     0     1
  [31] .debug_aranges    PROGBITS         0000000000000000  00003150
       0000000000000120  0000000000000000           0     0     16
  [32] .debug_ranges     PROGBITS         0000000000000000  00003270
       00000000000000e0  0000000000000000           0     0     16
  [33] .debug_frame      PROGBITS         0000000000000000  00003350
       00000000000002b0  0000000000000000           0     0     8
  [34] .debug_loc        PROGBITS         0000000000000000  00003600
       00000000000002ea  0000000000000000           0     0     1
  [35] .note             NOTE             0000000000000000  000038ec
       0000000000000018  0000000000000000           0     0     4
  [36] .symtab           SYMTAB           0000000000000000  00003908
       0000000000000888  0000000000000018          37    28     8
  [37] .strtab           STRTAB           0000000000000000  00004190
       00000000000003cc  0000000000000000           0     0     1
  [38] .shstrtab         STRTAB           0000000000000000  00004f20
       000000000000015b  0000000000000000           0     0     1
Key to Flags:
  W (write), A (alloc), X (execute), M (merge), S (strings)
  I (info), L (link order), G (group), x (unknown)
  O (extra OS processing required) o (OS specific), p (processor specific)

There are no section groups in this file.

Program Headers:
  Type           Offset             VirtAddr           PhysAddr
                 FileSiz            MemSiz              Flags  Align
  PHDR           0x0000000000000040 0x0000000000100040 0x0000000000100040
                 0x00000000000001c0 0x00000000000001c0  R      8
  INTERP         0x0000000000001834 0x0000000000101834 0x0000000000101834
                 0x0000000000000015 0x0000000000000015  R      1
      [Requesting program interpreter: /lib64/ld-linux.so.2]
  LOAD           0x0000000000000000 0x0000000000100000 0x0000000000100000
                 0x00000000000018c8 0x00000000000018c8  R E    2000
  LOAD           0x00000000000018c8 0x00000000001118c8 0x00000000001118c8
                 0x00000000000004a8 0x00000000000004fc  RWE    2000
  DYNAMIC        0x0000000000001928 0x0000000000111928 0x0000000000111928
                 0x00000000000001c0 0x00000000000001c0  RW     8
  NOTE           0x0000000000000200 0x0000000000100200 0x0000000000100200
                 0x0000000000000020 0x0000000000000020  R      4
  GNU_EH_FRAME   0x0000000000000fdc 0x0000000000100fdc 0x0000000000100fdc
                 0x0000000000000064 0x0000000000000064  R      4
  GNU_STACK      0x0000000000000000 0x0000000000000000 0x0000000000000000
                 0x0000000000000000 0x0000000000000000  RW     0

 Section to Segment mapping:
  Segment Sections...
   00     
   01     .interp 
   02     .note .text .rodata .init .fini .eh_frame .eh_frame_hdr .rela.plt .rela.dyn .dynsym .dynstr .hash .gnu.hash .interp .gnu.version .gnu.version_r 
   03     .data .ctors .dtors .jcr .dynamic .got .plt .bss 
   04     .dynamic 
   05     .note 
   06     .eh_frame_hdr 
   07     

Dynamic section at offset 0x1928 contains 28 entries:
  Tag        Type                         Name/Value
 0x0000000000000002 (PLTRELSZ)           336 (bytes)
 0x0000000000000017 (JMPREL)             0x101040
 0x0000000000000014 (PLTREL)             RELA
 0x0000000000000003 (PLTGOT)             0x111b30
 0x0000000000000007 (RELA)               0x101190
 0x0000000000000008 (RELASZ)             192 (bytes)
 0x0000000000000009 (RELAENT)            24 (bytes)
 0x0000000000000015 (DEBUG)              0x0
 0x0000000000000006 (SYMTAB)             0x101250
 0x000000000000000b (SYMENT)             24 (bytes)
 0x0000000000000005 (STRTAB)             0x101520
 0x000000000000000a (STRSZ)              366 (bytes)
 0x0000000000000004 (HASH)               0x101690
 0x000000006ffffef5 (GNU_HASH)           0x101758
 0x0000000000000001 (NEEDED)             Shared library: [two_file_shared_2.so]
 0x0000000000000001 (NEEDED)             Shared library: [libstdc++.so.6]
 0x0000000000000001 (NEEDED)             Shared library: [libm.so.6]
 0x0000000000000001 (NEEDED)             Shared library: [libgcc_s.so.1]
 0x0000000000000001 (NEEDED)             Shared library: [libc.so.6]
 0x0000000000000001 (NEEDED)             Shared library: [ld-linux.so.2]
 0x000000000000000c (INIT)               0x100e20
 0x000000000000000d (FINI)               0x100e80
 0x000000000000000f (RPATH)              Library rpath: [.]
 0x000000000000001e (FLAGS)              
 0x000000006ffffff0 (VERSYM)             0x10184a
 0x000000006ffffffe (VERNEED)            0x101888
 0x000000006fffffff (VERNEEDNUM)         2
 0x0000000000000000 (NULL)               0x0

Relocation section '.rela.plt' at offset 0x1040 contains 14 entries:
  Offset          Info           Type           Sym. Value    Sym. Name + Addend
000000111bb0  000e00000015 R_SPARC_JMP_SLOT  0000000000000000 __libc_start_main + 0
000000111bd0  000100000015 R_SPARC_JMP_SLOT  0000000000000000 __gmon_start__ + 0
000000111bf0  001600000015 R_SPARC_JMP_SLOT  0000000000000000 __cxa_finalize + 0
000000111c10  000900000015 R_SPARC_JMP_SLOT  0000000000111c10 _Z3f10v + 0
000000111c30  001c00000015 R_SPARC_JMP_SLOT  0000000000000000 _Z3f18i + 0
000000111c50  001b00000015 R_SPARC_JMP_SLOT  0000000000000000 _Z3f15v + 0
000000111c70  001d00000015 R_SPARC_JMP_SLOT  0000000000000000 _Z3f14v + 0
000000111c90  000400000015 R_SPARC_JMP_SLOT  0000000000000000 _Z3f13v + 0
000000111cb0  000600000015 R_SPARC_JMP_SLOT  0000000000000000 _Z3f12v + 0
000000111cd0  001800000015 R_SPARC_JMP_SLOT  0000000000000000 _Z4f11bPFivE + 0
000000111cf0  001300000015 R_SPARC_JMP_SLOT  0000000000000000 _Z4t1_2v + 0
000000111d10  000d00000015 R_SPARC_JMP_SLOT  0000000000111d10 __gxx_personality_v0 + 0
000000111d30  001100000015 R_SPARC_JMP_SLOT  0000000000000000 _Z3t1av + 0
000000111d50  000800000015 R_SPARC_JMP_SLOT  0000000000000000 __assert_fail + 0

Relocation section '.rela.dyn' at offset 0x1190 contains 8 entries:
  Offset          Info           Type           Sym. Value    Sym. Name + Addend
000000111ae8  000100000014 R_SPARC_GLOB_DAT  0000000000000000 __gmon_start__ + 0
000000111af8  001600000014 R_SPARC_GLOB_DAT  0000000000000000 __cxa_finalize + 0
000000111b18  000300000014 R_SPARC_GLOB_DAT  0000000000000000 _Jv_RegisterClasses + 0
000000111d74  001200000013 R_SPARC_COPY      0000000000111d74 v2 + 0
000000111d78  001400000013 R_SPARC_COPY      0000000000111d78 v3 + 0
000000111d7c  001500000013 R_SPARC_COPY      0000000000111d7c v4 + 0
000000111d89  001700000013 R_SPARC_COPY      0000000000111d89 v5 + 0
000000111d9c  000f00000013 R_SPARC_COPY      0000000000111d9c t17data + 0

There are no unwind sections in this file.

Symbol table '.dynsym' contains 30 entries:
   Num:    Value          Size Type    Bind   Vis      Ndx Name
     0: 0000000000000000     0 NOTYPE  LOCAL  DEFAULT  UND 
     1: 0000000000000000     0 NOTYPE  WEAK   DEFAULT  UND __gmon_start__
     2: 0000000000000000     0 REGISTER GLOBAL DEFAULT  UND 
     3: 0000000000000000     0 NOTYPE  WEAK   DEFAULT  UND _Jv_RegisterClasses
     4: 0000000000000000    28 FUNC    GLOBAL DEFAULT  UND _Z3f13v
     5: 0000000000100e80     0 FUNC    GLOBAL DEFAULT    5 _fini
     6: 0000000000000000    28 FUNC    GLOBAL DEFAULT  UND _Z3f12v
     7: 0000000000100e20     0 FUNC    GLOBAL DEFAULT    4 _init
     8: 0000000000000000   384 FUNC    GLOBAL DEFAULT  UND __assert_fail@GLIBC_2.2 (2)
     9: 0000000000111c10     8 FUNC    GLOBAL DEFAULT  UND _Z3f10v
    10: 0000000000111d70     0 NOTYPE  GLOBAL DEFAULT  ABS __bss_start
    11: 0000000000100700    36 FUNC    GLOBAL DEFAULT    2 _Z3t12v
    12: 0000000000111dc4     0 NOTYPE  GLOBAL DEFAULT  ABS _end
    13: 0000000000111d10  1124 FUNC    GLOBAL DEFAULT  UND __gxx_personality_v0@CXXABI_1.3 (3)
    14: 0000000000000000   500 FUNC    GLOBAL DEFAULT  UND __libc_start_main@GLIBC_2.2 (2)
    15: 0000000000111d9c    40 OBJECT  GLOBAL DEFAULT   24 t17data
    16: 0000000000111d70     0 NOTYPE  GLOBAL DEFAULT  ABS _edata
    17: 0000000000000000    28 FUNC    GLOBAL DEFAULT  UND _Z3t1av
    18: 0000000000111d74     4 OBJECT  GLOBAL DEFAULT   24 v2
    19: 0000000000000000     8 FUNC    GLOBAL DEFAULT  UND _Z4t1_2v
    20: 0000000000111d78     4 OBJECT  GLOBAL DEFAULT   24 v3
    21: 0000000000111d7c    13 OBJECT  GLOBAL DEFAULT   24 v4
    22: 0000000000000000   352 FUNC    GLOBAL DEFAULT  UND __cxa_finalize@GLIBC_2.2 (2)
    23: 0000000000111d89    13 OBJECT  GLOBAL DEFAULT   24 v5
    24: 0000000000000000    24 FUNC    GLOBAL DEFAULT  UND _Z4f11bPFivE
    25: 0000000000111dc4     0 NOTYPE  GLOBAL DEFAULT  ABS end
    26: 0000000000100780     8 FUNC    WEAK   DEFAULT    2 _Z4f13iv
    27: 0000000000000000    28 FUNC    GLOBAL DEFAULT  UND _Z3f15v
    28: 0000000000000000   120 FUNC    GLOBAL DEFAULT  UND _Z3f18i
    29: 0000000000000000    28 FUNC    GLOBAL DEFAULT  UND _Z3f14v

Symbol table '.symtab' contains 91 entries:
   Num:    Value          Size Type    Bind   Vis      Ndx Name
     0: 0000000000000000     0 NOTYPE  LOCAL  DEFAULT  UND 
     1: 0000000000000000     0 FILE    LOCAL  DEFAULT  ABS init.c
     2: 0000000000000000     0 FILE    LOCAL  DEFAULT  ABS initfini.c
     3: 0000000000000000     0 FILE    LOCAL  DEFAULT  ABS crtstuff.c
     4: 0000000000111900     0 OBJECT  LOCAL  DEFAULT   18 __CTOR_LIST__
     5: 0000000000111910     0 OBJECT  LOCAL  DEFAULT   19 __DTOR_LIST__
     6: 0000000000111920     0 OBJECT  LOCAL  DEFAULT   20 __JCR_LIST__
     7: 0000000000111d70     1 OBJECT  LOCAL  DEFAULT   24 completed.5808
     8: 00000000001118d0     0 OBJECT  LOCAL  DEFAULT   17 p.5806
     9: 0000000000100280     0 FUNC    LOCAL  DEFAULT    2 __do_global_dtors_aux
    10: 0000000000100320     0 FUNC    LOCAL  DEFAULT    2 call___do_global_dtors_au
    11: 0000000000100340     0 FUNC    LOCAL  DEFAULT    2 frame_dummy
    12: 00000000001003a0     0 FUNC    LOCAL  DEFAULT    2 call_frame_dummy
    13: 0000000000000000     0 FILE    LOCAL  DEFAULT  ABS two_file_test_1.cc
    14: 0000000000000000     0 FILE    LOCAL  DEFAULT  ABS two_file_test_1b.cc
    15: 0000000000000000     0 FILE    LOCAL  DEFAULT  ABS two_file_test_main.cc
    16: 0000000000100df0    11 OBJECT  LOCAL  DEFAULT    3 _ZZ4mainE19__PRETTY_FUNCT
    17: 0000000000000000     0 FILE    LOCAL  DEFAULT  ABS crtstuff.c
    18: 0000000000111908     0 OBJECT  LOCAL  DEFAULT   18 __CTOR_END__
    19: 0000000000111918     0 OBJECT  LOCAL  DEFAULT   19 __DTOR_END__
    20: 0000000000100fd8     0 OBJECT  LOCAL  DEFAULT    6 __FRAME_END__
    21: 0000000000111920     0 OBJECT  LOCAL  DEFAULT   20 __JCR_END__
    22: 0000000000100c20     0 FUNC    LOCAL  DEFAULT    2 __do_global_ctors_aux
    23: 0000000000100c80     0 FUNC    LOCAL  DEFAULT    2 call___do_global_ctors_au
    24: 0000000000000000     0 FILE    LOCAL  DEFAULT  ABS initfini.c
    25: 0000000000111928     0 OBJECT  LOCAL  HIDDEN   21 _DYNAMIC
    26: 0000000000111ae8     0 OBJECT  LOCAL  HIDDEN   22 _GLOBAL_OFFSET_TABLE_
    27: 0000000000111b30     0 OBJECT  LOCAL  HIDDEN   23 _PROCEDURE_LINKAGE_TABLE_
    28: 0000000000000000   384 FUNC    GLOBAL DEFAULT  UND __assert_fail
    29: 0000000000000000  1124 FUNC    GLOBAL DEFAULT  UND __gxx_personality_v0
    30: 0000000000000000   352 FUNC    GLOBAL DEFAULT  UND __cxa_finalize
    31: 0000000000000000   500 FUNC    GLOBAL DEFAULT  UND __libc_start_main
    32: 0000000000100b80     8 FUNC    GLOBAL DEFAULT    2 __libc_csu_fini
    33: 0000000000100220    56 FUNC    GLOBAL DEFAULT    2 _start
    34: 0000000000100ba0   112 FUNC    GLOBAL DEFAULT    2 __libc_csu_init
    35: 00000000001007c0   940 FUNC    GLOBAL DEFAULT    2 main
    36: 00000000001118c8     0 NOTYPE  WEAK   DEFAULT   17 data_start
    37: 0000000000100c9f     4 OBJECT  GLOBAL DEFAULT    3 _IO_stdin_used
    38: 00000000001118c8     0 NOTYPE  GLOBAL DEFAULT   17 __data_start
    39: 0000000000000000     0 NOTYPE  WEAK   DEFAULT  UND __gmon_start__
    40: 0000000000100e20     0 FUNC    GLOBAL DEFAULT    4 _init
    41: 0000000000000000     0 REGISTER GLOBAL DEFAULT  UND 
    42: 0000000000100e80     0 FUNC    GLOBAL DEFAULT    5 _fini
    43: 00000000001118c8     0 OBJECT  GLOBAL HIDDEN   17 __dso_handle
    44: 0000000000000000     0 NOTYPE  WEAK   DEFAULT  UND _Jv_RegisterClasses
    45: 0000000000100780     8 FUNC    WEAK   DEFAULT    2 _Z4f13iv
    46: 00000000001003c0    24 FUNC    GLOBAL DEFAULT    2 _Z2t2v
    47: 0000000000111d74     4 OBJECT  GLOBAL DEFAULT   24 v2
    48: 00000000001003e0    24 FUNC    GLOBAL DEFAULT    2 _Z2t3v
    49: 0000000000111d78     4 OBJECT  GLOBAL DEFAULT   24 v3
    50: 0000000000100400    24 FUNC    GLOBAL DEFAULT    2 _Z2t4v
    51: 0000000000111d7c    13 OBJECT  GLOBAL DEFAULT   24 v4
    52: 0000000000100420    24 FUNC    GLOBAL DEFAULT    2 _Z2t5v
    53: 0000000000111d89    13 OBJECT  GLOBAL DEFAULT   24 v5
    54: 0000000000100440    28 FUNC    GLOBAL DEFAULT    2 _Z2t6v
    55: 00000000001118d8     8 OBJECT  GLOBAL DEFAULT   17 p6
    56: 0000000000100460    28 FUNC    GLOBAL DEFAULT    2 _Z2t7v
    57: 00000000001118e0     8 OBJECT  GLOBAL DEFAULT   17 p7
    58: 0000000000100480    28 FUNC    GLOBAL DEFAULT    2 _Z2t8v
    59: 00000000001118e8     8 OBJECT  GLOBAL DEFAULT   17 p8
    60: 00000000001004a0    28 FUNC    GLOBAL DEFAULT    2 _Z2t9v
    61: 00000000001118f0     8 OBJECT  GLOBAL DEFAULT   17 p9
    62: 00000000001004c0    36 FUNC    GLOBAL DEFAULT    2 _Z3t10v
    63: 00000000001118f8     8 OBJECT  GLOBAL DEFAULT   17 pfn
    64: 0000000000100500     8 FUNC    GLOBAL DEFAULT    2 _Z4f11av
    65: 0000000000100520    84 FUNC    GLOBAL DEFAULT    2 _Z3t17v
    66: 0000000000111d9c    40 OBJECT  GLOBAL DEFAULT   24 t17data
    67: 0000000000100580    28 FUNC    GLOBAL DEFAULT    2 _Z3t16v
    68: 0000000000000000     8 FUNC    GLOBAL DEFAULT  UND _Z3f10v
    69: 00000000001005a0    84 FUNC    GLOBAL DEFAULT    2 _Z3t18v
    70: 0000000000000000   120 FUNC    GLOBAL DEFAULT  UND _Z3f18i
    71: 0000000000100600    84 FUNC    GLOBAL DEFAULT    2 _Z3t15v
    72: 0000000000000000    28 FUNC    GLOBAL DEFAULT  UND _Z3f15v
    73: 0000000000100660    84 FUNC    GLOBAL DEFAULT    2 _Z3t14v
    74: 0000000000000000    28 FUNC    GLOBAL DEFAULT  UND _Z3f14v
    75: 00000000001006c0    36 FUNC    GLOBAL DEFAULT    2 _Z3t13v
    76: 0000000000000000    28 FUNC    GLOBAL DEFAULT  UND _Z3f13v
    77: 0000000000100700    36 FUNC    GLOBAL DEFAULT    2 _Z3t12v
    78: 0000000000000000    28 FUNC    GLOBAL DEFAULT  UND _Z3f12v
    79: 0000000000100740    32 FUNC    GLOBAL DEFAULT    2 _Z3t11v
    80: 0000000000000000    24 FUNC    GLOBAL DEFAULT  UND _Z4f11bPFivE
    81: 0000000000100760    28 FUNC    GLOBAL DEFAULT    2 _Z2t1v
    82: 0000000000000000     8 FUNC    GLOBAL DEFAULT  UND _Z4t1_2v
    83: 00000000001007a0    28 FUNC    GLOBAL DEFAULT    2 _Z4t16av
    84: 0000000000000000    28 FUNC    GLOBAL DEFAULT  UND _Z3t1av
    85: 0000000000111d70     0 NOTYPE  GLOBAL DEFAULT  ABS __bss_start
    86: 0000000000111dc4     0 NOTYPE  GLOBAL DEFAULT  ABS _end
    87: 0000000000111d70     0 NOTYPE  GLOBAL DEFAULT  ABS _edata
    88: 0000000000111dc4     0 NOTYPE  GLOBAL DEFAULT  ABS end
    89: 0000000000000000     0 NOTYPE  GLOBAL HIDDEN  ABS __init_array_end
    90: 0000000000000000     0 NOTYPE  GLOBAL HIDDEN  ABS __init_array_start

Histogram for bucket list length (total of 17 buckets):
 Length  Number     % of total  Coverage
      0  2          ( 11.8%)
      1  6          ( 35.3%)     20.7%
      2  5          ( 29.4%)     55.2%
      3  3          ( 17.6%)     86.2%
      4  1          (  5.9%)    100.0%

Histogram for `.gnu.hash' bucket list length (total of 17 buckets):
 Length  Number     % of total  Coverage
      0  2          ( 11.8%)
      1  5          ( 29.4%)     19.2%
      2  9          ( 52.9%)     88.5%
      3  1          (  5.9%)    100.0%

Version symbols section '.gnu.version' contains 30 entries:
 Addr: 000000000010184a  Offset: 0x00184a  Link: a (.dynsym)
  000:   0 (*local*)       1 (*global*)      1 (*global*)      1 (*global*)   
  004:   1 (*global*)      1 (*global*)      1 (*global*)      1 (*global*)   
  008:   2 (GLIBC_2.2)     1 (*global*)      1 (*global*)      1 (*global*)   
  00c:   1 (*global*)      3 (CXXABI_1.3)    2 (GLIBC_2.2)     1 (*global*)   
  010:   1 (*global*)      1 (*global*)      1 (*global*)      1 (*global*)   
  014:   1 (*global*)      1 (*global*)      2 (GLIBC_2.2)     1 (*global*)   
  018:   1 (*global*)      1 (*global*)      1 (*global*)      1 (*global*)   
  01c:   1 (*global*)      1 (*global*)   

Version needs section '.gnu.version_r' contains 2 entries:
 Addr: 0x0000000000101888  Offset: 0x001888  Link to section: 11 (.dynstr)
  000000: Version: 1  File: libc.so.6  Cnt: 1
  0x0010:   Name: GLIBC_2.2  Flags: none  Version: 2
  0x0020: Version: 1  File: libstdc++.so.6  Cnt: 1
  0x0030:   Name: CXXABI_1.3  Flags: none  Version: 3

Notes at offset 0x00000200 with length 0x00000020:
  Owner		Data size	Description
  GNU		0x00000010	NT_GNU_ABI_TAG (ABI version tag)

Notes at offset 0x000038ec with length 0x00000018:
  Owner		Data size	Description
  GNU		0x00000008	Unknown note type: (0x00000004)



More information about the Binutils mailing list