This is the mail archive of the binutils@sourceware.cygnus.com mailing list for the binutils project.


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

Re: A patch for http://sourceware.cygnus.com/ml/binutils/2000-04/msg00373.html


Am Sun, 16 Apr 2000 schrieb H . J . Lu:
>The old gld${EMULATION_NAME}_place_orphan assumes it only processes
>SEC_ALLOC sections. When we allow ~SEC_ALLOC sections, we have to
>check it. This patch seems to fix
>
>http://sourceware.cygnus.com/ml/binutils/2000-04/msg00373.html
>
>
>-- 
>H.J. Lu (hjl@gnu.org)
>---
>2000-04-16  H.J. Lu  <hjl@gnu.org>
>
>	* emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Take
>	into account that we also proecess ~SEC_ALLOC sections when
>	placing a section.
>	* emultempl/armelf.em (gld${EMULATION_NAME}_place_orphan):
>	Likewise.
>	* emultempl/pe.em (gld${EMULATION_NAME}_place_orphan):
>	Likewise.

H.J., Alan,

this patch solves the vmlinux relocation errors on PPC I got, but if I compile
the kernel with -gdwarf-2, it seems the debug sections no longer get merged now:

Section Headers:
  [Nr] Name              Type            Addr     Off    Size   ES Flg Lk Inf Al
  [ 0]                   NULL            00000000 000000 000000 00       0   0 0
  [ 1] .text             PROGBITS        c0000000 010000 174318 00  AX   0   0 16
  [ 2] .rodata           PROGBITS        c0174320 184320 0415e0 00   A   0   0 16
  [ 3] .data             PROGBITS        c01bb000 1cb000 022f14 00  WA   0   0 16
  [ 4] __ex_table        PROGBITS        c0204e48 214e48 000f50 00   A   0   0 4
  [ 5] .data.cacheline_a PROGBITS        c0205da0 215da0 000020 00  WA   0   0 4
  [ 6] .text.init        PROGBITS        c0206000 216000 020270 00  AX   0   0 4
  [ 7] .data.init        PROGBITS        c0226270 236270 0074b4 00  WA   0   0 4
  [ 8] .text.pmac        PROGBITS        c022e000 23e000 002d2c 00  AX   0   0 4
  [ 9] .data.pmac        PROGBITS        c0230d2c 240d2c 000020 00  WA   0   0 4
  [10] .text.prep        PROGBITS        c0231000 241000 001070 00  AX   0   0 4
  [11] .data.prep        PROGBITS        c0232070 242070 006b9c 00  WA   0   0 4
  [12] .text.openfirmwar PROGBITS        c0239000 249000 002bec 00  AX   0   0 4
  [13] .data.openfirmwar PROGBITS        c023bbec 24bbec 000200 00  WA   0   0 1
  [14] .bss              NOBITS          c023c000 24c000 0436f0 00  WA   0   0 16
  [15] .debug_abbrev     PROGBITS        00000000 24c000 000000 00       0   0 1
  [16] .debug_info       PROGBITS        00000000 24c000 000000 00       0   0 1
  [17] .debug_line       PROGBITS        00000000 24c000 000000 00       0   0 1
  [18] .eh_frame         PROGBITS        c01ddf14 1edf14 026f34 00  WA   0   0 4
  [19] .debug_pubnames   PROGBITS        00000000 24c000 000000 00       0   0 1
  [20] .debug_aranges    PROGBITS        00000000 24c000 000000 00       0   0 1
  [21] .comment          PROGBITS        00000000 24c000 000000 00       0   0 1
  [22] .debug_abbrev0    PROGBITS        00000000 24c000 000000 00       0   0 1
  [23] .debug_info0      PROGBITS        00000000 24c000 000000 00       0   0 1
  [24] .debug_line0      PROGBITS        00000000 24c000 000000 00       0   0 1
  [25] .debug_pubnames0  PROGBITS        00000000 24c000 000000 00       0   0 1
  [26] .comment0         PROGBITS        00000000 24c000 000000 00       0   0 1
  [27] .comment1         PROGBITS        00000000 24c000 000000 00       0   0 1
  [28] .debug_aranges0   PROGBITS        00000000 24c000 000000 00       0   0 1
  [29] .debug_pubnames1  PROGBITS        00000000 24c000 000000 00       0   0 1
  [30] .debug_info1      PROGBITS        00000000 24c000 000000 00       0   0 1
  [31] .debug_abbrev1    PROGBITS        00000000 24c000 000000 00       0   0 1
  [32] .debug_line1      PROGBITS        00000000 24c000 000000 00       0   0 1
  [33] .kstrtab          PROGBITS        c01b5900 1c5900 003a54 00   A   0   0 4
  [34] __ksymtab         PROGBITS        c01b9354 1c9354 001c88 00   A   0   0 4
  [35] .comment2         PROGBITS        00000000 24c000 000000 00       0   0 1
  [36] .debug_aranges1   PROGBITS        00000000 24c000 000000 00       0   0 1
  [37] .debug_pubnames2  PROGBITS        00000000 24c000 000000 00       0   0 1
  [38] .debug_info2      PROGBITS        00000000 24c000 000000 00       0   0 1
  [39] .debug_abbrev2    PROGBITS        00000000 24c000 000000 00       0   0 1
  [40] .debug_line2      PROGBITS        00000000 24c000 000000 00       0   0 1
etc. 

H.J., I think you should be able to reproduce this on any Linux platform, if
you add -gdwarf-2 to the toplevel Linux Makefile (I used the gcc-2_95-branch to
compile, if that matters).

Franz.

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