binutils/
authorAlan Modra <amodra@gmail.com>
Wed, 22 Sep 2004 07:24:14 +0000 (07:24 +0000)
committerAlan Modra <amodra@gmail.com>
Wed, 22 Sep 2004 07:24:14 +0000 (07:24 +0000)
* readelf.c (process_program_headers): Don't include .tbss in non-TLS
segments.

ld/testsuite/
* ld-i386/tlsbin.rd: Update for changed segment map.
* ld-i386/tlsnopic.rd: Likewise.
* ld-i386/tlspic.rd: Likewise.
* ld-powerpc/tlsexe.r: Likewise.
* ld-powerpc/tlsexe32.r: Likewise.
* ld-powerpc/tlsexetoc.r: Likewise.
* ld-powerpc/tlsso.r: Likewise.
* ld-powerpc/tlsso32.r: Likewise.
* ld-powerpc/tlstocso.r: Likewise.
* ld-s390/tlsbin.rd: Likewise.
* ld-s390/tlsbin_64.rd: Likewise.
* ld-s390/tlspic.rd: Likewise.
* ld-s390/tlspic_64.rd: Likewise.
* ld-sh/tlsbin-2.d: Likewise.
* ld-sh/tlspic-2.d: Likewise.
* ld-x86-64/tlsbin.rd: Likewise.
* ld-x86-64/tlspic.rd: Likewise.

20 files changed:
binutils/ChangeLog
binutils/readelf.c
ld/testsuite/ChangeLog
ld/testsuite/ld-i386/tlsbin.rd
ld/testsuite/ld-i386/tlsnopic.rd
ld/testsuite/ld-i386/tlspic.rd
ld/testsuite/ld-powerpc/tlsexe.r
ld/testsuite/ld-powerpc/tlsexe32.r
ld/testsuite/ld-powerpc/tlsexetoc.r
ld/testsuite/ld-powerpc/tlsso.r
ld/testsuite/ld-powerpc/tlsso32.r
ld/testsuite/ld-powerpc/tlstocso.r
ld/testsuite/ld-s390/tlsbin.rd
ld/testsuite/ld-s390/tlsbin_64.rd
ld/testsuite/ld-s390/tlspic.rd
ld/testsuite/ld-s390/tlspic_64.rd
ld/testsuite/ld-sh/tlsbin-2.d
ld/testsuite/ld-sh/tlspic-2.d
ld/testsuite/ld-x86-64/tlsbin.rd
ld/testsuite/ld-x86-64/tlspic.rd

index 71708aac7aacff1785bd63a2ebbf72f56e77367c..4b07924f1847cc2722b48070483eeaec2546a7b4 100644 (file)
@@ -1,3 +1,8 @@
+2004-09-22  Alan Modra  <amodra@bigpond.net.au>
+
+       * readelf.c (process_program_headers): Don't include .tbss in non-TLS
+       segments.
+
 2004-09-17  Alan Modra  <amodra@bigpond.net.au>
 
        * Makefile.am: Run "make dep-am".
index 6b03b23d6cecc73ceb73bd363f22361a2133e41a..d0569c4fb909a61ed76026396251a827139534b2 100644 (file)
@@ -3302,7 +3302,12 @@ process_program_headers (FILE *file)
                         <= segment->p_vaddr + segment->p_memsz)
                      : ((bfd_vma) section->sh_offset >= segment->p_offset
                         && (section->sh_offset + section->sh_size
-                            <= segment->p_offset + segment->p_filesz))))
+                            <= segment->p_offset + segment->p_filesz)))
+                 /* .tbss is special.  It doesn't contribute memory space
+                    to normal segments.  */
+                 && (!((section->sh_flags & SHF_TLS) != 0
+                       && section->sh_type == SHT_NOBITS)
+                     || segment->p_type == PT_TLS))
                printf ("%s ", SECTION_NAME (section));
            }
 
index 428bc228c02a59a74d0436dacfc6d50b968b08e3..83e25486cc57a94969e28aefee7cd23602839490 100644 (file)
@@ -1,3 +1,23 @@
+2004-09-22  Alan Modra  <amodra@bigpond.net.au>
+
+       * ld-i386/tlsbin.rd: Update for changed segment map.
+       * ld-i386/tlsnopic.rd: Likewise.
+       * ld-i386/tlspic.rd: Likewise.
+       * ld-powerpc/tlsexe.r: Likewise.
+       * ld-powerpc/tlsexe32.r: Likewise.
+       * ld-powerpc/tlsexetoc.r: Likewise.
+       * ld-powerpc/tlsso.r: Likewise.
+       * ld-powerpc/tlsso32.r: Likewise.
+       * ld-powerpc/tlstocso.r: Likewise.
+       * ld-s390/tlsbin.rd: Likewise.
+       * ld-s390/tlsbin_64.rd: Likewise.
+       * ld-s390/tlspic.rd: Likewise.
+       * ld-s390/tlspic_64.rd: Likewise.
+       * ld-sh/tlsbin-2.d: Likewise.
+       * ld-sh/tlspic-2.d: Likewise.
+       * ld-x86-64/tlsbin.rd: Likewise.
+       * ld-x86-64/tlspic.rd: Likewise.
+
 2004-09-22  Alan Modra  <amodra@bigpond.net.au>
 
        * ld-scripts/overlay-size.d: Don't check .mbss lma.
index d04b1d29e9ddba2acf8bf2339f98454739f9b221..514d6521461b7786e3817c0a67e9ca5eade6523e 100644 (file)
@@ -52,8 +52,8 @@ Program Headers:
    00 +
    01 +.interp *
    02 +.interp .hash .dynsym .dynstr .rel.dyn .rel.plt .plt .text *
-   03 +.tdata .tbss .dynamic .got .got.plt *
-   04 +.tbss .dynamic *
+   03 +.tdata .dynamic .got .got.plt *
+   04 +.dynamic *
    05 +.tdata .tbss *
 
 Relocation section '.rel.dyn' at offset 0x[0-9a-f]+ contains 9 entries:
index 9bc42b9ed37c8dbc1fa711093ebf5b2b303da325..d84f61658a83fdf052a68fc965cbf930e262bf05 100644 (file)
@@ -44,8 +44,8 @@ Program Headers:
  Section to Segment mapping:
   Segment Sections...
    00 +.hash .dynsym .dynstr .rel.dyn .text *
-   01 +.tbss .dynamic .got .got.plt *
-   02 +.tbss .dynamic *
+   01 +.dynamic .got .got.plt *
+   02 +.dynamic *
    03 +.tbss *
 
 Relocation section '.rel.dyn' at offset 0x[0-9a-f]+ contains 20 entries:
index 5b217e606053270c3f916dd6b3856065a7e18aa5..4b380bcafd33bc9de58befd3fe7adf33913c7c85 100644 (file)
@@ -46,8 +46,8 @@ Program Headers:
  Section to Segment mapping:
   Segment Sections...
    00 +.hash .dynsym .dynstr .rel.dyn .rel.plt .plt .text *
-   01 +.tdata .tbss .dynamic .got .got.plt *
-   02 +.tbss .dynamic *
+   01 +.tdata .dynamic .got .got.plt *
+   02 +.dynamic *
    03 +.tdata .tbss *
 
 Relocation section '.rel.dyn' at offset 0x[0-9a-f]+ contains 26 entries:
index 801312ccf521918854a7a4127a082d45fd9e936b..42cc2ef30cccde0a3eac7f48fc5eb26c74fd870d 100644 (file)
@@ -50,8 +50,8 @@ Program Headers:
  +0+ +
  +01 +\.interp 
  +02 +\.interp \.hash \.dynsym \.dynstr \.rela\.dyn \.rela\.plt \.text 
- +03 +\.tdata \.tbss \.dynamic \.got \.plt 
- +04 +\.tbss \.dynamic 
+ +03 +\.tdata \.dynamic \.got \.plt 
+ +04 +\.dynamic 
  +05 +\.tdata \.tbss 
 
 Relocation section '\.rela\.dyn' at offset .* contains 3 entries:
index 217473cb3fbe43ac8cbc8f4f8892e0047d79e447..7a9da4d41c01f47f801f1570851232978e0b6a2f 100644 (file)
@@ -51,8 +51,8 @@ Program Headers:
  +00 +
  +01 +\.interp 
  +02 +\.interp \.hash \.dynsym \.dynstr \.rela\.dyn \.rela\.plt \.text 
- +03 +\.tdata \.tbss \.dynamic \.got \.plt 
- +04 +\.tbss \.dynamic 
+ +03 +\.tdata \.dynamic \.got \.plt 
+ +04 +\.dynamic 
  +05 +\.tdata \.tbss 
 
 Relocation section '\.rela\.dyn' at offset 0x268 contains 2 entries:
index 2cf4043143e643cb46517d323508520a99d4d6d2..540613610e942e45defd3536bcde6cb4f7e26567 100644 (file)
@@ -50,8 +50,8 @@ Program Headers:
  +0+ +
  +01 +\.interp 
  +02 +\.interp \.hash \.dynsym \.dynstr \.rela\.dyn \.rela\.plt \.text 
- +03 +\.tdata \.tbss \.dynamic \.got \.plt 
- +04 +\.tbss \.dynamic 
+ +03 +\.tdata \.dynamic \.got \.plt 
+ +04 +\.dynamic 
  +05 +\.tdata \.tbss 
 
 Relocation section '\.rela\.dyn' at offset .* contains 2 entries:
index 2f3793e99f479888f01e120cb2418935c2c1695e..487d4a8fdc31e77966504215057ebfe30d6a481a 100644 (file)
@@ -43,8 +43,8 @@ Program Headers:
  Section to Segment mapping:
  +Segment Sections\.\.\.
  +0+ +\.hash \.dynsym \.dynstr \.rela\.dyn \.rela\.plt \.text 
- +01 +\.tdata \.tbss \.dynamic \.got \.plt 
- +02 +\.tbss \.dynamic 
+ +01 +\.tdata \.dynamic \.got \.plt 
+ +02 +\.dynamic 
  +03 +\.tdata \.tbss 
 
 Relocation section '\.rela\.dyn' at offset .* contains 16 entries:
index 8781ab354ca5e4e504a98b64a6eb16587f31831e..d2dbe27f700032ee9b31c18937baca232d52ec6a 100644 (file)
@@ -44,8 +44,8 @@ Program Headers:
  Section to Segment mapping:
  +Segment Sections\.\.\.
  +0+ +\.hash \.dynsym \.dynstr \.rela\.dyn \.rela\.plt \.text 
- +01 +\.tdata \.tbss \.dynamic \.got \.plt 
- +02 +\.tbss \.dynamic 
+ +01 +\.tdata \.dynamic \.got \.plt 
+ +02 +\.dynamic 
  +03 +\.tdata \.tbss 
 
 Relocation section '\.rela\.dyn' at offset 0x[0-9a-f]+ contains 18 entries:
index f842320c3df238d457bb5db288207a55ef9280af..cece2574a7c08eac85a9d6c5a370620f566260da 100644 (file)
@@ -43,8 +43,8 @@ Program Headers:
  Section to Segment mapping:
  +Segment Sections\.\.\.
  +0+ +\.hash \.dynsym \.dynstr \.rela\.dyn \.rela\.plt \.text 
- +01 +\.tdata \.tbss \.dynamic \.got \.plt 
- +02 +\.tbss \.dynamic 
+ +01 +\.tdata \.dynamic \.got \.plt 
+ +02 +\.dynamic 
  +03 +\.tdata \.tbss 
 
 Relocation section '\.rela\.dyn' at offset .* contains 11 entries:
index f711f1185702007f453c2d4f7bebb7d543be0b52..562cdc12895827132fdc78b5391232ce37bd7894 100644 (file)
@@ -51,8 +51,8 @@ Program Headers:
    00 *
    01 +.interp *
    02 +.interp .hash .dynsym .dynstr .rela.dyn .rela.plt .plt .text *
-   03 +.tdata .tbss .dynamic .got *
-   04 +.tbss .dynamic *
+   03 +.tdata .dynamic .got *
+   04 +.dynamic *
    05 +.tdata .tbss *
 
 Relocation section '.rela.dyn' at offset 0x268 contains 4 entries:
index 42515f06c5481ffc6a45ca0cf173334ee3b9670e..5ce09fdfac3051f05670e428c9ccb226a3ac1d77 100644 (file)
@@ -51,8 +51,8 @@ Program Headers:
    00 *
    01 +.interp *
    02 +.interp .hash .dynsym .dynstr .rela.dyn .rela.plt .plt .text *
-   03 +.tdata .tbss .dynamic .got *
-   04 +.tbss .dynamic *
+   03 +.tdata .dynamic .got *
+   04 +.dynamic *
    05 +.tdata .tbss *
 
 Relocation section '.rela.dyn' at offset 0x[0-9a-f]+ contains 4 entries:
index 4764023f496c6ad685ca42d54bca4db7e6d466b2..2a7640f8d6ef96ff54590354eabe46895253a33f 100644 (file)
@@ -45,8 +45,8 @@ Program Headers:
  Section to Segment mapping:
   Segment Sections...
  +00 +.hash .dynsym .dynstr .rela.dyn .rela.plt .plt .text 
- +01 +.tdata .tbss .dynamic .got 
- +02 +.tbss .dynamic 
+ +01 +.tdata .dynamic .got 
+ +02 +.dynamic 
  +03 +.tdata .tbss 
 
 Relocation section '.rela.dyn' at offset 0x[0-9a-f]+ contains 14 entries:
index 144903d6b9715069eab69dd601e10a0dd4365591..ac8b87ab662978db5d2b770b4a55a9fbf5fef72c 100644 (file)
@@ -45,8 +45,8 @@ Program Headers:
  Section to Segment mapping:
   Segment Sections...
    00 +.hash .dynsym .dynstr .rela.dyn .rela.plt .plt .text *
-   01 +.tdata .tbss .dynamic .got *
-   02 +.tbss .dynamic *
+   01 +.tdata .dynamic .got *
+   02 +.dynamic *
    03 +.tdata .tbss *
 
 Relocation section '.rela.dyn' at offset 0x[0-9a-f]+ contains 14 entries:
index a2e8ff63052fcff8fb2b76c0b214cb818b73375d..3cb56f9a1115593966893a8e73752272d0236d2b 100644 (file)
@@ -52,8 +52,8 @@ Program Headers:
    00 +
    01 +\.interp *
    02 +\.interp \.hash \.dynsym \.dynstr \.rela\.dyn \.rela\.plt \.plt \.text *
-   03 +\.tdata \.tbss \.dynamic \.got *
-   04 +\.tbss \.dynamic *
+   03 +\.tdata \.dynamic \.got *
+   04 +\.dynamic *
    05 +\.tdata \.tbss *
 
 Relocation section '\.rela\.dyn' at offset 0x[0-9a-f]+ contains 4 entries:
index 40ece5a6fb3133447e0eeb36b3d84d94724d5a41..bbdbc4e17209fbc62522df374edd14537d2df974 100644 (file)
@@ -46,8 +46,8 @@ Program Headers:
  Section to Segment mapping:
   Segment Sections\.\.\.
    00 +\.hash \.dynsym \.dynstr \.rela\.dyn \.rela\.plt \.plt \.text *
-   01 +\.tdata \.tbss \.dynamic \.got *
-   02 +\.tbss \.dynamic *
+   01 +\.tdata \.dynamic \.got *
+   02 +\.dynamic *
    03 +\.tdata \.tbss *
 
 Relocation section '\.rela\.dyn' at offset 0x[0-9a-f]+ contains 10 entries:
index 490010f8541206e2888a7a3d3dee8960929ce85f..f86422b400ed92b52ef92f25402439fe48cd8d5e 100644 (file)
@@ -52,7 +52,7 @@ Program Headers:
    00 *
    01 +.interp *
    02 +.interp .hash .dynsym .dynstr .rela.dyn .rela.plt .plt .text *
-   03 +.tdata .tbss .dynamic .got .got.plt *
+   03 +.tdata .dynamic .got .got.plt *
    04 +.dynamic *
    05 +.tdata .tbss *
 
index 029fa682f45f1216c0cf9dcb4450e6290ea654dd..fff48cd37b0faa53d08164e28a7453a39d06b912 100644 (file)
@@ -46,7 +46,7 @@ Program Headers:
  Section to Segment mapping:
   Segment Sections...
    00 +.hash .dynsym .dynstr .rela.dyn .rela.plt .plt .text *
-   01 +.tdata .tbss .dynamic .got .got.plt *
+   01 +.tdata .dynamic .got .got.plt *
    02 +.dynamic *
    03 +.tdata .tbss *