bfd/
authorJakub Jelinek <jakub@redhat.com>
Tue, 11 May 2004 17:08:38 +0000 (17:08 +0000)
committerJakub Jelinek <jakub@redhat.com>
Tue, 11 May 2004 17:08:38 +0000 (17:08 +0000)
* elflink.c (elf_bfd_final_link): Don't output STT_SECTION symbol
into .dynsym if elf_section_data (sec)->dynindx <= 0.
Adjust counting of last_local.
(_bfd_elf_link_renumber_dynsyms): Don't assign dynindx to sections
other than SHT_PROGBITS/SHT_NOBITS and neither for .got/.got.plt/.plt
created by the linker nor !SHF_ALLOC.

* elf32-i386.c (elf_i386_finish_dynamic_sections): Point
DT_PLTGOT to the start of the .got.plt section instead of the
.got output section.  Set sh_entsize for .got section in addition
to .got.plt.
(elf_i386_relocate_section): Don't assume _GLOBAL_OFFSET_TABLE_
is at sgot->output_section->vma.
* elf64-x86-64.c (elf64_x86_64_finish_dynamic_sections): Point
DT_PLTGOT to the start of the .got.plt section instead of the
.got output section.
(elf64_x86_64_relocate_section): Don't assume _GLOBAL_OFFSET_TABLE_
is at sgot->output_section->vma.  Set sh_entsize for .got section
in addition to .got.plt.
* elf.c (_bfd_elf_print_private_bfd_data): Handle PT_GNU_RELRO.
(bfd_section_from_phdr): Likewise.
(map_sections_to_segments): Likewise.
(assign_file_positions_for_segments): Likewise.
(get_program_header_size): Likewise.
* elflink.c (bfd_elf_size_dynamic_sections): Set
elf_tdata (output_bfd)->relro from info->relro.
* elf-bfd.h (struct elf_obj_tdata): Add relro field.
include/
* bfdlink.h (struct bfd_link_info): Add relro, relro_start and
relro_end fields.
* elf/common.h (PT_GNU_EH_FRAME, PT_GNU_STACK): Add comments.
(PT_GNU_RELRO): Define.
binutils/
* readelf.c (get_segment_type): Handle PT_GNU_RELRO.
ld/
* genscripts.sh: Generate -z combreloc -z now -z relro scripts
for binaries, -shared and -pie.
* emulparams/elf_i386.sh (SEPARATE_GOTPLT): Set.
* emulparams/elf_x86_64.sh (SEPARATE_GOTPLT): Set.
* emulparams/elf32ppc.sh (OTHER_READWRITE_SECTIONS): Rename to...
(OTHER_RELRO_SECTIONS): ... this.
* ldlex.l (DATA_SEGMENT_RELRO_END): Add.
* emultempl/elf32.em (gld${EMULATION_NAME}_handle_option): Handle
-z relro and -z norelro.
(gld${EMULATION_NAME}_list_options): Add it to usage.
(gld${EMULATION_NAME}_get_script): Return -z combreloc -z now
-z relro scripts when appropriate.
* scripttempl/elf.sc: Unset SEPARATE_GOTPLT if RELRO_NOW is set.
Create separate .got.plt section if SEPARATE_GOTPLT.
Move sections which are only written during relocation handling
to the beginning of RW segment.  If NO_SMALL_DATA, move .got
before .data.  Add DATA_SEGMENT_RELRO_END directive.
Include OTHER_RELRO_SECTIONS.
* ldgram.y (DATA_SEGMENT_RELRO_END): Add.
* ldexp.c (exp_print_token): Handle DATA_SEGMENT_RELRO_END.
(fold_unary): Likewise.
(fold_binary): Handle -z relro.
* ldexp.h (struct exp_data_seg): Add exp_dataseg_relro_seen and
exp_dataseg_relro_adjust phases.  Add relro_end field.
* ldmain.c (main): Initialize link_info.relro to FALSE.
* ldlang.c (lang_size_sections): Handle -z relro.
ld/testsuite/
* ld-i386/tlspic.rd: Adjust for section reordering changes
and removal of unneeded STT_SECTION symbols from .dynsym.
* ld-i386/tlspic.dd: Likewise.
* ld-i386/tlspic.sd: Likewise.
* ld-i386/tlsbin.rd: Likewise.
* ld-i386/tlsbinpic.s: Likewise.
* ld-i386/tlsbin.dd: Likewise.
* ld-i386/tlsbin.sd: Likewise.
* ld-i386/tlsnopic.rd: Likewise.
* ld-i386/tlsnopic1.s: Likewise.
* ld-i386/combreloc.d: Likewise.
* ld-i386/tlsnopic.dd: Likewise.
* ld-i386/tlsnopic.sd: Likewise.
* ld-x86-64/tlspic.rd: Likewise.
* ld-x86-64/tlspic.dd: Likewise.
* ld-x86-64/tlsbin.dd: Likewise.
* ld-x86-64/tlspic.sd: Likewise.
* ld-x86-64/tlsbin.sd: Likewise.
* ld-x86-64/tlspic.td: Likewise.
* ld-x86-64/tlsbin.td: Likewise.
* ld-x86-64/tlsbin.rd: Likewise.
* ld-s390/tlspic1.s: Likewise.
* ld-s390/tlsbinpic.s: Likewise.
* ld-s390/tlspic.rd: Likewise.
* ld-s390/tlsbin.rd: Likewise.
* ld-s390/tlspic.dd: Likewise.
* ld-s390/tlsbin.dd: Likewise.
* ld-s390/tlsbin.sd: Likewise.
* ld-s390/tlsbin.td: Likewise.
* ld-s390/tlspic.sd: Likewise.
* ld-s390/tlspic.td: Likewise.
* ld-s390/tlspic1_64.s: Likewise.
* ld-s390/tlsbinpic_64.s: Likewise.
* ld-s390/tlspic_64.rd: Likewise.
* ld-s390/tlsbin_64.rd: Likewise.
* ld-s390/tlspic_64.dd: Likewise.
* ld-s390/tlsbin_64.dd: Likewise.
* ld-s390/tlspic_64.sd: Likewise.
* ld-s390/tlspic_64.td: Likewise.
* ld-s390/tlsbin_64.td: Likewise.
* ld-s390/tlsbin_64.sd: Likewise.
* ld-powerpc/tlsexe32.r: Likewise.
* ld-powerpc/tlsso32.r: Likewise.
* ld-powerpc/tlsso32.d: Likewise.
* ld-powerpc/tlsso32.g: Likewise.
* ld-powerpc/tlsso32.t: Likewise.
* ld-powerpc/tlsexe.r: Likewise.
* ld-powerpc/tlsso.r: Likewise.
* ld-powerpc/tlsso.g: Likewise.
* ld-powerpc/tlsexetoc.r: Likewise.
* ld-powerpc/tlstocso.r: Likewise.
* ld-powerpc/tlstocso.g: Likewise.
* ld-ia64/tlspic.rd: Likewise.
* ld-ia64/tlspic.dd: Likewise.
* ld-ia64/tlspic.sd: Likewise.
* ld-ia64/tlspic.td: Likewise.
* ld-ia64/tlsbin.rd: Likewise.
* ld-ia64/tlsbin.sd: Likewise.
* ld-ia64/tlsbin.td: Likewise.
* ld-elfvsb/elfvsb.exp: XFAIL non-PIC load offset tests on s390x.
* ld-shared/shared.exp: Likewise.

87 files changed:
bfd/ChangeLog
bfd/elf-bfd.h
bfd/elf.c
bfd/elf32-i386.c
bfd/elf64-x86-64.c
bfd/elflink.c
binutils/ChangeLog
binutils/readelf.c
include/ChangeLog
include/bfdlink.h
include/elf/common.h
ld/ChangeLog
ld/emulparams/elf32ppc.sh
ld/emulparams/elf64_s390.sh
ld/emulparams/elf_i386.sh
ld/emulparams/elf_s390.sh
ld/emulparams/elf_x86_64.sh
ld/emultempl/elf32.em
ld/genscripts.sh
ld/ldexp.c
ld/ldexp.h
ld/ldgram.y
ld/ldlang.c
ld/ldlex.l
ld/ldmain.c
ld/scripttempl/elf.sc
ld/testsuite/ChangeLog
ld/testsuite/ld-elfvsb/elfvsb.exp
ld/testsuite/ld-i386/combreloc.d
ld/testsuite/ld-i386/tlsbin.dd
ld/testsuite/ld-i386/tlsbin.rd
ld/testsuite/ld-i386/tlsbin.sd
ld/testsuite/ld-i386/tlsbinpic.s
ld/testsuite/ld-i386/tlsnopic.dd
ld/testsuite/ld-i386/tlsnopic.rd
ld/testsuite/ld-i386/tlsnopic.sd
ld/testsuite/ld-i386/tlsnopic1.s
ld/testsuite/ld-i386/tlspic.dd
ld/testsuite/ld-i386/tlspic.rd
ld/testsuite/ld-i386/tlspic.sd
ld/testsuite/ld-ia64/tlsbin.rd
ld/testsuite/ld-ia64/tlsbin.sd
ld/testsuite/ld-ia64/tlsbin.td
ld/testsuite/ld-ia64/tlspic.dd
ld/testsuite/ld-ia64/tlspic.rd
ld/testsuite/ld-ia64/tlspic.sd
ld/testsuite/ld-ia64/tlspic.td
ld/testsuite/ld-powerpc/tlsexe.r
ld/testsuite/ld-powerpc/tlsexe32.r
ld/testsuite/ld-powerpc/tlsexetoc.r
ld/testsuite/ld-powerpc/tlsso.g
ld/testsuite/ld-powerpc/tlsso.r
ld/testsuite/ld-powerpc/tlsso32.d
ld/testsuite/ld-powerpc/tlsso32.g
ld/testsuite/ld-powerpc/tlsso32.r
ld/testsuite/ld-powerpc/tlsso32.t
ld/testsuite/ld-powerpc/tlstocso.g
ld/testsuite/ld-powerpc/tlstocso.r
ld/testsuite/ld-s390/tlsbin.dd
ld/testsuite/ld-s390/tlsbin.rd
ld/testsuite/ld-s390/tlsbin.sd
ld/testsuite/ld-s390/tlsbin.td
ld/testsuite/ld-s390/tlsbin_64.dd
ld/testsuite/ld-s390/tlsbin_64.rd
ld/testsuite/ld-s390/tlsbin_64.sd
ld/testsuite/ld-s390/tlsbin_64.td
ld/testsuite/ld-s390/tlsbinpic.s
ld/testsuite/ld-s390/tlsbinpic_64.s
ld/testsuite/ld-s390/tlspic.dd
ld/testsuite/ld-s390/tlspic.rd
ld/testsuite/ld-s390/tlspic.sd
ld/testsuite/ld-s390/tlspic.td
ld/testsuite/ld-s390/tlspic1.s
ld/testsuite/ld-s390/tlspic1_64.s
ld/testsuite/ld-s390/tlspic_64.dd
ld/testsuite/ld-s390/tlspic_64.rd
ld/testsuite/ld-s390/tlspic_64.sd
ld/testsuite/ld-s390/tlspic_64.td
ld/testsuite/ld-shared/shared.exp
ld/testsuite/ld-x86-64/tlsbin.dd
ld/testsuite/ld-x86-64/tlsbin.rd
ld/testsuite/ld-x86-64/tlsbin.sd
ld/testsuite/ld-x86-64/tlsbin.td
ld/testsuite/ld-x86-64/tlspic.dd
ld/testsuite/ld-x86-64/tlspic.rd
ld/testsuite/ld-x86-64/tlspic.sd
ld/testsuite/ld-x86-64/tlspic.td

index a9088e5..fc12cb4 100644 (file)
@@ -1,3 +1,33 @@
+2004-05-11  Jakub Jelinek  <jakub@redhat.com>
+
+       * elflink.c (elf_bfd_final_link): Don't output STT_SECTION symbol
+       into .dynsym if elf_section_data (sec)->dynindx <= 0.
+       Adjust counting of last_local.
+       (_bfd_elf_link_renumber_dynsyms): Don't assign dynindx to sections
+       other than SHT_PROGBITS/SHT_NOBITS and neither for .got/.got.plt/.plt
+       created by the linker nor !SHF_ALLOC.
+
+       * elf32-i386.c (elf_i386_finish_dynamic_sections): Point
+       DT_PLTGOT to the start of the .got.plt section instead of the
+       .got output section.  Set sh_entsize for .got section in addition
+       to .got.plt.
+       (elf_i386_relocate_section): Don't assume _GLOBAL_OFFSET_TABLE_
+       is at sgot->output_section->vma.
+       * elf64-x86-64.c (elf64_x86_64_finish_dynamic_sections): Point
+       DT_PLTGOT to the start of the .got.plt section instead of the
+       .got output section.
+       (elf64_x86_64_relocate_section): Don't assume _GLOBAL_OFFSET_TABLE_
+       is at sgot->output_section->vma.  Set sh_entsize for .got section
+       in addition to .got.plt.
+       * elf.c (_bfd_elf_print_private_bfd_data): Handle PT_GNU_RELRO.
+       (bfd_section_from_phdr): Likewise.
+       (map_sections_to_segments): Likewise.
+       (assign_file_positions_for_segments): Likewise.
+       (get_program_header_size): Likewise.
+       * elflink.c (bfd_elf_size_dynamic_sections): Set
+       elf_tdata (output_bfd)->relro from info->relro.
+       * elf-bfd.h (struct elf_obj_tdata): Add relro field.
+
 2004-05-08  Alexandre Oliva  <aoliva@redhat.com>
 
        * elf32-frv.c (_frvfdpic_add_dyn_reloc): Don't warn when we get
index 9d0ec36..750cc1c 100644 (file)
@@ -1211,6 +1211,9 @@ struct elf_obj_tdata
   /* Segment flags for the PT_GNU_STACK segment.  */
   unsigned int stack_flags;  
 
+  /* Should the PT_GNU_RELRO segment be emitted?  */
+  bfd_boolean relro;
+
   /* Symbol version definitions in external objects.  */
   Elf_Internal_Verdef *verdef;
 
index 00443c2..8e208c2 100644 (file)
--- a/bfd/elf.c
+++ b/bfd/elf.c
@@ -974,6 +974,7 @@ _bfd_elf_print_private_bfd_data (bfd *abfd, void *farg)
            case PT_TLS: pt = "TLS"; break;
            case PT_GNU_EH_FRAME: pt = "EH_FRAME"; break;
            case PT_GNU_STACK: pt = "STACK"; break;
+           case PT_GNU_RELRO: pt = "RELRO"; break;
            default: sprintf (buf, "0x%lx", p->p_type); pt = buf; break;
            }
          fprintf (f, "%8s off    0x", pt);
@@ -2300,6 +2301,9 @@ bfd_section_from_phdr (bfd *abfd, Elf_Internal_Phdr *hdr, int index)
     case PT_GNU_STACK:
       return _bfd_elf_make_section_from_phdr (abfd, hdr, index, "stack");
 
+    case PT_GNU_RELRO:
+      return _bfd_elf_make_section_from_phdr (abfd, hdr, index, "relro");
+
     default:
       /* Check for any processor-specific program segment types.
          If no handler for them, default to making "segment" sections.  */
@@ -3547,6 +3551,21 @@ map_sections_to_segments (bfd *abfd)
       pm = &m->next;
     }
 
+  if (elf_tdata (abfd)->relro)
+    {
+      amt = sizeof (struct elf_segment_map);
+      m = bfd_zalloc (abfd, amt);
+      if (m == NULL)
+       goto error_return;
+      m->next = NULL;
+      m->p_type = PT_GNU_RELRO;
+      m->p_flags = PF_R;
+      m->p_flags_valid = 1;
+
+      *pm = m;
+      pm = &m->next;
+    }
+
   free (sections);
   sections = NULL;
 
@@ -4081,6 +4100,37 @@ Error: First section in segment (%s) starts at 0x%x whereas the segment starts a
              if (! m->p_paddr_valid)
                p->p_paddr = phdrs_paddr;
            }
+         else if (p->p_type == PT_GNU_RELRO)
+           {
+             Elf_Internal_Phdr *lp;
+
+             for (lp = phdrs; lp < phdrs + count; ++lp)
+               {
+                 if (lp->p_type == PT_LOAD
+                     && lp->p_vaddr <= link_info->relro_end
+                     && lp->p_vaddr >= link_info->relro_start
+                     && lp->p_vaddr + lp->p_filesz
+                        >= link_info->relro_end)
+                   break;
+               }
+
+             if (lp < phdrs + count
+                 && link_info->relro_end > lp->p_vaddr)
+               {
+                 p->p_vaddr = lp->p_vaddr;
+                 p->p_paddr = lp->p_paddr;
+                 p->p_offset = lp->p_offset;
+                 p->p_filesz = link_info->relro_end - lp->p_vaddr;
+                 p->p_memsz = p->p_filesz;
+                 p->p_align = 1;
+                 p->p_flags = (lp->p_flags & ~PF_W);
+               }
+             else
+               {
+                 memset (p, 0, sizeof *p);
+                 p->p_type = PT_NULL;
+               }
+           }
        }
     }
 
@@ -4168,6 +4218,12 @@ get_program_header_size (bfd *abfd)
       ++segs;
     }
 
+  if (elf_tdata (abfd)->relro)
+    {
+      /* We need a PT_GNU_RELRO segment.  */
+      ++segs;
+    }
+
   for (s = abfd->sections; s != NULL; s = s->next)
     {
       if ((s->flags & SEC_LOAD) != 0
index a53d93e..dee26a0 100644 (file)
@@ -2261,24 +2261,29 @@ elf_i386_relocate_section (bfd *output_bfd,
          if (off >= (bfd_vma) -2)
            abort ();
 
-         relocation = htab->sgot->output_offset + off;
+         relocation = htab->sgot->output_section->vma
+                      + htab->sgot->output_offset + off
+                      - htab->sgotplt->output_section->vma
+                      - htab->sgotplt->output_offset;
          break;
 
        case R_386_GOTOFF:
          /* Relocation is relative to the start of the global offset
             table.  */
 
-         /* Note that sgot->output_offset is not involved in this
-            calculation.  We always want the start of .got.  If we
-            defined _GLOBAL_OFFSET_TABLE in a different way, as is
+         /* Note that sgot is not involved in this
+            calculation.  We always want the start of .got.plt.  If we
+            defined _GLOBAL_OFFSET_TABLE_ in a different way, as is
             permitted by the ABI, we might have to change this
             calculation.  */
-         relocation -= htab->sgot->output_section->vma;
+         relocation -= htab->sgotplt->output_section->vma
+                       + htab->sgotplt->output_offset;
          break;
 
        case R_386_GOTPC:
          /* Use global offset table as symbol value.  */
-         relocation = htab->sgot->output_section->vma;
+         relocation = htab->sgotplt->output_section->vma
+                      + htab->sgotplt->output_offset;
          unresolved_reloc = FALSE;
          break;
 
@@ -2699,12 +2704,15 @@ elf_i386_relocate_section (bfd *output_bfd,
            abort ();
          if (r_type == ELF32_R_TYPE (rel->r_info))
            {
-             relocation = htab->sgot->output_offset + off;
+             bfd_vma g_o_t = htab->sgotplt->output_section->vma
+                             + htab->sgotplt->output_offset;
+             relocation = htab->sgot->output_section->vma
+                          + htab->sgot->output_offset + off - g_o_t;
              if ((r_type == R_386_TLS_IE || r_type == R_386_TLS_GOTIE)
                  && tls_type == GOT_TLS_IE_BOTH)
                relocation += 4;
              if (r_type == R_386_TLS_IE)
-               relocation += htab->sgot->output_section->vma;
+               relocation += g_o_t;
              unresolved_reloc = FALSE;
            }
          else
@@ -2761,7 +2769,11 @@ elf_i386_relocate_section (bfd *output_bfd,
                  if (tls_type == GOT_TLS_IE_BOTH)
                    off += 4;
                }
-             bfd_put_32 (output_bfd, htab->sgot->output_offset + off,
+             bfd_put_32 (output_bfd,
+                         htab->sgot->output_section->vma
+                         + htab->sgot->output_offset + off
+                         - htab->sgotplt->output_section->vma
+                         - htab->sgotplt->output_offset,
                          contents + roff + 8);
              /* Skip R_386_PLT32.  */
              rel++;
@@ -2823,7 +2835,10 @@ elf_i386_relocate_section (bfd *output_bfd,
              bfd_elf32_swap_reloc_out (output_bfd, &outrel, loc);
              htab->tls_ldm_got.offset |= 1;
            }
-         relocation = htab->sgot->output_offset + off;
+         relocation = htab->sgot->output_section->vma
+                      + htab->sgot->output_offset + off
+                      - htab->sgotplt->output_section->vma
+                      - htab->sgotplt->output_offset;
          unresolved_reloc = FALSE;
          break;
 
@@ -3159,7 +3174,8 @@ elf_i386_finish_dynamic_sections (bfd *output_bfd,
              continue;
 
            case DT_PLTGOT:
-             dyn.d_un.d_ptr = htab->sgot->output_section->vma;
+             s = htab->sgotplt;
+             dyn.d_un.d_ptr = s->output_section->vma + s->output_offset;
              break;
 
            case DT_JMPREL:
@@ -3245,6 +3261,10 @@ elf_i386_finish_dynamic_sections (bfd *output_bfd,
 
       elf_section_data (htab->sgotplt->output_section)->this_hdr.sh_entsize = 4;
     }
+
+  if (htab->sgot && htab->sgot->_raw_size > 0)
+    elf_section_data (htab->sgot->output_section)->this_hdr.sh_entsize = 4;
+
   return TRUE;
 }
 
index ee1b14e..f9eb7db 100644 (file)
@@ -1911,9 +1911,11 @@ elf64_x86_64_relocate_section (bfd *output_bfd, struct bfd_link_info *info,
          if (off >= (bfd_vma) -2)
            abort ();
 
-         relocation = htab->sgot->output_offset + off;
-         if (r_type == R_X86_64_GOTPCREL)
-           relocation += htab->sgot->output_section->vma;
+         relocation = htab->sgot->output_section->vma
+                      + htab->sgot->output_offset + off;
+         if (r_type != R_X86_64_GOTPCREL)
+           relocation -= htab->sgotplt->output_section->vma
+                         - htab->sgotplt->output_offset;
 
          break;
 
@@ -2664,7 +2666,8 @@ elf64_x86_64_finish_dynamic_sections (bfd *output_bfd, struct bfd_link_info *inf
              continue;
 
            case DT_PLTGOT:
-             dyn.d_un.d_ptr = htab->sgot->output_section->vma;
+             s = htab->sgotplt;
+             dyn.d_un.d_ptr = s->output_section->vma + s->output_offset;
              break;
 
            case DT_JMPREL:
@@ -2755,6 +2758,10 @@ elf64_x86_64_finish_dynamic_sections (bfd *output_bfd, struct bfd_link_info *inf
        GOT_ENTRY_SIZE;
     }
 
+  if (htab->sgot && htab->sgot->_raw_size > 0)
+    elf_section_data (htab->sgot->output_section)->this_hdr.sh_entsize
+      = GOT_ENTRY_SIZE;
+
   return TRUE;
 }
 
index 32f4264..cee5909 100644 (file)
@@ -622,8 +622,36 @@ _bfd_elf_link_renumber_dynsyms (bfd *output_bfd, struct bfd_link_info *info)
     {
       asection *p;
       for (p = output_bfd->sections; p ; p = p->next)
-       if ((p->flags & SEC_EXCLUDE) == 0)
-         elf_section_data (p)->dynindx = ++dynsymcount;
+       if ((p->flags & SEC_EXCLUDE) == 0
+           && (p->flags & SEC_ALLOC) != 0)
+         switch (elf_section_data (p)->this_hdr.sh_type)
+           {
+           case SHT_PROGBITS:
+           case SHT_NOBITS:
+             /* If sh_type is yet undecided, assume it could be
+                SHT_PROGBITS/SHT_NOBITS.  */
+           case SHT_NULL:
+             if (strcmp (p->name, ".got") == 0
+                 || strcmp (p->name, ".got.plt") == 0
+                 || strcmp (p->name, ".plt") == 0)
+               {
+                 asection *ip;
+                 bfd *dynobj = elf_hash_table (info)->dynobj;
+
+                 if (dynobj != NULL
+                     && (ip = bfd_get_section_by_name (dynobj, p->name))
+                        != NULL
+                     && (ip->flags & SEC_LINKER_CREATED)
+                     && ip->output_section == p)
+                   continue;
+               }
+             elf_section_data (p)->dynindx = ++dynsymcount;
+             break;
+             /* There shouldn't be section relative relocations
+                against any other section.  */
+           default:
+             break;
+           }
     }
 
   if (elf_hash_table (info)->dynlocal)
@@ -4621,6 +4649,7 @@ bfd_elf_size_dynamic_sections (bfd *output_bfd,
   if (!is_elf_hash_table (info->hash))
     return TRUE;
 
+  elf_tdata (output_bfd)->relro = info->relro;
   if (info->execstack)
     elf_tdata (output_bfd)->stack_flags = PF_R | PF_W | PF_X;
   else if (info->noexecstack)
@@ -7654,16 +7683,18 @@ bfd_elf_final_link (bfd *abfd, struct bfd_link_info *info)
              bfd_byte *dest;
              long dynindx;
 
-             indx = elf_section_data (s)->this_idx;
              dynindx = elf_section_data (s)->dynindx;
+             if (dynindx <= 0)
+               continue;
+             indx = elf_section_data (s)->this_idx;
              BFD_ASSERT (indx > 0);
              sym.st_shndx = indx;
              sym.st_value = s->vma;
              dest = dynsym + dynindx * bed->s->sizeof_sym;
+             if (last_local < dynindx)
+               last_local = dynindx;
              bed->s->swap_symbol_out (abfd, &sym, dest, 0);
            }
-
-         last_local = bfd_count_sections (abfd);
        }
 
       /* Write out the local dynsyms.  */
index 26298dc..a315869 100644 (file)
@@ -1,3 +1,7 @@
+2004-05-11  Jakub Jelinek  <jakub@redhat.com>
+
+       * readelf.c (get_segment_type): Handle PT_GNU_RELRO.
+
 2004-05-07  H.J. Lu  <hongjiu.lu@intel.com>
 
        * readelf.c (section_groups): New.
index 5a4ad45..1c4e57d 100644 (file)
@@ -2189,6 +2189,7 @@ get_segment_type (unsigned long p_type)
     case PT_GNU_EH_FRAME:
                        return "GNU_EH_FRAME";
     case PT_GNU_STACK: return "STACK";
+    case PT_GNU_RELRO:  return "GNU_RELRO";
 
     default:
       if ((p_type >= PT_LOPROC) && (p_type <= PT_HIPROC))
index 4e92371..804d97f 100644 (file)
@@ -1,3 +1,10 @@
+2004-05-11  Jakub Jelinek  <jakub@redhat.com>
+
+       * bfdlink.h (struct bfd_link_info): Add relro, relro_start and
+       relro_end fields.
+       * elf/common.h (PT_GNU_EH_FRAME, PT_GNU_STACK): Add comments.
+       (PT_GNU_RELRO): Define.
+
 2004-05-04  Andreas Jaeger  <aj@suse.de>
 
        * demangle.h: Do not use C++ reserved keyword typename as
index cc2043e..881d7d4 100644 (file)
@@ -302,6 +302,9 @@ struct bfd_link_info
      flags.  */
   unsigned int noexecstack: 1;
 
+  /* TRUE if PT_GNU_RELRO segment should be created.  */
+  unsigned int relro: 1;
+
   /* What to do with unresolved symbols in an object file.
      When producing executables the default is GENERATE_ERROR.
      When producing shared libraries the default is IGNORE.  The
@@ -391,6 +394,9 @@ struct bfd_link_info
 
   /* May be used to set DT_FLAGS_1 for ELF. */
   bfd_vma flags_1;
+
+  /* Start and end of RELRO region.  */
+  bfd_vma relro_start, relro_end;
 };
 
 /* This structures holds a set of callback functions.  These are
index 8ebc2cf..dbcb5d2 100644 (file)
 #define PT_LOPROC      0x70000000      /* Processor-specific */
 #define PT_HIPROC      0x7FFFFFFF      /* Processor-specific */
 
-#define PT_GNU_EH_FRAME        (PT_LOOS + 0x474e550)
-#define PT_GNU_STACK   (PT_LOOS + 0x474e551)
+#define PT_GNU_EH_FRAME        (PT_LOOS + 0x474e550) /* Frame unwind information */
+#define PT_GNU_STACK   (PT_LOOS + 0x474e551) /* Stack flags */
+#define PT_GNU_RELRO   (PT_LOOS + 0x474e552) /* Read-only after relocation */
 
 /* Program segment permissions, in program header p_flags field.  */
 
index 2487560..6ff73a4 100644 (file)
@@ -1,3 +1,32 @@
+2004-05-11  Jakub Jelinek  <jakub@redhat.com>
+
+       * genscripts.sh: Generate -z combreloc -z now -z relro scripts
+       for binaries, -shared and -pie.
+       * emulparams/elf_i386.sh (SEPARATE_GOTPLT): Set.
+       * emulparams/elf_x86_64.sh (SEPARATE_GOTPLT): Set.
+       * emulparams/elf32ppc.sh (OTHER_READWRITE_SECTIONS): Rename to...
+       (OTHER_RELRO_SECTIONS): ... this.
+       * ldlex.l (DATA_SEGMENT_RELRO_END): Add.
+       * emultempl/elf32.em (gld${EMULATION_NAME}_handle_option): Handle
+       -z relro and -z norelro.
+       (gld${EMULATION_NAME}_list_options): Add it to usage.
+       (gld${EMULATION_NAME}_get_script): Return -z combreloc -z now
+       -z relro scripts when appropriate.
+       * scripttempl/elf.sc: Unset SEPARATE_GOTPLT if RELRO_NOW is set.
+       Create separate .got.plt section if SEPARATE_GOTPLT.
+       Move sections which are only written during relocation handling
+       to the beginning of RW segment.  If NO_SMALL_DATA, move .got
+       before .data.  Add DATA_SEGMENT_RELRO_END directive.
+       Include OTHER_RELRO_SECTIONS.
+       * ldgram.y (DATA_SEGMENT_RELRO_END): Add.
+       * ldexp.c (exp_print_token): Handle DATA_SEGMENT_RELRO_END.
+       (fold_unary): Likewise.
+       (fold_binary): Handle -z relro.
+       * ldexp.h (struct exp_data_seg): Add exp_dataseg_relro_seen and
+       exp_dataseg_relro_adjust phases.  Add relro_end field.
+       * ldmain.c (main): Initialize link_info.relro to FALSE.
+       * ldlang.c (lang_size_sections): Handle -z relro.
+
 2004-05-08  Marek Michalkiewicz  <marekm@amelek.gda.pl>
 
        * scripttempl/avr.sc: Do not set LMA for "eeprom" section.
index d95cb78..3e5224f 100644 (file)
@@ -15,7 +15,7 @@ MACHINE=
 BSS_PLT=
 EXECUTABLE_SYMBOLS='PROVIDE (__stack = 0); PROVIDE (___stack = 0);'
 OTHER_BSS_END_SYMBOLS='__end = .;'
-OTHER_READWRITE_SECTIONS="
+OTHER_RELRO_SECTIONS="
   .fixup        ${RELOCATING-0} : { *(.fixup) }
   .got1         ${RELOCATING-0} : { *(.got1) }
   .got2         ${RELOCATING-0} : { *(.got2) }
index 0c689a9..ea75d31 100644 (file)
@@ -3,6 +3,7 @@ ELFSIZE=64
 OUTPUT_FORMAT="elf64-s390"
 TEXT_START_ADDR=0x80000000
 MAXPAGESIZE=0x1000
+COMMONPAGESIZE=0x1000
 NONPAGED_TEXT_START_ADDR=0x80000000
 ARCH="s390:64-bit"
 MACHINE=
index 2382286..af7010b 100644 (file)
@@ -11,3 +11,4 @@ TEMPLATE_NAME=elf32
 GENERATE_SHLIB_SCRIPT=yes
 GENERATE_PIE_SCRIPT=yes
 NO_SMALL_DATA=yes
+SEPARATE_GOTPLT=12
index e710673..8d057dc 100644 (file)
@@ -2,6 +2,7 @@ SCRIPT_NAME=elf
 OUTPUT_FORMAT="elf32-s390"
 TEXT_START_ADDR=0x00400000
 MAXPAGESIZE=0x1000
+COMMONPAGESIZE=0x1000
 NONPAGED_TEXT_START_ADDR=0x00400000
 ARCH="s390:31-bit"
 MACHINE=
index 6d37058..172b4b1 100644 (file)
@@ -12,6 +12,7 @@ TEMPLATE_NAME=elf32
 GENERATE_SHLIB_SCRIPT=yes
 GENERATE_PIE_SCRIPT=yes
 NO_SMALL_DATA=yes
+SEPARATE_GOTPLT=24
 
 if [ "x${host}" = "x${target}" ]; then
   case " $EMULATION_LIBPATH " in
index 1a838f3..8e1c319 100644 (file)
@@ -1458,6 +1458,10 @@ sed $sc ldscripts/${EMULATION_NAME}.xn                 >> e${EMULATION_NAME}.c
 fi
 if test -n "$GENERATE_PIE_SCRIPT" ; then
 if test -n "$GENERATE_COMBRELOC_SCRIPT" ; then
+echo '  ; else if (link_info.pie && link_info.combreloc' >> e${EMULATION_NAME}.c
+echo '             && link_info.relro' >> e${EMULATION_NAME}.c
+echo '             && (link_info.flags & DT_BIND_NOW)) return' >> e${EMULATION_NAME}.c
+sed $sc ldscripts/${EMULATION_NAME}.xdw                >> e${EMULATION_NAME}.c
 echo '  ; else if (link_info.pie && link_info.combreloc) return' >> e${EMULATION_NAME}.c
 sed $sc ldscripts/${EMULATION_NAME}.xdc                >> e${EMULATION_NAME}.c
 fi
@@ -1466,6 +1470,10 @@ sed $sc ldscripts/${EMULATION_NAME}.xd                 >> e${EMULATION_NAME}.c
 fi
 if test -n "$GENERATE_SHLIB_SCRIPT" ; then
 if test -n "$GENERATE_COMBRELOC_SCRIPT" ; then
+echo '  ; else if (link_info.shared && link_info.combreloc' >> e${EMULATION_NAME}.c
+echo '             && link_info.relro' >> e${EMULATION_NAME}.c
+echo '             && (link_info.flags & DT_BIND_NOW)) return' >> e${EMULATION_NAME}.c
+sed $sc ldscripts/${EMULATION_NAME}.xsw                >> e${EMULATION_NAME}.c
 echo '  ; else if (link_info.shared && link_info.combreloc) return' >> e${EMULATION_NAME}.c
 sed $sc ldscripts/${EMULATION_NAME}.xsc                >> e${EMULATION_NAME}.c
 fi
@@ -1473,6 +1481,9 @@ echo '  ; else if (link_info.shared) return'             >> e${EMULATION_NAME}.c
 sed $sc ldscripts/${EMULATION_NAME}.xs                 >> e${EMULATION_NAME}.c
 fi
 if test -n "$GENERATE_COMBRELOC_SCRIPT" ; then
+echo '  ; else if (link_info.combreloc && link_info.relro' >> e${EMULATION_NAME}.c
+echo '             && (link_info.flags & DT_BIND_NOW)) return' >> e${EMULATION_NAME}.c
+sed $sc ldscripts/${EMULATION_NAME}.xw                 >> e${EMULATION_NAME}.c
 echo '  ; else if (link_info.combreloc) return'        >> e${EMULATION_NAME}.c
 sed $sc ldscripts/${EMULATION_NAME}.xc                 >> e${EMULATION_NAME}.c
 fi
@@ -1504,6 +1515,9 @@ fi
 if test -n "$GENERATE_PIE_SCRIPT" ; then
 if test -n "$GENERATE_COMBRELOC_SCRIPT" ; then
 cat >>e${EMULATION_NAME}.c <<EOF
+  else if (link_info.pie && link_info.combreloc
+          && link_info.relro && (link_info.flags & DT_BIND_NOW))
+    return "ldscripts/${EMULATION_NAME}.xdw";
   else if (link_info.pie && link_info.combreloc)
     return "ldscripts/${EMULATION_NAME}.xdc";
 EOF
@@ -1516,6 +1530,9 @@ fi
 if test -n "$GENERATE_SHLIB_SCRIPT" ; then
 if test -n "$GENERATE_COMBRELOC_SCRIPT" ; then
 cat >>e${EMULATION_NAME}.c <<EOF
+  else if (link_info.shared && link_info.combreloc
+          && link_info.relro && (link_info.flags & DT_BIND_NOW))
+    return "ldscripts/${EMULATION_NAME}.xsw";
   else if (link_info.shared && link_info.combreloc)
     return "ldscripts/${EMULATION_NAME}.xsc";
 EOF
@@ -1527,6 +1544,9 @@ EOF
 fi
 if test -n "$GENERATE_COMBRELOC_SCRIPT" ; then
 cat >>e${EMULATION_NAME}.c <<EOF
+  else if (link_info.combreloc && link_info.relro
+          && (link_info.flags & DT_BIND_NOW))
+    return "ldscripts/${EMULATION_NAME}.xw";
   else if (link_info.combreloc)
     return "ldscripts/${EMULATION_NAME}.xc";
 EOF
@@ -1666,6 +1686,10 @@ cat >>e${EMULATION_NAME}.c <<EOF
          link_info.noexecstack = TRUE;
          link_info.execstack = FALSE;
        }
+      else if (strcmp (optarg, "relro") == 0)
+       link_info.relro = TRUE;
+      else if (strcmp (optarg, "norelro") == 0)
+       link_info.relro = FALSE;
       /* What about the other Solaris -z options? FIXME.  */
       break;
 EOF
@@ -1713,8 +1737,10 @@ cat >>e${EMULATION_NAME}.c <<EOF
   fprintf (file, _("  -z nodlopen\t\tMark DSO not available to dlopen\n"));
   fprintf (file, _("  -z nodump\t\tMark DSO not available to dldump\n"));
   fprintf (file, _("  -z noexecstack\tMark executable as not requiring executable stack\n"));
+  fprintf (file, _("  -z norelro\t\tDon't create RELRO program header\n"));
   fprintf (file, _("  -z now\t\tMark object non-lazy runtime binding\n"));
   fprintf (file, _("  -z origin\t\tMark object requiring immediate \$ORIGIN processing\n\t\t\t  at runtime\n"));
+  fprintf (file, _("  -z relro\t\tCreate RELRO program header\n"));
   fprintf (file, _("  -z KEYWORD\t\tIgnored for Solaris compatibility\n"));
 EOF
 fi
index 0168203..7f8db33 100755 (executable)
@@ -283,7 +283,16 @@ if test -n "$GENERATE_COMBRELOC_SCRIPT"; then
     . ${srcdir}/scripttempl/${SCRIPT_NAME}.sc
   ) | sed -e '/^ *$/d;s/[      ]*$//' > ldscripts/${EMULATION_NAME}.xc
   rm -f ${COMBRELOC}
+  LD_FLAG=w
+  RELRO_NOW=" "
+  COMBRELOC=ldscripts/${EMULATION_NAME}.xw.tmp
+  ( echo "/* Script for -z combreloc -z now -z relro: combine and sort reloc sections */"
+    . ${CUSTOMIZER_SCRIPT} ${EMULATION_NAME}
+    . ${srcdir}/scripttempl/${SCRIPT_NAME}.sc
+  ) | sed -e '/^ *$/d;s/[      ]*$//' > ldscripts/${EMULATION_NAME}.xw
+  rm -f ${COMBRELOC}
   COMBRELOC=
+  unset RELRO_NOW
 fi
 
 if test -n "$GENERATE_SHLIB_SCRIPT"; then
@@ -299,13 +308,22 @@ if test -n "$GENERATE_SHLIB_SCRIPT"; then
   if test -n "$GENERATE_COMBRELOC_SCRIPT"; then
     LD_FLAG=cshared
     DATA_ALIGNMENT=${DATA_ALIGNMENT_sc-${DATA_ALIGNMENT}}
-    COMBRELOC=ldscripts/${EMULATION_NAME}.xc.tmp
+    COMBRELOC=ldscripts/${EMULATION_NAME}.xsc.tmp
     ( echo "/* Script for --shared -z combreloc: shared library, combine & sort relocs */"
       . ${CUSTOMIZER_SCRIPT} ${EMULATION_NAME}
       . ${srcdir}/scripttempl/${SCRIPT_NAME}.sc
     ) | sed -e '/^ *$/d;s/[    ]*$//' > ldscripts/${EMULATION_NAME}.xsc
     rm -f ${COMBRELOC}
+    LD_FLAG=wshared
+    RELRO_NOW=" "
+    COMBRELOC=ldscripts/${EMULATION_NAME}.xsw.tmp
+    ( echo "/* Script for --shared -z combreloc -z now -z relro: shared library, combine & sort relocs */"
+      . ${CUSTOMIZER_SCRIPT} ${EMULATION_NAME}
+      . ${srcdir}/scripttempl/${SCRIPT_NAME}.sc
+    ) | sed -e '/^ *$/d;s/[    ]*$//' > ldscripts/${EMULATION_NAME}.xsw
+    rm -f ${COMBRELOC}
     COMBRELOC=
+    unset RELRO_NOW
   fi
   unset CREATE_SHLIB
 fi
@@ -323,13 +341,22 @@ if test -n "$GENERATE_PIE_SCRIPT"; then
   if test -n "$GENERATE_COMBRELOC_SCRIPT"; then
     LD_FLAG=cpie
     DATA_ALIGNMENT=${DATA_ALIGNMENT_sc-${DATA_ALIGNMENT}}
-    COMBRELOC=ldscripts/${EMULATION_NAME}.xc.tmp
+    COMBRELOC=ldscripts/${EMULATION_NAME}.xdc.tmp
     ( echo "/* Script for -pie -z combreloc: position independent executable, combine & sort relocs */"
       . ${CUSTOMIZER_SCRIPT} ${EMULATION_NAME}
       . ${srcdir}/scripttempl/${SCRIPT_NAME}.sc
     ) | sed -e '/^ *$/d;s/[    ]*$//' > ldscripts/${EMULATION_NAME}.xdc
     rm -f ${COMBRELOC}
+    LD_FLAG=wpie
+    RELRO_NOW=" "
+    COMBRELOC=ldscripts/${EMULATION_NAME}.xdw.tmp
+    ( echo "/* Script for -pie -z combreloc -z now -z relro: position independent executable, combine & sort relocs */"
+      . ${CUSTOMIZER_SCRIPT} ${EMULATION_NAME}
+      . ${srcdir}/scripttempl/${SCRIPT_NAME}.sc
+    ) | sed -e '/^ *$/d;s/[    ]*$//' > ldscripts/${EMULATION_NAME}.xdw
+    rm -f ${COMBRELOC}
     COMBRELOC=
+    unset RELRO_NOW
   fi
   unset CREATE_PIE
 fi
index 4d9a857..52e70a6 100644 (file)
@@ -101,6 +101,7 @@ exp_print_token (token_code_type code, int infix_p)
     { MAX_K, "MAX_K" },
     { REL, "relocatable" },
     { DATA_SEGMENT_ALIGN, "DATA_SEGMENT_ALIGN" },
+    { DATA_SEGMENT_RELRO_END, "DATA_SEGMENT_RELRO_END" },
     { DATA_SEGMENT_END, "DATA_SEGMENT_END" }
   };
   unsigned int idx;
@@ -264,14 +265,36 @@ fold_unary (etree_type *tree,
            result.valid_p = FALSE;
          break;
 
+       case DATA_SEGMENT_RELRO_END:
+         if (allocation_done != lang_first_phase_enum
+             && (exp_data_seg.phase == exp_dataseg_align_seen
+                 || exp_data_seg.phase == exp_dataseg_adjust
+                 || exp_data_seg.phase == exp_dataseg_relro_adjust
+                 || allocation_done != lang_allocating_phase_enum))
+           {
+             if (exp_data_seg.phase == exp_dataseg_align_seen
+                 || exp_data_seg.phase == exp_dataseg_relro_adjust)
+               exp_data_seg.relro_end
+                 = result.value + current_section->bfd_section->vma;
+             if (exp_data_seg.phase == exp_dataseg_align_seen)
+               exp_data_seg.phase = exp_dataseg_relro_seen;
+             result.value = dot - current_section->bfd_section->vma;
+           }
+         else
+           result.valid_p = FALSE;
+         break;
+
        case DATA_SEGMENT_END:
          if (allocation_done != lang_first_phase_enum
              && current_section == abs_output_section
              && (exp_data_seg.phase == exp_dataseg_align_seen
+                 || exp_data_seg.phase == exp_dataseg_relro_seen
                  || exp_data_seg.phase == exp_dataseg_adjust
+                 || exp_data_seg.phase == exp_dataseg_relro_adjust
                  || allocation_done != lang_allocating_phase_enum))
            {
-             if (exp_data_seg.phase == exp_dataseg_align_seen)
+             if (exp_data_seg.phase == exp_dataseg_align_seen
+                 || exp_data_seg.phase == exp_dataseg_relro_seen)
                {
                  exp_data_seg.phase = exp_dataseg_end_seen;
                  exp_data_seg.end = result.value;
@@ -392,12 +415,23 @@ fold_binary (etree_type *tree,
                  && current_section == abs_output_section
                  && (exp_data_seg.phase == exp_dataseg_none
                      || exp_data_seg.phase == exp_dataseg_adjust
+                     || exp_data_seg.phase == exp_dataseg_relro_adjust
                      || allocation_done != lang_allocating_phase_enum))
                {
                  bfd_vma maxpage = result.value;
 
                  result.value = align_n (dot, maxpage);
-                 if (exp_data_seg.phase != exp_dataseg_adjust)
+                 if (exp_data_seg.phase == exp_dataseg_relro_adjust)
+                   {
+                     /* Attempt to align DATA_SEGMENT_RELRO_END at
+                        a common page boundary.  */
+                     bfd_vma relro;
+
+                     relro = exp_data_seg.relro_end - exp_data_seg.base;
+                     result.value += -relro & (other.value - 1);
+                     exp_data_seg.base = result.value;
+                   }
+                 else if (exp_data_seg.phase != exp_dataseg_adjust)
                    {
                      result.value += dot & (maxpage - 1);
                      if (allocation_done == lang_allocating_phase_enum)
@@ -405,6 +439,7 @@ fold_binary (etree_type *tree,
                          exp_data_seg.phase = exp_dataseg_align_seen;
                          exp_data_seg.base = result.value;
                          exp_data_seg.pagesize = other.value;
+                         exp_data_seg.relro_end = 0;
                        }
                    }
                  else if (other.value < maxpage)
index 99e7073..a90f1ef 100644 (file)
@@ -95,10 +95,12 @@ extern struct exp_data_seg {
   enum {
     exp_dataseg_none,
     exp_dataseg_align_seen,
+    exp_dataseg_relro_seen,
     exp_dataseg_end_seen,
+    exp_dataseg_relro_adjust,
     exp_dataseg_adjust
   } phase;
-  bfd_vma base, end, pagesize;
+  bfd_vma base, relro_end, end, pagesize;
 } exp_data_seg;
 
 typedef struct _fill_type fill_type;
index 6c46c85..462bd42 100644 (file)
@@ -128,7 +128,7 @@ static int error_index;
 %token END
 %left <token> '('
 %token <token> ALIGN_K BLOCK BIND QUAD SQUAD LONG SHORT BYTE
-%token SECTIONS PHDRS SORT DATA_SEGMENT_ALIGN DATA_SEGMENT_END
+%token SECTIONS PHDRS SORT DATA_SEGMENT_ALIGN DATA_SEGMENT_RELRO_END DATA_SEGMENT_END
 %token '{' '}'
 %token SIZEOF_HEADERS OUTPUT_FORMAT FORCE_COMMON_ALLOCATION OUTPUT_ARCH
 %token INHIBIT_COMMON_ALLOCATION
@@ -808,6 +808,8 @@ exp :
                        { $$ = exp_binop(ALIGN_K,$3,$5); }
        |       DATA_SEGMENT_ALIGN '(' exp ',' exp ')'
                        { $$ = exp_binop (DATA_SEGMENT_ALIGN, $3, $5); }
+       |       DATA_SEGMENT_RELRO_END '(' exp ')'
+                       { $$ = exp_unop(DATA_SEGMENT_RELRO_END, $3); }
        |       DATA_SEGMENT_END '(' exp ')'
                        { $$ = exp_unop(DATA_SEGMENT_END, $3); }
        |       BLOCK '(' exp ')'
index 40feeb3..d0ceacf 100644 (file)
@@ -3297,7 +3297,19 @@ lang_size_sections
   exp_data_seg.phase = exp_dataseg_none;
   result = lang_size_sections_1 (s, output_section_statement, prev, fill,
                                 dot, relax, check_regions);
-  if (exp_data_seg.phase == exp_dataseg_end_seen)
+  if (exp_data_seg.phase == exp_dataseg_end_seen
+      && link_info.relro && exp_data_seg.relro_end)
+    {
+      /* If DATA_SEGMENT_ALIGN DATA_SEGMENT_RELRO_END pair was seen, try
+        to put exp_data_seg.relro on a (common) page boundary.  */
+
+      exp_data_seg.phase = exp_dataseg_relro_adjust;
+      result = lang_size_sections_1 (s, output_section_statement, prev, fill,
+                                    dot, relax, check_regions);
+      link_info.relro_start = exp_data_seg.base;
+      link_info.relro_end = exp_data_seg.relro_end;
+    }
+  else if (exp_data_seg.phase == exp_dataseg_end_seen)
     {
       /* If DATA_SEGMENT_ALIGN DATA_SEGMENT_END pair was seen, check whether
         a page could be saved in the data segment.  */
index 0e810f5..9545531 100644 (file)
@@ -249,6 +249,7 @@ V_IDENTIFIER [*?.$_a-zA-Z\[\]\-\!\^\\]([*?.$_a-zA-Z0-9\[\]\-\!\^\\]|::)*
 <BOTH,SCRIPT>"LENGTH"          { RTOKEN(LENGTH);}
 <EXPRESSION,BOTH,SCRIPT>"ALIGN"                        { RTOKEN(ALIGN_K);}
 <EXPRESSION,BOTH,SCRIPT>"DATA_SEGMENT_ALIGN"   { RTOKEN(DATA_SEGMENT_ALIGN);}
+<EXPRESSION,BOTH,SCRIPT>"DATA_SEGMENT_RELRO_END"       { RTOKEN(DATA_SEGMENT_RELRO_END);}
 <EXPRESSION,BOTH,SCRIPT>"DATA_SEGMENT_END"     { RTOKEN(DATA_SEGMENT_END);}
 <EXPRESSION,BOTH,SCRIPT>"ADDR"                 { RTOKEN(ADDR);}
 <EXPRESSION,BOTH,SCRIPT>"LOADADDR"             { RTOKEN(LOADADDR);}
index d0e0b12..eb036b0 100644 (file)
@@ -303,6 +303,7 @@ main (int argc, char **argv)
   link_info.new_dtags = FALSE;
   link_info.combreloc = TRUE;
   link_info.eh_frame_hdr = FALSE;
+  link_info.relro = FALSE;
   link_info.strip_discarded = TRUE;
   link_info.strip = strip_none;
   link_info.discard = discard_sec_merge;
index 63551a2..14728ee 100644 (file)
@@ -10,6 +10,8 @@
 #      OTHER_TEXT_SECTIONS - these get put in .text when relocating
 #      OTHER_READWRITE_SECTIONS - other than .data .bss .ctors .sdata ...
 #              (e.g., .PARISC.global)
+#      OTHER_RELRO_SECTIONS - other than .data.rel.ro ...
+#              (e.g. PPC32 .fixup, .got[12])
 #      OTHER_BSS_SECTIONS - other than .bss .sbss ...
 #      OTHER_SECTIONS - at the end
 #      EXECUTABLE_SYMBOLS - symbols that must be defined for an
 #      combination of .fini sections.
 #      STACK_ADDR - start of a .stack section.
 #      OTHER_END_SYMBOLS - symbols to place right at the end of the script.
+#      SEPARATE_GOTPLT - if set, .got.plt should be separate output section,
+#              so that .got can be in the RELRO area.  It should be set to
+#              the number of bytes in the beginning of .got.plt which can be
+#              in the RELRO area as well.
 #
 # When adding sections, do note that the names of some sections are used
 # when specifying the start address of the next.
@@ -74,17 +80,33 @@ test -z "${ALIGNMENT}" && ALIGNMENT="${ELFSIZE} / 8"
 test "$LD_FLAG" = "N" && DATA_ADDR=.
 test -n "$CREATE_SHLIB$CREATE_PIE" && test -n "$SHLIB_DATA_ADDR" && COMMONPAGESIZE=""
 test -z "$CREATE_SHLIB$CREATE_PIE" && test -n "$DATA_ADDR" && COMMONPAGESIZE=""
+test -n "$RELRO_NOW" && unset SEPARATE_GOTPLT
 DATA_SEGMENT_ALIGN="ALIGN(${SEGMENT_SIZE}) + (. & (${MAXPAGESIZE} - 1))"
+DATA_SEGMENT_RELRO_END=""
+DATA_SEGMENT_RELRO_GOTPLT_END=""
 DATA_SEGMENT_END=""
 if test -n "${COMMONPAGESIZE}"; then
   DATA_SEGMENT_ALIGN="ALIGN (${SEGMENT_SIZE}) - ((${MAXPAGESIZE} - .) & (${MAXPAGESIZE} - 1)); . = DATA_SEGMENT_ALIGN (${MAXPAGESIZE}, ${COMMONPAGESIZE})"
   DATA_SEGMENT_END=". = DATA_SEGMENT_END (.);"
+  if test -n "${SEPARATE_GOTPLT}"; then
+    DATA_SEGMENT_RELRO_GOTPLT_END=". = DATA_SEGMENT_RELRO_END (. + ${SEPARATE_GOTPLT});"
+  else
+    DATA_SEGMENT_RELRO_END=". = DATA_SEGMENT_RELRO_END (.);"
+  fi
 fi
 INTERP=".interp       ${RELOCATING-0} : { *(.interp) }"
 PLT=".plt          ${RELOCATING-0} : { *(.plt) }"
-test -z "$GOT" && GOT=".got          ${RELOCATING-0} : { *(.got.plt) *(.got) }"
+if test -z "$GOT"; then
+  if test -z "$SEPARATE_GOTPLT"; then
+    GOT=".got          ${RELOCATING-0} : { *(.got.plt) *(.got) }"
+  else
+    GOT=".got          ${RELOCATING-0} : { *(.got) }"
+    GOTPLT=".got.plt      ${RELOCATING-0} : { ${RELOCATING+${DATA_SEGMENT_RELRO_GOTPLT_END}} *(.got.plt) }"
+  fi
+fi
 DYNAMIC=".dynamic      ${RELOCATING-0} : { *(.dynamic) }"
 RODATA=".rodata       ${RELOCATING-0} : { *(.rodata${RELOCATING+ .rodata.* .gnu.linkonce.r.*}) }"
+DATARELRO=".data.rel.ro : { *(.data.rel.ro.local) *(.data.rel.ro*) }"
 STACKNOTE="/DISCARD/ : { *(.note.GNU-stack) }"
 if test -z "${NO_SMALL_DATA}"; then
   SBSS=".sbss         ${RELOCATING-0} :
@@ -115,7 +137,10 @@ if test -z "${NO_SMALL_DATA}"; then
   .rela.sdata2  ${RELOCATING-0} : { *(.rela.sdata2${RELOCATING+ .rela.sdata2.* .rela.gnu.linkonce.s2.*}) }"
   REL_SBSS2=".rel.sbss2    ${RELOCATING-0} : { *(.rel.sbss2${RELOCATING+ .rel.sbss2.* .rel.gnu.linkonce.sb2.*}) }
   .rela.sbss2   ${RELOCATING-0} : { *(.rela.sbss2${RELOCATING+ .rela.sbss2.* .rela.gnu.linkonce.sb2.*}) }"
+else
+  NO_SMALL_DATA=" "
 fi
+test -n "$SEPARATE_GOTPLT" && SEPARATE_GOTPLT=" "
 CTOR=".ctors        ${CONSTRUCTING-0} : 
   {
     ${CONSTRUCTING+${CTOR_START}}
@@ -211,6 +236,8 @@ eval $COMBRELOCCAT <<EOF
   .rel.rodata   ${RELOCATING-0} : { *(.rel.rodata${RELOCATING+ .rel.rodata.* .rel.gnu.linkonce.r.*}) }
   .rela.rodata  ${RELOCATING-0} : { *(.rela.rodata${RELOCATING+ .rela.rodata.* .rela.gnu.linkonce.r.*}) }
   ${OTHER_READONLY_RELOC_SECTIONS}
+  .rel.data.rel.ro ${RELOCATING-0} : { *(.rel.data.rel.ro${RELOCATING+*}) }
+  .rela.data.rel.ro ${RELOCATING-0} : { *(.rel.data.rel.ro${RELOCATING+*}) }
   .rel.data     ${RELOCATING-0} : { *(.rel.data${RELOCATING+ .rel.data.* .rel.gnu.linkonce.d.*}) }
   .rela.data    ${RELOCATING-0} : { *(.rela.data${RELOCATING+ .rela.data.* .rela.gnu.linkonce.d.*}) }
   .rel.tdata   ${RELOCATING-0} : { *(.rel.tdata${RELOCATING+ .rel.tdata.* .rel.gnu.linkonce.td.*}) }
@@ -291,6 +318,14 @@ cat <<EOF
   ${CREATE_SHLIB+${RELOCATING+. = ${SHLIB_DATA_ADDR-${DATA_SEGMENT_ALIGN}};}}
   ${CREATE_PIE+${RELOCATING+. = ${SHLIB_DATA_ADDR-${DATA_SEGMENT_ALIGN}};}}
 
+  /* Exception handling  */
+  .eh_frame     ${RELOCATING-0} : { KEEP (*(.eh_frame)) }
+  .gcc_except_table ${RELOCATING-0} : { *(.gcc_except_table) }
+
+  /* Thread Local Storage sections  */
+  .tdata       ${RELOCATING-0} : { *(.tdata${RELOCATING+ .tdata.* .gnu.linkonce.td.*}) }
+  .tbss                ${RELOCATING-0} : { *(.tbss${RELOCATING+ .tbss.* .gnu.linkonce.tb.*})${RELOCATING+ *(.tcommon)} }
+
   /* Ensure the __preinit_array_start label is properly aligned.  We
      could instead move the label definition inside the section, but
      the linker would then create the section even if it turns out to
@@ -308,6 +343,21 @@ cat <<EOF
   .fini_array   ${RELOCATING-0} : { *(.fini_array) }
   ${RELOCATING+${CREATE_SHLIB-PROVIDE (__fini_array_end = .);}}
 
+  ${RELOCATING+${CTOR}}
+  ${RELOCATING+${DTOR}}
+  .jcr          ${RELOCATING-0} : { KEEP (*(.jcr)) }
+
+  ${RELOCATING+${DATARELRO}}
+  ${OTHER_RELRO_SECTIONS}
+  ${TEXT_DYNAMIC-${DYNAMIC}}
+  ${NO_SMALL_DATA+${RELRO_NOW+${GOT}}}
+  ${NO_SMALL_DATA+${RELRO_NOW-${SEPARATE_GOTPLT+${GOT}}}}
+  ${NO_SMALL_DATA+${RELRO_NOW-${SEPARATE_GOTPLT+${GOTPLT}}}}
+  ${RELOCATING+${DATA_SEGMENT_RELRO_END}}
+  ${NO_SMALL_DATA+${RELRO_NOW-${SEPARATE_GOTPLT-${GOT}}}}
+
+  ${DATA_PLT+${PLT}}
+
   .data         ${RELOCATING-0} :
   {
     ${RELOCATING+${DATA_START_SYMBOLS}}
@@ -316,19 +366,10 @@ cat <<EOF
     ${CONSTRUCTING+SORT(CONSTRUCTORS)}
   }
   .data1        ${RELOCATING-0} : { *(.data1) }
-  .tdata       ${RELOCATING-0} : { *(.tdata${RELOCATING+ .tdata.* .gnu.linkonce.td.*}) }
-  .tbss                ${RELOCATING-0} : { *(.tbss${RELOCATING+ .tbss.* .gnu.linkonce.tb.*})${RELOCATING+ *(.tcommon)} }
-  .eh_frame     ${RELOCATING-0} : { KEEP (*(.eh_frame)) }
-  .gcc_except_table ${RELOCATING-0} : { KEEP (*(.gcc_except_table)) *(.gcc_except_table.*) }
   ${WRITABLE_RODATA+${RODATA}}
   ${OTHER_READWRITE_SECTIONS}
-  ${TEXT_DYNAMIC-${DYNAMIC}}
-  ${RELOCATING+${CTOR}}
-  ${RELOCATING+${DTOR}}
-  .jcr          ${RELOCATING-0} : { KEEP (*(.jcr)) }
-  ${DATA_PLT+${PLT}}
   ${RELOCATING+${OTHER_GOT_SYMBOLS}}
-  ${GOT}
+  ${NO_SMALL_DATA-${GOT}}
   ${OTHER_GOT_SECTIONS}
   ${CREATE_SHLIB+${SDATA2}}
   ${CREATE_SHLIB+${SBSS2}}
index acb5c95..3abac4c 100644 (file)
@@ -1,3 +1,67 @@
+2004-05-11  Jakub Jelinek  <jakub@redhat.com>
+
+       * ld-i386/tlspic.rd: Adjust for section reordering changes
+       and removal of unneeded STT_SECTION symbols from .dynsym.
+       * ld-i386/tlspic.dd: Likewise.
+       * ld-i386/tlspic.sd: Likewise.
+       * ld-i386/tlsbin.rd: Likewise.
+       * ld-i386/tlsbinpic.s: Likewise.
+       * ld-i386/tlsbin.dd: Likewise.
+       * ld-i386/tlsbin.sd: Likewise.
+       * ld-i386/tlsnopic.rd: Likewise.
+       * ld-i386/tlsnopic1.s: Likewise.
+       * ld-i386/combreloc.d: Likewise.
+       * ld-i386/tlsnopic.dd: Likewise.
+       * ld-i386/tlsnopic.sd: Likewise.
+       * ld-x86-64/tlspic.rd: Likewise.
+       * ld-x86-64/tlspic.dd: Likewise.
+       * ld-x86-64/tlsbin.dd: Likewise.
+       * ld-x86-64/tlspic.sd: Likewise.
+       * ld-x86-64/tlsbin.sd: Likewise.
+       * ld-x86-64/tlspic.td: Likewise.
+       * ld-x86-64/tlsbin.td: Likewise.
+       * ld-x86-64/tlsbin.rd: Likewise.
+       * ld-s390/tlspic1.s: Likewise.
+       * ld-s390/tlsbinpic.s: Likewise.
+       * ld-s390/tlspic.rd: Likewise.
+       * ld-s390/tlsbin.rd: Likewise.
+       * ld-s390/tlspic.dd: Likewise.
+       * ld-s390/tlsbin.dd: Likewise.
+       * ld-s390/tlsbin.sd: Likewise.
+       * ld-s390/tlsbin.td: Likewise.
+       * ld-s390/tlspic.sd: Likewise.
+       * ld-s390/tlspic.td: Likewise.
+       * ld-s390/tlspic1_64.s: Likewise.
+       * ld-s390/tlsbinpic_64.s: Likewise.
+       * ld-s390/tlspic_64.rd: Likewise.
+       * ld-s390/tlsbin_64.rd: Likewise.
+       * ld-s390/tlspic_64.dd: Likewise.
+       * ld-s390/tlsbin_64.dd: Likewise.
+       * ld-s390/tlspic_64.sd: Likewise.
+       * ld-s390/tlspic_64.td: Likewise.
+       * ld-s390/tlsbin_64.td: Likewise.
+       * ld-s390/tlsbin_64.sd: Likewise.
+       * ld-powerpc/tlsexe32.r: Likewise.
+       * ld-powerpc/tlsso32.r: Likewise.
+       * ld-powerpc/tlsso32.d: Likewise.
+       * ld-powerpc/tlsso32.g: Likewise.
+       * ld-powerpc/tlsso32.t: Likewise.
+       * ld-powerpc/tlsexe.r: Likewise.
+       * ld-powerpc/tlsso.r: Likewise.
+       * ld-powerpc/tlsso.g: Likewise.
+       * ld-powerpc/tlsexetoc.r: Likewise.
+       * ld-powerpc/tlstocso.r: Likewise.
+       * ld-powerpc/tlstocso.g: Likewise.
+       * ld-ia64/tlspic.rd: Likewise.
+       * ld-ia64/tlspic.dd: Likewise.
+       * ld-ia64/tlspic.sd: Likewise.
+       * ld-ia64/tlspic.td: Likewise.
+       * ld-ia64/tlsbin.rd: Likewise.
+       * ld-ia64/tlsbin.sd: Likewise.
+       * ld-ia64/tlsbin.td: Likewise.
+       * ld-elfvsb/elfvsb.exp: XFAIL non-PIC load offset tests on s390x.
+       * ld-shared/shared.exp: Likewise.
+
 2004-05-10  John Paul Wallington  <jpw@gnu.org>
 
        * ld-mmix/bspec2.d: Update sh_info to decimal.
index cd7c15f..b0adabe 100644 (file)
@@ -292,6 +292,7 @@ proc visibility_run {visibility} {
                 || [ string match $visibility "protected_weak" ]
                 || [ string match $visibility "normal" ] } {
                setup_xfail "powerpc-*-linux*"
+               setup_xfail "s390x-*-linux*"
                if { [istarget sparc*-*-linux*] && [is_elf64 $tmpdir/mainnp.o] } {
                    setup_xfail "sparc*-*-linux*"
                }
index 762f481..a6f482d 100644 (file)
@@ -8,10 +8,10 @@
 
 Relocation section '.rel.dyn' at offset 0x[0-9a-f]+ contains 4 entries:
  Offset     Info    Type            Sym.Value  Sym. Name
+[0-9a-f]+  [0-9a-f]+06 R_386_GLOB_DAT    [0-9a-f]+   _start
 [0-9a-f]+  [0-9a-f]+01 R_386_32          [0-9a-f]+   _start
 [0-9a-f]+  [0-9a-f]+01 R_386_32          [0-9a-f]+   _start
 [0-9a-f]+  [0-9a-f]+01 R_386_32          [0-9a-f]+   _start
-[0-9a-f]+  [0-9a-f]+06 R_386_GLOB_DAT    [0-9a-f]+   _start
 
 Relocation section '.rel.plt' at offset 0x[0-9a-f]+ contains 1 entries:
  Offset     Info    Type            Sym.Value  Sym. Name
index 3590122..08a1f31 100644 (file)
@@ -25,14 +25,14 @@ Disassembly of section .text:
  8049004:      50[     ]+push   %eax
  8049005:      e8 00 00 00 00[         ]+call   804900a <fn2\+0xa>
  804900a:      5b[     ]+pop    %ebx
- 804900b:      81 c3 f6 10 00 00[      ]+add    \$0x10f6,%ebx
+ 804900b:      81 c3 1a 11 00 00[      ]+add    \$0x111a,%ebx
  8049011:      90[     ]+nop *
  8049012:      90[     ]+nop *
  8049013:      90[     ]+nop *
  8049014:      90[     ]+nop *
 #  GD -> IE because variable is not defined in executable
  8049015:      65 a1 00 00 00 00[      ]+mov    %gs:0x0,%eax
- 804901b:      2b 83 2c 00 00 00[      ]+sub    0x2c\(%ebx\),%eax
+ 804901b:      2b 83 f8 ff ff ff[      ]+sub    0xfffffff8\(%ebx\),%eax
 #                              ->R_386_TLS_TPOFF32     sG1
  8049021:      90[     ]+nop *
  8049022:      90[     ]+nop *
@@ -41,7 +41,7 @@ Disassembly of section .text:
 #  GD -> IE because variable is not defined in executable where
 #  the variable is referenced through @gottpoff too
  8049025:      65 a1 00 00 00 00[      ]+mov    %gs:0x0,%eax
- 804902b:      2b 83 1c 00 00 00[      ]+sub    0x1c\(%ebx\),%eax
+ 804902b:      2b 83 e8 ff ff ff[      ]+sub    0xffffffe8\(%ebx\),%eax
 #                              ->R_386_TLS_TPOFF32     sG2
  8049031:      90[     ]+nop *
  8049032:      90[     ]+nop *
@@ -50,7 +50,7 @@ Disassembly of section .text:
 #  GD -> IE because variable is not defined in executable where
 #  the variable is referenced through @gotntpoff too
  8049035:      65 a1 00 00 00 00[      ]+mov    %gs:0x0,%eax
- 804903b:      2b 83 10 00 00 00[      ]+sub    0x10\(%ebx\),%eax
+ 804903b:      2b 83 dc ff ff ff[      ]+sub    0xffffffdc\(%ebx\),%eax
 #                              ->R_386_TLS_TPOFF       sG3
  8049041:      90[     ]+nop *
  8049042:      90[     ]+nop *
@@ -59,7 +59,7 @@ Disassembly of section .text:
 #  GD -> IE because variable is not defined in executable where
 #  the variable is referenced through @gottpoff and @gotntpoff too
  8049045:      65 a1 00 00 00 00[      ]+mov    %gs:0x0,%eax
- 804904b:      2b 83 20 00 00 00[      ]+sub    0x20\(%ebx\),%eax
+ 804904b:      2b 83 ec ff ff ff[      ]+sub    0xffffffec\(%ebx\),%eax
 #                              ->R_386_TLS_TPOFF32     sG4
  8049051:      90[     ]+nop *
  8049052:      90[     ]+nop *
@@ -67,7 +67,7 @@ Disassembly of section .text:
  8049054:      90[     ]+nop *
 #  GD -> LE with global variable defined in executable
  8049055:      65 a1 00 00 00 00[      ]+mov    %gs:0x0,%eax
- 804905b:      81 e8 a0 00 00 00[      ]+sub    \$0xa0,%eax
+ 804905b:      81 e8 00 10 00 00[      ]+sub    \$0x1000,%eax
 #                                                      sg1
  8049061:      90[     ]+nop *
  8049062:      90[     ]+nop *
@@ -75,7 +75,7 @@ Disassembly of section .text:
  8049064:      90[     ]+nop *
 #  GD -> LE with local variable defined in executable
  8049065:      65 a1 00 00 00 00[      ]+mov    %gs:0x0,%eax
- 804906b:      81 e8 80 00 00 00[      ]+sub    \$0x80,%eax
+ 804906b:      81 e8 e0 0f 00 00[      ]+sub    \$0xfe0,%eax
 #                                                      sl1
  8049071:      90[     ]+nop *
  8049072:      90[     ]+nop *
@@ -83,7 +83,7 @@ Disassembly of section .text:
  8049074:      90[     ]+nop *
 #  GD -> LE with hidden variable defined in executable
  8049075:      65 a1 00 00 00 00[      ]+mov    %gs:0x0,%eax
- 804907b:      81 e8 60 00 00 00[      ]+sub    \$0x60,%eax
+ 804907b:      81 e8 c0 0f 00 00[      ]+sub    \$0xfc0,%eax
 #                                                      sh1
  8049081:      90[     ]+nop *
  8049082:      90[     ]+nop *
@@ -95,11 +95,11 @@ Disassembly of section .text:
  804908c:      8d 74 26 00[    ]+lea    0x0\(%esi\),%esi
  8049090:      90[     ]+nop *
  8049091:      90[     ]+nop *
- 8049092:      8d 90 80 ff ff ff[      ]+lea    0xffffff80\(%eax\),%edx
+ 8049092:      8d 90 20 f0 ff ff[      ]+lea    0xfffff020\(%eax\),%edx
 #                                                      sl1
  8049098:      90[     ]+nop *
  8049099:      90[     ]+nop *
- 804909a:      8d 88 84 ff ff ff[      ]+lea    0xffffff84\(%eax\),%ecx
+ 804909a:      8d 88 24 f0 ff ff[      ]+lea    0xfffff024\(%eax\),%ecx
 #                                                      sl2
  80490a0:      90[     ]+nop *
  80490a1:      90[     ]+nop *
@@ -111,21 +111,21 @@ Disassembly of section .text:
  80490ab:      8d 74 26 00[    ]+lea    0x0\(%esi\),%esi
  80490af:      90[     ]+nop *
  80490b0:      90[     ]+nop *
- 80490b1:      8d 90 a0 ff ff ff[      ]+lea    0xffffffa0\(%eax\),%edx
+ 80490b1:      8d 90 40 f0 ff ff[      ]+lea    0xfffff040\(%eax\),%edx
 #                                                      sh1
  80490b7:      90[     ]+nop *
  80490b8:      90[     ]+nop *
- 80490b9:      8d 88 a4 ff ff ff[      ]+lea    0xffffffa4\(%eax\),%ecx
+ 80490b9:      8d 88 44 f0 ff ff[      ]+lea    0xfffff044\(%eax\),%ecx
 #                                                      sh2
  80490bf:      90[     ]+nop *
  80490c0:      90[     ]+nop *
  80490c1:      90[     ]+nop *
  80490c2:      90[     ]+nop *
 #  @gottpoff IE against global var
- 80490c3:      65 8b 0d 00 00 00 00    mov    %gs:0x0,%ecx
+ 80490c3:      65 8b 0d 00 00 00 00[   ]+mov    %gs:0x0,%ecx
  80490ca:      90[     ]+nop *
  80490cb:      90[     ]+nop *
- 80490cc:      2b 8b 1c 00 00 00[      ]+sub    0x1c\(%ebx\),%ecx
+ 80490cc:      2b 8b e8 ff ff ff[      ]+sub    0xffffffe8\(%ebx\),%ecx
 #                              ->R_386_TLS_TPOFF32     sG2
  80490d2:      90[     ]+nop *
  80490d3:      90[     ]+nop *
@@ -135,17 +135,17 @@ Disassembly of section .text:
  80490d6:      65 a1 00 00 00 00[      ]+mov    %gs:0x0,%eax
  80490dc:      90[     ]+nop *
  80490dd:      90[     ]+nop *
- 80490de:      2b 83 20 00 00 00[      ]+sub    0x20\(%ebx\),%eax
+ 80490de:      2b 83 ec ff ff ff[      ]+sub    0xffffffec\(%ebx\),%eax
 #                              ->R_386_TLS_TPOFF32     sG4
  80490e4:      90[     ]+nop *
  80490e5:      90[     ]+nop *
  80490e6:      90[     ]+nop *
  80490e7:      90[     ]+nop *
 #  @gotntpoff IE against global var
- 80490e8:      65 8b 0d 00 00 00 00    mov    %gs:0x0,%ecx
+ 80490e8:      65 8b 0d 00 00 00 00[   ]+mov    %gs:0x0,%ecx
  80490ef:      90[     ]+nop *
  80490f0:      90[     ]+nop *
- 80490f1:      03 8b 10 00 00 00[      ]+add    0x10\(%ebx\),%ecx
+ 80490f1:      03 8b dc ff ff ff[      ]+add    0xffffffdc\(%ebx\),%ecx
 #                              ->R_386_TLS_TPOFF       sG3
  80490f7:      90[     ]+nop *
  80490f8:      90[     ]+nop *
@@ -155,37 +155,37 @@ Disassembly of section .text:
  80490fb:      65 a1 00 00 00 00[      ]+mov    %gs:0x0,%eax
  8049101:      90[     ]+nop *
  8049102:      90[     ]+nop *
- 8049103:      03 83 24 00 00 00[      ]+add    0x24\(%ebx\),%eax
+ 8049103:      03 83 f0 ff ff ff[      ]+add    0xfffffff0\(%ebx\),%eax
 #                              ->R_386_TLS_TPOFF       sG4
  8049109:      90[     ]+nop *
  804910a:      90[     ]+nop *
  804910b:      90[     ]+nop *
  804910c:      90[     ]+nop *
 #  @gottpoff IE -> LE against global var defined in exec
- 804910d:      65 8b 0d 00 00 00 00    mov    %gs:0x0,%ecx
+ 804910d:      65 8b 0d 00 00 00 00[   ]+mov    %gs:0x0,%ecx
  8049114:      90[     ]+nop *
  8049115:      90[     ]+nop *
- 8049116:      81 e9 a0 00 00 00[      ]+sub    \$0xa0,%ecx
+ 8049116:      81 e9 00 10 00 00[      ]+sub    \$0x1000,%ecx
 #                                                      sg1
  804911c:      90[     ]+nop *
  804911d:      90[     ]+nop *
  804911e:      90[     ]+nop *
  804911f:      90[     ]+nop *
 #  @gotntpoff IE -> LE against local var
- 8049120:      65 8b 0d 00 00 00 00    mov    %gs:0x0,%ecx
+ 8049120:      65 8b 0d 00 00 00 00[   ]+mov    %gs:0x0,%ecx
  8049127:      90[     ]+nop *
  8049128:      90[     ]+nop *
- 8049129:      81 c0 80 ff ff ff[      ]+add    \$0xffffff80,%eax
+ 8049129:      81 c0 20 f0 ff ff[      ]+add    \$0xfffff020,%eax
 #                                                      sl1
  804912f:      90[     ]+nop *
  8049130:      90[     ]+nop *
  8049131:      90[     ]+nop *
  8049132:      90[     ]+nop *
 #  @gottpoff IE -> LE against hidden var
- 8049133:      65 8b 0d 00 00 00 00    mov    %gs:0x0,%ecx
+ 8049133:      65 8b 0d 00 00 00 00[   ]+mov    %gs:0x0,%ecx
  804913a:      90[     ]+nop *
  804913b:      90[     ]+nop *
- 804913c:      81 e9 60 00 00 00[      ]+sub    \$0x60,%ecx
+ 804913c:      81 e9 c0 0f 00 00[      ]+sub    \$0xfc0,%ecx
 #                                                      sh1
  8049142:      90[     ]+nop *
  8049143:      90[     ]+nop *
@@ -193,7 +193,7 @@ Disassembly of section .text:
  8049145:      90[     ]+nop *
 #  Direct access through %gs
 #  @gotntpoff IE against global var
- 8049146:      8b 8b 14 00 00 00[      ]+mov    0x14\(%ebx\),%ecx
+ 8049146:      8b 8b e0 ff ff ff[      ]+mov    0xffffffe0\(%ebx\),%ecx
 #                              ->R_386_TLS_TPOFF       sG5
  804914c:      90[     ]+nop *
  804914d:      90[     ]+nop *
@@ -203,7 +203,7 @@ Disassembly of section .text:
  8049153:      90[     ]+nop *
  8049154:      90[     ]+nop *
 #  @gotntpoff IE->LE against local var
- 8049155:      c7 c0 90 ff ff ff[      ]+mov    \$0xffffff90,%eax
+ 8049155:      c7 c0 30 f0 ff ff[      ]+mov    \$0xfffff030,%eax
 #                                                      sl5
  804915b:      90[     ]+nop *
  804915c:      90[     ]+nop *
@@ -213,7 +213,7 @@ Disassembly of section .text:
  8049162:      90[     ]+nop *
  8049163:      90[     ]+nop *
 #  @gotntpoff IE->LE against hidden var
- 8049164:      c7 c2 b0 ff ff ff[      ]+mov    \$0xffffffb0,%edx
+ 8049164:      c7 c2 50 f0 ff ff[      ]+mov    \$0xfffff050,%edx
 #                                                      sh5
  804916a:      90[     ]+nop *
  804916b:      90[     ]+nop *
@@ -226,21 +226,21 @@ Disassembly of section .text:
  8049176:      c9[     ]+leave *
  8049177:      c3[     ]+ret *
 
-08049178 <_start>:
+0+8049178 <_start>:
  8049178:      55[     ]+push   %ebp
  8049179:      89 e5[  ]+mov    %esp,%ebp
  804917b:      e8 00 00 00 00[         ]+call   8049180 <_start\+0x8>
  8049180:      59[     ]+pop    %ecx
- 8049181:      81 c1 80 0f 00 00[      ]+add    \$0xf80,%ecx
+ 8049181:      81 c1 a4 0f 00 00[      ]+add    \$0xfa4,%ecx
  8049187:      90[     ]+nop *
  8049188:      90[     ]+nop *
  8049189:      90[     ]+nop *
  804918a:      90[     ]+nop *
 #  @gottpoff IE against global var
- 804918b:      65 8b 15 00 00 00 00    mov    %gs:0x0,%edx
+ 804918b:      65 8b 15 00 00 00 00[   ]+mov    %gs:0x0,%edx
  8049192:      90[     ]+nop *
  8049193:      90[     ]+nop *
- 8049194:      2b 91 28 00 00 00[      ]+sub    0x28\(%ecx\),%edx
+ 8049194:      2b 91 f4 ff ff ff[      ]+sub    0xfffffff4\(%ecx\),%edx
 #                              ->R_386_TLS_TPOFF32     sG6
  804919a:      90[     ]+nop *
  804919b:      90[     ]+nop *
@@ -250,14 +250,14 @@ Disassembly of section .text:
  804919e:      65 a1 00 00 00 00[      ]+mov    %gs:0x0,%eax
  80491a4:      90[     ]+nop *
  80491a5:      90[     ]+nop *
- 80491a6:      03 05 18 a1 04 08[      ]+add    0x804a118,%eax
+ 80491a6:      03 05 08 a1 04 08[      ]+add    0x804a108,%eax
 #                              ->R_386_TLS_TPOFF       sG7
  80491ac:      90[     ]+nop *
  80491ad:      90[     ]+nop *
  80491ae:      90[     ]+nop *
  80491af:      90[     ]+nop *
 #  @indntpoff direct %gs access IE against global var
- 80491b0:      8b 15 30 a1 04 08[      ]+mov    0x804a130,%edx
+ 80491b0:      8b 15 20 a1 04 08[      ]+mov    0x804a120,%edx
 #                              ->R_386_TLS_TPOFF       sG8
  80491b6:      90[     ]+nop *
  80491b7:      90[     ]+nop *
@@ -267,10 +267,10 @@ Disassembly of section .text:
  80491bd:      90[     ]+nop *
  80491be:      90[     ]+nop *
 #  @gottpoff IE -> LE against global var defined in exec
- 80491bf:      65 8b 15 00 00 00 00    mov    %gs:0x0,%edx
+ 80491bf:      65 8b 15 00 00 00 00[   ]+mov    %gs:0x0,%edx
  80491c6:      90[     ]+nop *
  80491c7:      90[     ]+nop *
- 80491c8:      81 ea 2c 00 00 00[      ]+sub    \$0x2c,%edx
+ 80491c8:      81 ea 8c 0f 00 00[      ]+sub    \$0xf8c,%edx
 #                                                      bg6
  80491ce:      90[     ]+nop *
  80491cf:      90[     ]+nop *
@@ -280,7 +280,7 @@ Disassembly of section .text:
  80491d2:      65 a1 00 00 00 00[      ]+mov    %gs:0x0,%eax
  80491d8:      90[     ]+nop *
  80491d9:      90[     ]+nop *
- 80491da:      81 c0 d8 ff ff ff[      ]+add    \$0xffffffd8,%eax
+ 80491da:      81 c0 78 f0 ff ff[      ]+add    \$0xfffff078,%eax
 #                                                      bg7
  80491e0:      90[     ]+nop *
  80491e1:      90[     ]+nop *
@@ -288,7 +288,7 @@ Disassembly of section .text:
  80491e3:      90[     ]+nop *
 #  @indntpoff direct %gs access IE -> LE against global var defined
 #  in exec
- 80491e4:      c7 c2 dc ff ff ff[      ]+mov    \$0xffffffdc,%edx
+ 80491e4:      c7 c2 7c f0 ff ff[      ]+mov    \$0xfffff07c,%edx
 #                                                      bg8
  80491ea:      90[     ]+nop *
  80491eb:      90[     ]+nop *
@@ -298,10 +298,10 @@ Disassembly of section .text:
  80491f1:      90[     ]+nop *
  80491f2:      90[     ]+nop *
 #  @gottpoff IE -> LE against local var
- 80491f3:      65 8b 15 00 00 00 00    mov    %gs:0x0,%edx
+ 80491f3:      65 8b 15 00 00 00 00[   ]+mov    %gs:0x0,%edx
  80491fa:      90[     ]+nop *
  80491fb:      90[     ]+nop *
- 80491fc:      81 ea 0c 00 00 00[      ]+sub    \$0xc,%edx
+ 80491fc:      81 ea 6c 0f 00 00[      ]+sub    \$0xf6c,%edx
 #                                                      bl6
  8049202:      90[     ]+nop *
  8049203:      90[     ]+nop *
@@ -311,14 +311,14 @@ Disassembly of section .text:
  8049206:      65 a1 00 00 00 00[      ]+mov    %gs:0x0,%eax
  804920c:      90[     ]+nop *
  804920d:      90[     ]+nop *
- 804920e:      81 c0 f8 ff ff ff[      ]+add    \$0xfffffff8,%eax
+ 804920e:      81 c0 98 f0 ff ff[      ]+add    \$0xfffff098,%eax
 #                                                      bl7
  8049214:      90[     ]+nop *
  8049215:      90[     ]+nop *
  8049216:      90[     ]+nop *
  8049217:      90[     ]+nop *
 #  @indntpoff direct %gs access IE -> LE against local var
- 8049218:      c7 c2 fc ff ff ff[      ]+mov    \$0xfffffffc,%edx
+ 8049218:      c7 c2 9c f0 ff ff[      ]+mov    \$0xfffff09c,%edx
 #                                                      bl8
  804921e:      90[     ]+nop *
  804921f:      90[     ]+nop *
@@ -328,10 +328,10 @@ Disassembly of section .text:
  8049225:      90[     ]+nop *
  8049226:      90[     ]+nop *
 #  @gottpoff IE -> LE against hidden but not local var
- 8049227:      65 8b 15 00 00 00 00    mov    %gs:0x0,%edx
+ 8049227:      65 8b 15 00 00 00 00[   ]+mov    %gs:0x0,%edx
  804922e:      90[     ]+nop *
  804922f:      90[     ]+nop *
- 8049230:      81 ea 4c 00 00 00[      ]+sub    \$0x4c,%edx
+ 8049230:      81 ea ac 0f 00 00[      ]+sub    \$0xfac,%edx
 #                                                      sh6
  8049236:      90[     ]+nop *
  8049237:      90[     ]+nop *
@@ -341,7 +341,7 @@ Disassembly of section .text:
  804923a:      65 a1 00 00 00 00[      ]+mov    %gs:0x0,%eax
  8049240:      90[     ]+nop *
  8049241:      90[     ]+nop *
- 8049242:      81 c0 b8 ff ff ff[      ]+add    \$0xffffffb8,%eax
+ 8049242:      81 c0 58 f0 ff ff[      ]+add    \$0xfffff058,%eax
 #                                                      sh7
  8049248:      90[     ]+nop *
  8049249:      90[     ]+nop *
@@ -349,7 +349,7 @@ Disassembly of section .text:
  804924b:      90[     ]+nop *
 #  @indntpoff direct %gs access IE -> LE against hidden but not
 #  local var
- 804924c:      c7 c2 bc ff ff ff[      ]+mov    \$0xffffffbc,%edx
+ 804924c:      c7 c2 5c f0 ff ff[      ]+mov    \$0xfffff05c,%edx
 #                                                      sh8
  8049252:      90[     ]+nop *
  8049253:      90[     ]+nop *
@@ -359,7 +359,7 @@ Disassembly of section .text:
  8049259:      90[     ]+nop *
  804925a:      90[     ]+nop *
 #  LE @tpoff, global var defined in exec
- 804925b:      ba a0 00 00 00[         ]+mov    \$0xa0,%edx
+ 804925b:      ba 00 10 00 00[         ]+mov    \$0x1000,%edx
 #                                                      sg1
  8049260:      90[     ]+nop *
  8049261:      90[     ]+nop *
@@ -372,11 +372,11 @@ Disassembly of section .text:
  804926e:      90[     ]+nop *
  804926f:      90[     ]+nop *
 #  LE @tpoff, local var
- 8049270:      b8 1f 00 00 00[         ]+mov    \$0x1f,%eax
+ 8049270:      b8 7f 0f 00 00[         ]+mov    \$0xf7f,%eax
 #                                                      bl1+1
  8049275:      90[     ]+nop *
  8049276:      90[     ]+nop *
- 8049277:      65 8b 15 00 00 00 00    mov    %gs:0x0,%edx
+ 8049277:      65 8b 15 00 00 00 00[   ]+mov    %gs:0x0,%edx
  804927e:      90[     ]+nop *
  804927f:      90[     ]+nop *
  8049280:      29 c2[  ]+sub    %eax,%edx
@@ -385,11 +385,11 @@ Disassembly of section .text:
  8049284:      90[     ]+nop *
  8049285:      90[     ]+nop *
 #  LE @tpoff, hidden var defined in exec
- 8049286:      b8 5d 00 00 00[         ]+mov    \$0x5d,%eax
+ 8049286:      b8 bd 0f 00 00[         ]+mov    \$0xfbd,%eax
 #                                                      sh1+3
  804928b:      90[     ]+nop *
  804928c:      90[     ]+nop *
- 804928d:      65 8b 15 00 00 00 00    mov    %gs:0x0,%edx
+ 804928d:      65 8b 15 00 00 00 00[   ]+mov    %gs:0x0,%edx
  8049294:      90[     ]+nop *
  8049295:      90[     ]+nop *
  8049296:      29 c2[  ]+sub    %eax,%edx
@@ -401,18 +401,18 @@ Disassembly of section .text:
  804929c:      65 a1 00 00 00 00[      ]+mov    %gs:0x0,%eax
  80492a2:      90[     ]+nop *
  80492a3:      90[     ]+nop *
- 80492a4:      8d 90 64 ff ff ff[      ]+lea    0xffffff64\(%eax\),%edx
+ 80492a4:      8d 90 04 f0 ff ff[      ]+lea    0xfffff004\(%eax\),%edx
 #                                                      sg2
  80492aa:      90[     ]+nop *
  80492ab:      90[     ]+nop *
  80492ac:      90[     ]+nop *
  80492ad:      90[     ]+nop *
 #  LE @ntpoff, local var, non-canonical sequence
- 80492ae:      b8 e6 ff ff ff[         ]+mov    \$0xffffffe6,%eax
+ 80492ae:      b8 86 f0 ff ff[         ]+mov    \$0xfffff086,%eax
 #                                                      bl2+2
  80492b3:      90[     ]+nop *
  80492b4:      90[     ]+nop *
- 80492b5:      65 8b 15 00 00 00 00    mov    %gs:0x0,%edx
+ 80492b5:      65 8b 15 00 00 00 00[   ]+mov    %gs:0x0,%edx
  80492bc:      90[     ]+nop *
  80492bd:      90[     ]+nop *
  80492be:      01 c2[  ]+add    %eax,%edx
@@ -421,31 +421,31 @@ Disassembly of section .text:
  80492c2:      90[     ]+nop *
  80492c3:      90[     ]+nop *
 #  LE @ntpoff, hidden var defined in exec, non-canonical sequence
- 80492c4:      65 8b 15 00 00 00 00    mov    %gs:0x0,%edx
+ 80492c4:      65 8b 15 00 00 00 00[   ]+mov    %gs:0x0,%edx
  80492cb:      90[     ]+nop *
  80492cc:      90[     ]+nop *
- 80492cd:      81 c2 a5 ff ff ff[      ]+add    \$0xffffffa5,%edx
+ 80492cd:      81 c2 45 f0 ff ff[      ]+add    \$0xfffff045,%edx
 #                                                      sh2+1
  80492d3:      90[     ]+nop *
  80492d4:      90[     ]+nop *
  80492d5:      90[     ]+nop *
  80492d6:      90[     ]+nop *
 #  LE @ntpoff, global var defined in exec
- 80492d7:      65 a1 68 ff ff ff[      ]+mov    %gs:0xffffff68,%eax
+ 80492d7:      65 a1 08 f0 ff ff[      ]+mov    %gs:0xfffff008,%eax
 #                                                      sg3
  80492dd:      90[     ]+nop *
  80492de:      90[     ]+nop *
  80492df:      90[     ]+nop *
  80492e0:      90[     ]+nop *
 #  LE @ntpoff, local var
- 80492e1:      65 8b 15 eb ff ff ff    mov    %gs:0xffffffeb,%edx
+ 80492e1:      65 8b 15 8b f0 ff ff[   ]+mov    %gs:0xfffff08b,%edx
 #                                                      bl3+3
  80492e8:      90[     ]+nop *
  80492e9:      90[     ]+nop *
  80492ea:      90[     ]+nop *
  80492eb:      90[     ]+nop *
 #  LE @ntpoff, hidden var defined in exec
- 80492ec:      65 8b 15 a9 ff ff ff    mov    %gs:0xffffffa9,%edx
+ 80492ec:      65 8b 15 49 f0 ff ff[   ]+mov    %gs:0xfffff049,%edx
 #                                                      sh3+1
  80492f3:      90[     ]+nop *
  80492f4:      90[     ]+nop *
index a7fb144..d04b1d2 100644 (file)
@@ -5,7 +5,7 @@
 #readelf: -Ssrl
 #target: i?86-*-*
 
-There are 18 section headers, starting at offset 0x[0-9a-f]+:
+There are 19 section headers, starting at offset 0x[0-9a-f]+:
 
 Section Headers:
   \[Nr\] Name +Type +Addr +Off +Size +ES Flg Lk Inf Al
@@ -18,15 +18,16 @@ Section Headers:
   \[ 6\] \.rel.plt +.*
   \[ 7\] \.plt +.*
   \[ 8\] \.text +PROGBITS +0+8049000 .*
-  \[ 9\] \.data +.*
-  \[10\] .tdata +PROGBITS +0+804a000 [0-9a-f]+ 000060 00 WAT  0   0  1
-  \[11\] .tbss +NOBITS +[0-9a-f]+ [0-9a-f]+ 000040 00 WAT  0   0  1
-  \[12\] \.dynamic +DYNAMIC +0+804a060 .*
-  \[13\] \.got +PROGBITS +0+804a100 .*
-  \[14\] \.bss +.*
-  \[15\] \.shstrtab +.*
-  \[16\] \.symtab +.*
-  \[17\] \.strtab +.*
+  \[ 9\] \.tdata +PROGBITS +0+804a000 [0-9a-f]+ 000060 00 WAT  0   0 4096
+  \[10\] \.tbss +NOBITS +[0-9a-f]+ [0-9a-f]+ 000040 00 WAT  0   0  1
+  \[11\] \.dynamic +DYNAMIC +0+804a060 .*
+  \[12\] \.got +PROGBITS +0+804a100 .*
+  \[13\] \.got\.plt +PROGBITS +0+804a124 .*
+  \[14\] \.data +.*
+  \[15\] \.bss +.*
+  \[16\] \.shstrtab +.*
+  \[17\] \.symtab +.*
+  \[18\] \.strtab +.*
 Key to Flags:
 .*
 .*
@@ -44,124 +45,125 @@ Program Headers:
   LOAD.*
   LOAD.*
   DYNAMIC.*
-  TLS +0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ 0x0+60 0x0+a0 R +0x1
+  TLS +0x[0-9a-f]+ 0x[0-9a-f]+ 0x[0-9a-f]+ 0x0+60 0x0+a0 R +0x1000
 
  Section to Segment mapping:
   Segment Sections...
    00 +
    01 +.interp *
    02 +.interp .hash .dynsym .dynstr .rel.dyn .rel.plt .plt .text *
-   03 +.tdata .tbss .dynamic .got *
+   03 +.tdata .tbss .dynamic .got .got.plt *
    04 +.tbss .dynamic *
    05 +.tdata .tbss *
 
 Relocation section '.rel.dyn' at offset 0x[0-9a-f]+ contains 9 entries:
  Offset +Info +Type +Sym.Value +Sym. Name
-0+804a110  0000010e R_386_TLS_TPOFF +0+ +sG3
-0+804a114  0000020e R_386_TLS_TPOFF +0+ +sG5
-0+804a118  0000040e R_386_TLS_TPOFF +0+ +sG7
-0+804a11c  00000525 R_386_TLS_TPOFF32 0+ +sG2
-0+804a120  00000625 R_386_TLS_TPOFF32 0+ +sG4
-0+804a124  0000060e R_386_TLS_TPOFF +0+ +sG4
-0+804a128  00000825 R_386_TLS_TPOFF32 0+ +sG6
-0+804a12c  00000925 R_386_TLS_TPOFF32 0+ +sG1
-0+804a130  00000d0e R_386_TLS_TPOFF +0+ +sG8
+0+804a100  0000010e R_386_TLS_TPOFF +0+ +sG3
+0+804a104  0000020e R_386_TLS_TPOFF +0+ +sG5
+0+804a108  0000040e R_386_TLS_TPOFF +0+ +sG7
+0+804a10c  00000525 R_386_TLS_TPOFF32 0+ +sG2
+0+804a110  00000625 R_386_TLS_TPOFF32 0+ +sG4
+0+804a114  0000060e R_386_TLS_TPOFF +0+ +sG4
+0+804a118  00000825 R_386_TLS_TPOFF32 0+ +sG6
+0+804a11c  00000925 R_386_TLS_TPOFF32 0+ +sG1
+0+804a120  00000d0e R_386_TLS_TPOFF +0+ +sG8
 
 Relocation section '.rel.plt' at offset 0x30c contains 1 entries:
  Offset +Info +Type +Sym.Value  Sym. Name
-0+804a10c  00000e07 R_386_JUMP_SLOT +[0-9a-f]+ +___tls_get_addr
+0+804a130  00000e07 R_386_JUMP_SLOT +[0-9a-f]+ +___tls_get_addr
 
 Symbol table '.dynsym' contains 15 entries:
  +Num: +Value  Size Type +Bind +Vis +Ndx Name
- +0: 0+ +0 NOTYPE  LOCAL  DEFAULT  UND *
- +1: 0+ +0 TLS +GLOBAL DEFAULT  UND sG3
- +2: 0+ +0 TLS +GLOBAL DEFAULT  UND sG5
- +3: 0+804a060 +0 OBJECT  GLOBAL DEFAULT  ABS _DYNAMIC
- +4: 0+ +0 TLS +GLOBAL DEFAULT  UND sG7
- +5: 0+ +0 TLS +GLOBAL DEFAULT  UND sG2
- +6: 0+ +0 TLS +GLOBAL DEFAULT  UND sG4
- +7: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS __bss_start
- +8: 0+ +0 TLS +GLOBAL DEFAULT  UND sG6
- +9: 0+ +0 TLS +GLOBAL DEFAULT  UND sG1
- +10: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS _edata
- +11: 0+804a100 +0 OBJECT  GLOBAL DEFAULT  ABS _GLOBAL_OFFSET_TABLE_
- +12: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS _end
- +13: 0+ +0 TLS +GLOBAL DEFAULT  UND sG8
- +14: [0-9a-f]+ +0 FUNC +GLOBAL DEFAULT  UND ___tls_get_addr
+ +[0-9]+: 0+ +0 NOTYPE  LOCAL  DEFAULT  UND *
+ +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT  UND sG3
+ +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT  UND sG5
+ +[0-9]+: 0+804a060 +0 OBJECT  GLOBAL DEFAULT  ABS _DYNAMIC
+ +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT  UND sG7
+ +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT  UND sG2
+ +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT  UND sG4
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS __bss_start
+ +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT  UND sG6
+ +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT  UND sG1
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS _edata
+ +[0-9]+: [0-9a-f]+ +0 OBJECT  GLOBAL DEFAULT  ABS _GLOBAL_OFFSET_TABLE_
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS _end
+ +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT  UND sG8
+ +[0-9]+: [0-9a-f]+ +0 FUNC +GLOBAL DEFAULT  UND ___tls_get_addr
 
-Symbol table '.symtab' contains 74 entries:
+Symbol table '.symtab' contains 75 entries:
  +Num: +Value  Size Type +Bind +Vis +Ndx Name
- +0: 0+ +0 NOTYPE  LOCAL  DEFAULT  UND *
- +1: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +1 *
- +2: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +2 *
- +3: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +3 *
- +4: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +4 *
- +5: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +5 *
- +6: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +6 *
- +7: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +7 *
- +8: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +8 *
- +9: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +9 *
- +10: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +10 *
- +11: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +11 *
- +12: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +12 *
- +13: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +13 *
- +14: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +14 *
- +15: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +15 *
- +16: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +16 *
- +17: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +17 *
- +18: 00000020 +0 TLS +LOCAL  DEFAULT +10 sl1
- +19: 00000024 +0 TLS +LOCAL  DEFAULT +10 sl2
- +20: 00000028 +0 TLS +LOCAL  DEFAULT +10 sl3
- +21: 0000002c +0 TLS +LOCAL  DEFAULT +10 sl4
- +22: 00000030 +0 TLS +LOCAL  DEFAULT +10 sl5
- +23: 00000034 +0 TLS +LOCAL  DEFAULT +10 sl6
- +24: 00000038 +0 TLS +LOCAL  DEFAULT +10 sl7
- +25: 0000003c +0 TLS +LOCAL  DEFAULT +10 sl8
- +26: 00000080 +0 TLS +LOCAL  DEFAULT +11 bl1
- +27: 00000084 +0 TLS +LOCAL  DEFAULT +11 bl2
- +28: 00000088 +0 TLS +LOCAL  DEFAULT +11 bl3
- +29: 0000008c +0 TLS +LOCAL  DEFAULT +11 bl4
- +30: 00000090 +0 TLS +LOCAL  DEFAULT +11 bl5
- +31: 00000094 +0 TLS +LOCAL  DEFAULT +11 bl6
- +32: 00000098 +0 TLS +LOCAL  DEFAULT +11 bl7
- +33: 0000009c +0 TLS +LOCAL  DEFAULT +11 bl8
- +34: 0+ +0 TLS +GLOBAL DEFAULT  UND sG3
- +35: 0000001c +0 TLS +GLOBAL DEFAULT +10 sg8
- +36: 0000007c +0 TLS +GLOBAL DEFAULT +11 bg8
- +37: 00000074 +0 TLS +GLOBAL DEFAULT +11 bg6
- +38: 0+ +0 TLS +GLOBAL DEFAULT  UND sG5
- +39: 00000068 +0 TLS +GLOBAL DEFAULT +11 bg3
- +40: 0+804a060 +0 OBJECT  GLOBAL DEFAULT  ABS _DYNAMIC
- +41: 00000008 +0 TLS +GLOBAL DEFAULT +10 sg3
- +42: 0+ +0 TLS +GLOBAL DEFAULT  UND sG7
- +43: 00000048 +0 TLS +GLOBAL HIDDEN +10 sh3
- +44: 0+ +0 TLS +GLOBAL DEFAULT  UND sG2
- +45: 0000000c +0 TLS +GLOBAL DEFAULT +10 sg4
- +46: 0+ +0 TLS +GLOBAL DEFAULT  UND sG4
- +47: 00000010 +0 TLS +GLOBAL DEFAULT +10 sg5
- +48: 00000070 +0 TLS +GLOBAL DEFAULT +11 bg5
- +49: 00000058 +0 TLS +GLOBAL HIDDEN +10 sh7
- +50: 0000005c +0 TLS +GLOBAL HIDDEN +10 sh8
- +51: 0+ +0 TLS +GLOBAL DEFAULT +10 sg1
- +52: 0+8049178 +0 FUNC +GLOBAL DEFAULT +8 _start
- +53: 0000004c +0 TLS +GLOBAL HIDDEN +10 sh4
- +54: 00000078 +0 TLS +GLOBAL DEFAULT +11 bg7
- +55: 00000050 +0 TLS +GLOBAL HIDDEN +10 sh5
- +56: 0+804a134 +0 NOTYPE  GLOBAL DEFAULT  ABS __bss_start
- +57: 0+ +0 TLS +GLOBAL DEFAULT  UND sG6
- +58: 0+8049000 +0 FUNC +GLOBAL DEFAULT +8 fn2
- +59: 00000004 +0 TLS +GLOBAL DEFAULT +10 sg2
- +60: 0+ +0 TLS +GLOBAL DEFAULT  UND sG1
- +61: 00000040 +0 TLS +GLOBAL HIDDEN +10 sh1
- +62: 00000014 +0 TLS +GLOBAL DEFAULT +10 sg6
- +63: 00000018 +0 TLS +GLOBAL DEFAULT +10 sg7
- +64: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS _edata
- +65: 0+804a100 +0 OBJECT  GLOBAL DEFAULT  ABS _GLOBAL_OFFSET_TABLE_
- +66: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS _end
- +67: 00000044 +0 TLS +GLOBAL HIDDEN +10 sh2
- +68: 00000054 +0 TLS +GLOBAL HIDDEN +10 sh6
- +69: 0+ +0 TLS +GLOBAL DEFAULT  UND sG8
- +70: 00000064 +0 TLS +GLOBAL DEFAULT +11 bg2
- +71: 00000060 +0 TLS +GLOBAL DEFAULT +11 bg1
- +72: [0-9a-f]+ +0 FUNC +GLOBAL DEFAULT  UND ___tls_get_addr
- +73: 0000006c +0 TLS +GLOBAL DEFAULT +11 bg4
+ +[0-9]+: 0+ +0 NOTYPE  LOCAL  DEFAULT  UND *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +1 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +2 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +3 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +4 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +5 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +6 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +7 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +8 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +9 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +10 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +11 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +12 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +13 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +14 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +15 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +16 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +17 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +18 *
+ +[0-9]+: 00000020 +0 TLS +LOCAL  DEFAULT +9 sl1
+ +[0-9]+: 00000024 +0 TLS +LOCAL  DEFAULT +9 sl2
+ +[0-9]+: 00000028 +0 TLS +LOCAL  DEFAULT +9 sl3
+ +[0-9]+: 0000002c +0 TLS +LOCAL  DEFAULT +9 sl4
+ +[0-9]+: 00000030 +0 TLS +LOCAL  DEFAULT +9 sl5
+ +[0-9]+: 00000034 +0 TLS +LOCAL  DEFAULT +9 sl6
+ +[0-9]+: 00000038 +0 TLS +LOCAL  DEFAULT +9 sl7
+ +[0-9]+: 0000003c +0 TLS +LOCAL  DEFAULT +9 sl8
+ +[0-9]+: 00000080 +0 TLS +LOCAL  DEFAULT +10 bl1
+ +[0-9]+: 00000084 +0 TLS +LOCAL  DEFAULT +10 bl2
+ +[0-9]+: 00000088 +0 TLS +LOCAL  DEFAULT +10 bl3
+ +[0-9]+: 0000008c +0 TLS +LOCAL  DEFAULT +10 bl4
+ +[0-9]+: 00000090 +0 TLS +LOCAL  DEFAULT +10 bl5
+ +[0-9]+: 00000094 +0 TLS +LOCAL  DEFAULT +10 bl6
+ +[0-9]+: 00000098 +0 TLS +LOCAL  DEFAULT +10 bl7
+ +[0-9]+: 0000009c +0 TLS +LOCAL  DEFAULT +10 bl8
+ +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT  UND sG3
+ +[0-9]+: 0000001c +0 TLS +GLOBAL DEFAULT +9 sg8
+ +[0-9]+: 0000007c +0 TLS +GLOBAL DEFAULT +10 bg8
+ +[0-9]+: 00000074 +0 TLS +GLOBAL DEFAULT +10 bg6
+ +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT  UND sG5
+ +[0-9]+: 00000068 +0 TLS +GLOBAL DEFAULT +10 bg3
+ +[0-9]+: 0+804a060 +0 OBJECT  GLOBAL DEFAULT  ABS _DYNAMIC
+ +[0-9]+: 00000008 +0 TLS +GLOBAL DEFAULT +9 sg3
+ +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT  UND sG7
+ +[0-9]+: 00000048 +0 TLS +GLOBAL HIDDEN +9 sh3
+ +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT  UND sG2
+ +[0-9]+: 0000000c +0 TLS +GLOBAL DEFAULT +9 sg4
+ +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT  UND sG4
+ +[0-9]+: 00000010 +0 TLS +GLOBAL DEFAULT +9 sg5
+ +[0-9]+: 00000070 +0 TLS +GLOBAL DEFAULT +10 bg5
+ +[0-9]+: 00000058 +0 TLS +GLOBAL HIDDEN +9 sh7
+ +[0-9]+: 0000005c +0 TLS +GLOBAL HIDDEN +9 sh8
+ +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT +9 sg1
+ +[0-9]+: 0+8049178 +0 FUNC +GLOBAL DEFAULT +8 _start
+ +[0-9]+: 0000004c +0 TLS +GLOBAL HIDDEN +9 sh4
+ +[0-9]+: 00000078 +0 TLS +GLOBAL DEFAULT +10 bg7
+ +[0-9]+: 00000050 +0 TLS +GLOBAL HIDDEN +9 sh5
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS __bss_start
+ +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT  UND sG6
+ +[0-9]+: 0+8049000 +0 FUNC +GLOBAL DEFAULT +8 fn2
+ +[0-9]+: 00000004 +0 TLS +GLOBAL DEFAULT +9 sg2
+ +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT  UND sG1
+ +[0-9]+: 00000040 +0 TLS +GLOBAL HIDDEN +9 sh1
+ +[0-9]+: 00000014 +0 TLS +GLOBAL DEFAULT +9 sg6
+ +[0-9]+: 00000018 +0 TLS +GLOBAL DEFAULT +9 sg7
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS _edata
+ +[0-9]+: [0-9a-f]+ +0 OBJECT  GLOBAL DEFAULT  ABS _GLOBAL_OFFSET_TABLE_
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS _end
+ +[0-9]+: 00000044 +0 TLS +GLOBAL HIDDEN +9 sh2
+ +[0-9]+: 00000054 +0 TLS +GLOBAL HIDDEN +9 sh6
+ +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT  UND sG8
+ +[0-9]+: 00000064 +0 TLS +GLOBAL DEFAULT +10 bg2
+ +[0-9]+: 00000060 +0 TLS +GLOBAL DEFAULT +10 bg1
+ +[0-9]+: [0-9a-f]+ +0 FUNC +GLOBAL DEFAULT  UND ___tls_get_addr
+ +[0-9]+: 0000006c +0 TLS +GLOBAL DEFAULT +10 bg4
index b82affe..2fa7a89 100644 (file)
@@ -10,5 +10,4 @@
 Contents of section \.got:
  804a100 [0-9a-f]+ 00000000 00000000 [0-9a-f]+  .*
  804a110 00000000 00000000 00000000 00000000  .*
- 804a120 00000000 00000000 00000000 00000000  .*
- 804a130 00000000  +.*
+ 804a120 00000000  +.*
index c6b6efa..844f952 100644 (file)
@@ -1,8 +1,7 @@
        /* Force .got aligned to 4K, so it very likely gets at 0x804a100
           (0x60 bytes .tdata and 0xa0 bytes .dynamic)  */
-       .data
-       .balign 4096
        .section ".tdata", "awT", @progbits
+       .balign 4096
        .globl sg1, sg2, sg3, sg4, sg5, sg6, sg7, sg8
        .globl sh1, sh2, sh3, sh4, sh5, sh6, sh7, sh8
        .hidden sh1, sh2, sh3, sh4, sh5, sh6, sh7, sh8
index bb9f6e5..1a34250 100644 (file)
@@ -16,14 +16,14 @@ Disassembly of section .text:
     1003:      65 a1 00 00 00 00[      ]+mov    %gs:0x0,%eax
     1009:      90[     ]+nop *
     100a:      90[     ]+nop *
-    100b:      03 05 94 20 00 00[      ]+add    0x2094,%eax
+    100b:      03 05 88 20 00 00[      ]+add    0x2088,%eax
 #                              ->R_386_TLS_TPOFF       sg1
     1011:      90[     ]+nop *
     1012:      90[     ]+nop *
     1013:      90[     ]+nop *
     1014:      90[     ]+nop *
 #  @indntpoff direct %gs access IE against global var
-    1015:      8b 15 98 20 00 00[      ]+mov    0x2098,%edx
+    1015:      8b 15 8c 20 00 00[      ]+mov    0x208c,%edx
 #                              ->R_386_TLS_TPOFF       sg2
     101b:      90[     ]+nop *
     101c:      90[     ]+nop *
@@ -36,14 +36,14 @@ Disassembly of section .text:
     1024:      65 a1 00 00 00 00[      ]+mov    %gs:0x0,%eax
     102a:      90[     ]+nop *
     102b:      90[     ]+nop *
-    102c:      03 05 9c 20 00 00[      ]+add    0x209c,%eax
+    102c:      03 05 90 20 00 00[      ]+add    0x2090,%eax
 #                              ->R_386_TLS_TPOFF       [0x14000000]
     1032:      90[     ]+nop *
     1033:      90[     ]+nop *
     1034:      90[     ]+nop *
     1035:      90[     ]+nop *
 #  @indntpoff direct %gs access IE against hidden var
-    1036:      8b 15 a0 20 00 00[      ]+mov    0x20a0,%edx
+    1036:      8b 15 94 20 00 00[      ]+mov    0x2094,%edx
 #                              ->R_386_TLS_TPOFF       [0x18000000]
     103c:      90[     ]+nop *
     103d:      90[     ]+nop *
@@ -56,14 +56,14 @@ Disassembly of section .text:
     1045:      65 a1 00 00 00 00[      ]+mov    %gs:0x0,%eax
     104b:      90[     ]+nop *
     104c:      90[     ]+nop *
-    104d:      03 05 8c 20 00 00[      ]+add    0x208c,%eax
+    104d:      03 05 80 20 00 00[      ]+add    0x2080,%eax
 #                              ->R_386_TLS_TPOFF       [0x00000000]
     1053:      90[     ]+nop *
     1054:      90[     ]+nop *
     1055:      90[     ]+nop *
     1056:      90[     ]+nop *
 #  @indntpoff direct %gs access IE against local var
-    1057:      8b 15 90 20 00 00[      ]+mov    0x2090,%edx
+    1057:      8b 15 84 20 00 00[      ]+mov    0x2084,%edx
 #                              ->R_386_TLS_TPOFF       [0x04000000]
     105d:      90[     ]+nop *
     105e:      90[     ]+nop *
index 5ac242c..9bc42b9 100644 (file)
@@ -5,7 +5,7 @@
 #readelf: -Ssrl
 #target: i?86-*-*
 
-There are 14 section headers, starting at offset 0x[0-9a-f]+:
+There are 16 section headers, starting at offset 0x[0-9a-f]+:
 
 Section Headers:
   \[Nr\] Name +Type +Addr +Off +Size +ES Flg Lk Inf Al
@@ -15,14 +15,16 @@ Section Headers:
   \[ 3\] \.dynstr +.*
   \[ 4\] \.rel.dyn +.*
   \[ 5\] \.text +PROGBITS +0+1000 .*
-  \[ 6\] \.data +.*
-  \[ 7\] .tbss +NOBITS +[0-9a-f]+ [0-9a-f]+ 000024 00 WAT  0   0  1
+  \[ 6\] \.tbss +NOBITS +[0-9a-f]+ [0-9a-f]+ 000024 00 WAT  0   0  1
+  \[ 7\] \.data.rel.ro +PROGBITS +.*
   \[ 8\] \.dynamic +DYNAMIC +0+2000 .*
   \[ 9\] \.got +PROGBITS +0+2080 .*
-  \[10\] \.bss +.*
-  \[11\] \.shstrtab +.*
-  \[12\] \.symtab +.*
-  \[13\] \.strtab +.*
+  \[10\] \.got.plt +PROGBITS +0+2098 .*
+  \[11\] \.data +.*
+  \[12\] \.bss +.*
+  \[13\] \.shstrtab +.*
+  \[14\] \.symtab +.*
+  \[15\] \.strtab +.*
 Key to Flags:
 .*
 .*
@@ -42,7 +44,7 @@ Program Headers:
  Section to Segment mapping:
   Segment Sections...
    00 +.hash .dynsym .dynstr .rel.dyn .text *
-   01 +.tbss .dynamic .got *
+   01 +.tbss .dynamic .got .got.plt *
    02 +.tbss .dynamic *
    03 +.tbss *
 
@@ -54,80 +56,77 @@ Relocation section '.rel.dyn' at offset 0x[0-9a-f]+ contains 20 entries:
 0+1038  0+8 R_386_RELATIVE +
 0+104f  0+8 R_386_RELATIVE +
 0+1059  0+8 R_386_RELATIVE +
-0+1067  0+c25 R_386_TLS_TPOFF32 0+   sg3
+0+1067  0+725 R_386_TLS_TPOFF32 0+   sg3
 0+107c  0+25 R_386_TLS_TPOFF32
 0+10a4  0+e R_386_TLS_TPOFF +
 0+10c4  0+e R_386_TLS_TPOFF +
 0+10d9  0+e R_386_TLS_TPOFF +
 0+10e4  0+e R_386_TLS_TPOFF +
-0+208c  0+e R_386_TLS_TPOFF +
+0+2080  0+e R_386_TLS_TPOFF +
+0+2084  0+e R_386_TLS_TPOFF +
 0+2090  0+e R_386_TLS_TPOFF +
-0+209c  0+e R_386_TLS_TPOFF +
-0+20a0  0+e R_386_TLS_TPOFF +
-0+109b  0+d0e R_386_TLS_TPOFF   0+   sg4
-0+10ce  0+f0e R_386_TLS_TPOFF   0+   sg5
-0+2094  0+100e R_386_TLS_TPOFF   0+   sg1
-0+2098  0+120e R_386_TLS_TPOFF   0+   sg2
+0+2094  0+e R_386_TLS_TPOFF +
+0+109b  0+80e R_386_TLS_TPOFF   0+   sg4
+0+10ce  0+a0e R_386_TLS_TPOFF   0+   sg5
+0+2088  0+b0e R_386_TLS_TPOFF   0+   sg1
+0+208c  0+d0e R_386_TLS_TPOFF   0+   sg2
 
 
-Symbol table '.dynsym' contains 22 entries:
+Symbol table '.dynsym' contains 17 entries:
  +Num: +Value  Size Type +Bind +Vis +Ndx Name
- +0: 0+ +0 NOTYPE  LOCAL  DEFAULT  UND *
- +1: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +1 *
- +2: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +2 *
- +3: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +3 *
- +4: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +4 *
- +5: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +5 *
- +6: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +6 *
- +7: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +7 *
- +8: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +8 *
- +9: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +9 *
- +10: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +10 *
- +11: [0-9a-f]+ +0 OBJECT  GLOBAL DEFAULT  ABS _DYNAMIC
- +12: 0+ +0 TLS +GLOBAL DEFAULT  UND sg3
- +13: 0+ +0 TLS +GLOBAL DEFAULT  UND sg4
- +14: 0+1000 +0 FUNC +GLOBAL DEFAULT +5 fn3
- +15: 0+ +0 TLS +GLOBAL DEFAULT  UND sg5
- +16: 0+ +0 TLS +GLOBAL DEFAULT  UND sg1
- +17: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS __bss_start
- +18: 0+ +0 TLS +GLOBAL DEFAULT  UND sg2
- +19: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS _edata
- +20: 0+2080 +0 OBJECT  GLOBAL DEFAULT  ABS _GLOBAL_OFFSET_TABLE_
- +21: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS _end
+ +[0-9]+: 0+ +0 NOTYPE  LOCAL  DEFAULT  UND *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +5 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +6 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +7 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +11 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +12 *
+ +[0-9]+: [0-9a-f]+ +0 OBJECT  GLOBAL DEFAULT  ABS _DYNAMIC
+ +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT  UND sg3
+ +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT  UND sg4
+ +[0-9]+: 0+1000 +0 FUNC +GLOBAL DEFAULT +5 fn3
+ +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT  UND sg5
+ +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT  UND sg1
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS __bss_start
+ +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT  UND sg2
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS _edata
+ +[0-9]+: 0+2098 +0 OBJECT  GLOBAL DEFAULT  ABS _GLOBAL_OFFSET_TABLE_
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS _end
 
-Symbol table '.symtab' contains 34 entries:
+Symbol table '.symtab' contains 36 entries:
  +Num: +Value  Size Type +Bind +Vis +Ndx Name
- +0: 0+ +0 NOTYPE  LOCAL  DEFAULT  UND *
- +1: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +1 *
- +2: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +2 *
- +3: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +3 *
- +4: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +4 *
- +5: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +5 *
- +6: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +6 *
- +7: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +7 *
- +8: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +8 *
- +9: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +9 *
- +10: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +10 *
- +11: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +11 *
- +12: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +12 *
- +13: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +13 *
- +14: 0+00 +0 TLS +LOCAL  DEFAULT +7 bl1
- +15: 0+04 +0 TLS +LOCAL  DEFAULT +7 bl2
- +16: 0+08 +0 TLS +LOCAL  DEFAULT +7 bl3
- +17: 0+0c +0 TLS +LOCAL  DEFAULT +7 bl4
- +18: 0+10 +0 TLS +LOCAL  DEFAULT +7 bl5
- +19: 0+1c +0 TLS +LOCAL  HIDDEN +7 sh3
- +20: 0+20 +0 TLS +LOCAL  HIDDEN +7 sh4
- +21: 0+14 +0 TLS +LOCAL  HIDDEN +7 sh1
- +22: 0+18 +0 TLS +LOCAL  HIDDEN +7 sh2
- +23: [0-9a-f]+ +0 OBJECT  GLOBAL DEFAULT  ABS _DYNAMIC
- +24: 0+ +0 TLS +GLOBAL DEFAULT  UND sg3
- +25: 0+ +0 TLS +GLOBAL DEFAULT  UND sg4
- +26: 0+1000 +0 FUNC +GLOBAL DEFAULT +5 fn3
- +27: 0+ +0 TLS +GLOBAL DEFAULT  UND sg5
- +28: 0+ +0 TLS +GLOBAL DEFAULT  UND sg1
- +29: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS __bss_start
- +30: 0+ +0 TLS +GLOBAL DEFAULT  UND sg2
- +31: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS _edata
- +32: 0+2080 +0 OBJECT  GLOBAL DEFAULT  ABS _GLOBAL_OFFSET_TABLE_
- +33: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS _end
+ +[0-9]+: 0+ +0 NOTYPE  LOCAL  DEFAULT  UND *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +1 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +2 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +3 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +4 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +5 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +6 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +7 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +8 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +9 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +10 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +11 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +12 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +13 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +14 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +15 *
+ +[0-9]+: 0+00 +0 TLS +LOCAL  DEFAULT +6 bl1
+ +[0-9]+: 0+04 +0 TLS +LOCAL  DEFAULT +6 bl2
+ +[0-9]+: 0+08 +0 TLS +LOCAL  DEFAULT +6 bl3
+ +[0-9]+: 0+0c +0 TLS +LOCAL  DEFAULT +6 bl4
+ +[0-9]+: 0+10 +0 TLS +LOCAL  DEFAULT +6 bl5
+ +[0-9]+: 0+1c +0 TLS +LOCAL  HIDDEN +6 sh3
+ +[0-9]+: 0+20 +0 TLS +LOCAL  HIDDEN +6 sh4
+ +[0-9]+: 0+14 +0 TLS +LOCAL  HIDDEN +6 sh1
+ +[0-9]+: 0+18 +0 TLS +LOCAL  HIDDEN +6 sh2
+ +[0-9]+: [0-9a-f]+ +0 OBJECT  GLOBAL DEFAULT  ABS _DYNAMIC
+ +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT  UND sg3
+ +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT  UND sg4
+ +[0-9]+: 0+1000 +0 FUNC +GLOBAL DEFAULT +5 fn3
+ +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT  UND sg5
+ +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT  UND sg1
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS __bss_start
+ +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT  UND sg2
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS _edata
+ +[0-9]+: 0+2098 +0 OBJECT  GLOBAL DEFAULT  ABS _GLOBAL_OFFSET_TABLE_
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS _end
index a79226f..faefdec 100644 (file)
@@ -8,6 +8,5 @@
 .*:     file format elf32-i386
 
 Contents of section \.got:
- 2080 [0-9a-f]+ 00000000 00000000 00000000  .*
- 2090 04000000 00000000 00000000 14000000  .*
- 20a0 18000000  +.*
+ 2080 00000000 04000000 00000000 00000000  .*
+ 2090 14000000 18000000  +.*
index 32d730b..80a28bf 100644 (file)
@@ -1,4 +1,4 @@
-       .data
+       .section ".data.rel.ro", "aw", @progbits
        /* Align, so that .got is likely at address 0x2080.  */
        .balign 4096
        .section ".tbss", "awT", @nobits
index 7f1690c..98fcf01 100644 (file)
@@ -16,13 +16,13 @@ Disassembly of section .text:
  [0-9a-f]+:    50[     ]+push   %eax
  [0-9a-f]+:    e8 00 00 00 00[         ]+call   [0-9a-f]+ <fn1\+0xa>
  [0-9a-f]+:    5b[     ]+pop    %ebx
- [0-9a-f]+:    81 c3 [0-9a-f ]+[       ]+add    \$0x[0-9a-f]+,%ebx
+ [0-9a-f]+:    81 c3 42 14 00 00[      ]+add    \$0x[0-9a-f]+,%ebx
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
 #  GD
- [0-9a-f]+:    8d 04 1d 5c 00 00 00    lea    0x5c\(,%ebx,1\),%eax
+ [0-9a-f]+:    8d 04 1d d4 ff ff ff[   ]+lea    0xffffffd4\(,%ebx,1\),%eax
 #                              ->R_386_TLS_DTPMOD32    sg1
  [0-9a-f]+:    e8 cf ff ff ff[         ]+call   [0-9a-f]+ <___tls_get_addr@plt>
 #                              ->R_386_JUMP_SLOT       ___tls_get_addr
@@ -32,7 +32,7 @@ Disassembly of section .text:
  [0-9a-f]+:    90[     ]+nop *
 #  GD -> IE because variable is referenced through @gottpoff too
  [0-9a-f]+:    65 a1 00 00 00 00[      ]+mov    %gs:0x0,%eax
- [0-9a-f]+:    2b 83 78 00 00 00[      ]+sub    0x78\(%ebx\),%eax
+ [0-9a-f]+:    2b 83 f0 ff ff ff[      ]+sub    0xfffffff0\(%ebx\),%eax
 #                              ->R_386_TLS_TPOFF32     sg2
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
@@ -40,7 +40,7 @@ Disassembly of section .text:
  [0-9a-f]+:    90[     ]+nop *
 #  GD -> IE because variable is referenced through @gotntpoff too
  [0-9a-f]+:    65 a1 00 00 00 00[      ]+mov    %gs:0x0,%eax
- [0-9a-f]+:    03 83 3c 00 00 00[      ]+add    0x3c\(%ebx\),%eax
+ [0-9a-f]+:    03 83 b4 ff ff ff[      ]+add    0xffffffb4\(%ebx\),%eax
 #                              ->R_386_TLS_TPOFF       sg3
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
@@ -48,14 +48,14 @@ Disassembly of section .text:
  [0-9a-f]+:    90[     ]+nop *
 #  GD -> IE because variable is referenced through @gottpoff and
  [0-9a-f]+:    65 a1 00 00 00 00[      ]+mov    %gs:0x0,%eax
- [0-9a-f]+:    2b 83 48 00 00 00[      ]+sub    0x48\(%ebx\),%eax
+ [0-9a-f]+:    2b 83 c0 ff ff ff[      ]+sub    0xffffffc0\(%ebx\),%eax
 #                              ->R_386_TLS_TPOFF32     sg4
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
 #  GD against local variable
- [0-9a-f]+:    8d 04 1d 10 00 00 00    lea    0x10\(,%ebx,1\),%eax
+ [0-9a-f]+:    8d 04 1d 88 ff ff ff[   ]+lea    0xffffff88\(,%ebx,1\),%eax
 #                              ->R_386_TLS_DTPMOD32    [0x00000000 0x20000000]
  [0-9a-f]+:    e8 8f ff ff ff[         ]+call   [0-9a-f]+ <___tls_get_addr@plt>
 #                              ->R_386_JUMP_SLOT       ___tls_get_addr
@@ -65,7 +65,7 @@ Disassembly of section .text:
  [0-9a-f]+:    90[     ]+nop *
 #  GD -> IE against local variable referenced through @gottpoff too
  [0-9a-f]+:    65 a1 00 00 00 00[      ]+mov    %gs:0x0,%eax
- [0-9a-f]+:    2b 83 18 00 00 00[      ]+sub    0x18\(%ebx\),%eax
+ [0-9a-f]+:    2b 83 90 ff ff ff[      ]+sub    0xffffff90\(%ebx\),%eax
 #                              ->R_386_TLS_TPOFF32     [0xdcffffff]
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
@@ -73,7 +73,7 @@ Disassembly of section .text:
  [0-9a-f]+:    90[     ]+nop *
 #  GD -> IE against local variable referenced through @gotntpoff
  [0-9a-f]+:    65 a1 00 00 00 00[      ]+mov    %gs:0x0,%eax
- [0-9a-f]+:    03 83 1c 00 00 00[      ]+add    0x1c\(%ebx\),%eax
+ [0-9a-f]+:    03 83 94 ff ff ff[      ]+add    0xffffff94\(%ebx\),%eax
 #                              ->R_386_TLS_TPOFF       [0x28000000]
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
@@ -81,14 +81,14 @@ Disassembly of section .text:
  [0-9a-f]+:    90[     ]+nop *
 #  GD -> IE against local variable referenced through @gottpoff and
  [0-9a-f]+:    65 a1 00 00 00 00[      ]+mov    %gs:0x0,%eax
- [0-9a-f]+:    2b 83 20 00 00 00[      ]+sub    0x20\(%ebx\),%eax
+ [0-9a-f]+:    2b 83 98 ff ff ff[      ]+sub    0xffffff98\(%ebx\),%eax
 #                              ->R_386_TLS_TPOFF32     [0xd4ffffff]
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
 #  GD against hidden and local variable
- [0-9a-f]+:    8d 04 1d 7c 00 00 00    lea    0x7c\(,%ebx,1\),%eax
+ [0-9a-f]+:    8d 04 1d f4 ff ff ff[   ]+lea    0xfffffff4\(,%ebx,1\),%eax
 #                              ->R_386_TLS_DTPMOD32    [0x00000000 0x40000000]
  [0-9a-f]+:    e8 4f ff ff ff[         ]+call   [0-9a-f]+ <___tls_get_addr@plt>
 #                              ->R_386_JUMP_SLOT       ___tls_get_addr
@@ -98,7 +98,7 @@ Disassembly of section .text:
  [0-9a-f]+:    90[     ]+nop *
 #  GD -> IE against hidden and local variable referenced through @gottpoff too
  [0-9a-f]+:    65 a1 00 00 00 00[      ]+mov    %gs:0x0,%eax
- [0-9a-f]+:    2b 83 84 00 00 00[      ]+sub    0x84\(%ebx\),%eax
+ [0-9a-f]+:    2b 83 fc ff ff ff[      ]+sub    0xfffffffc\(%ebx\),%eax
 #                              ->R_386_TLS_TPOFF32     [0xbcffffff]
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
@@ -106,7 +106,7 @@ Disassembly of section .text:
  [0-9a-f]+:    90[     ]+nop *
 #  GD -> IE against hidden and local variable referenced through @gotntpoff too
  [0-9a-f]+:    65 a1 00 00 00 00[      ]+mov    %gs:0x0,%eax
- [0-9a-f]+:    03 83 40 00 00 00[      ]+add    0x40\(%ebx\),%eax
+ [0-9a-f]+:    03 83 b8 ff ff ff[      ]+add    0xffffffb8\(%ebx\),%eax
 #                              ->R_386_TLS_TPOFF       [0x48000000]
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
@@ -114,14 +114,14 @@ Disassembly of section .text:
  [0-9a-f]+:    90[     ]+nop *
 #  GD -> IE against hidden and local variable referenced through @gottpoff and @gotntpoff too
  [0-9a-f]+:    65 a1 00 00 00 00[      ]+mov    %gs:0x0,%eax
- [0-9a-f]+:    2b 83 64 00 00 00[      ]+sub    0x64\(%ebx\),%eax
+ [0-9a-f]+:    2b 83 dc ff ff ff[      ]+sub    0xffffffdc\(%ebx\),%eax
 #                              ->R_386_TLS_TPOFF32     [0xb4ffffff]
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
 #  GD against hidden but not local variable
- [0-9a-f]+:    8d 04 1d 34 00 00 00    lea    0x34\(,%ebx,1\),%eax
+ [0-9a-f]+:    8d 04 1d ac ff ff ff[   ]+lea    0xffffffac\(,%ebx,1\),%eax
 #                              ->R_386_TLS_DTPMOD32    [0x00000000 0x60000000]
  [0-9a-f]+:    e8 0f ff ff ff[         ]+call   [0-9a-f]+ <___tls_get_addr@plt>
 #                              ->R_386_JUMP_SLOT       ___tls_get_addr
@@ -131,7 +131,7 @@ Disassembly of section .text:
  [0-9a-f]+:    90[     ]+nop *
 #  GD -> IE against hidden but not local variable referenced through
  [0-9a-f]+:    65 a1 00 00 00 00[      ]+mov    %gs:0x0,%eax
- [0-9a-f]+:    2b 83 44 00 00 00[      ]+sub    0x44\(%ebx\),%eax
+ [0-9a-f]+:    2b 83 bc ff ff ff[      ]+sub    0xffffffbc\(%ebx\),%eax
 #                              ->R_386_TLS_TPOFF32     [0x9cffffff]
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
@@ -139,7 +139,7 @@ Disassembly of section .text:
  [0-9a-f]+:    90[     ]+nop *
 #  GD -> IE against hidden but not local variable referenced through
  [0-9a-f]+:    65 a1 00 00 00 00[      ]+mov    %gs:0x0,%eax
- [0-9a-f]+:    03 83 6c 00 00 00[      ]+add    0x6c\(%ebx\),%eax
+ [0-9a-f]+:    03 83 e4 ff ff ff[      ]+add    0xffffffe4\(%ebx\),%eax
 #                              ->R_386_TLS_TPOFF       [0x68000000]
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
@@ -147,14 +147,14 @@ Disassembly of section .text:
  [0-9a-f]+:    90[     ]+nop *
 #  GD -> IE against hidden but not local variable referenced through
  [0-9a-f]+:    65 a1 00 00 00 00[      ]+mov    %gs:0x0,%eax
- [0-9a-f]+:    2b 83 54 00 00 00[      ]+sub    0x54\(%ebx\),%eax
+ [0-9a-f]+:    2b 83 cc ff ff ff[      ]+sub    0xffffffcc\(%ebx\),%eax
 #                              ->R_386_TLS_TPOFF32     [0x94ffffff]
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
 #  LD
- [0-9a-f]+:    8d 83 2c 00 00 00[      ]+lea    0x2c\(%ebx\),%eax
+ [0-9a-f]+:    8d 83 a4 ff ff ff[      ]+lea    0xffffffa4\(%ebx\),%eax
 #                              ->R_386_TLS_DTPMOD32    [0x00000000 0x00000000]
  [0-9a-f]+:    e8 d0 fe ff ff[         ]+call   [0-9a-f]+ <___tls_get_addr@plt>
 #                              ->R_386_JUMP_SLOT       ___tls_get_addr
@@ -171,7 +171,7 @@ Disassembly of section .text:
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
 #  LD against hidden and local variables
- [0-9a-f]+:    8d 83 2c 00 00 00[      ]+lea    0x2c\(%ebx\),%eax
+ [0-9a-f]+:    8d 83 a4 ff ff ff[      ]+lea    0xffffffa4\(%ebx\),%eax
 #                              ->R_386_TLS_DTPMOD32    [0x00000000 0x00000000]
  [0-9a-f]+:    e8 b1 fe ff ff[         ]+call   [0-9a-f]+ <___tls_get_addr@plt>
 #                              ->R_386_JUMP_SLOT       ___tls_get_addr
@@ -188,7 +188,7 @@ Disassembly of section .text:
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
 #  LD against hidden but not local variables
- [0-9a-f]+:    8d 83 2c 00 00 00[      ]+lea    0x2c\(%ebx\),%eax
+ [0-9a-f]+:    8d 83 a4 ff ff ff[      ]+lea    0xffffffa4\(%ebx\),%eax
 #                              ->R_386_TLS_DTPMOD32    [0x00000000 0x00000000]
  [0-9a-f]+:    e8 92 fe ff ff[         ]+call   [0-9a-f]+ <___tls_get_addr@plt>
 #                              ->R_386_JUMP_SLOT       ___tls_get_addr
@@ -203,10 +203,10 @@ Disassembly of section .text:
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
 #  @gottpoff IE against global var
- [0-9a-f]+:    65 8b 0d 00 00 00 00    mov    %gs:0x0,%ecx
+ [0-9a-f]+:    65 8b 0d 00 00 00 00[   ]+mov    %gs:0x0,%ecx
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
- [0-9a-f]+:    2b 8b 78 00 00 00[      ]+sub    0x78\(%ebx\),%ecx
+ [0-9a-f]+:    2b 8b f0 ff ff ff[      ]+sub    0xfffffff0\(%ebx\),%ecx
 #                              ->R_386_TLS_TPOFF32     sg2
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
@@ -216,17 +216,17 @@ Disassembly of section .text:
  [0-9a-f]+:    65 a1 00 00 00 00[      ]+mov    %gs:0x0,%eax
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
- [0-9a-f]+:    2b 83 48 00 00 00[      ]+sub    0x48\(%ebx\),%eax
+ [0-9a-f]+:    2b 83 c0 ff ff ff[      ]+sub    0xffffffc0\(%ebx\),%eax
 #                              ->R_386_TLS_TPOFF32     sg4
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
 #  @gotntpoff IE against global var
- [0-9a-f]+:    65 8b 0d 00 00 00 00    mov    %gs:0x0,%ecx
+ [0-9a-f]+:    65 8b 0d 00 00 00 00[   ]+mov    %gs:0x0,%ecx
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
- [0-9a-f]+:    03 8b 3c 00 00 00[      ]+add    0x3c\(%ebx\),%ecx
+ [0-9a-f]+:    03 8b b4 ff ff ff[      ]+add    0xffffffb4\(%ebx\),%ecx
 #                              ->R_386_TLS_TPOFF       sg3
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
@@ -236,17 +236,17 @@ Disassembly of section .text:
  [0-9a-f]+:    65 a1 00 00 00 00[      ]+mov    %gs:0x0,%eax
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
- [0-9a-f]+:    03 83 4c 00 00 00[      ]+add    0x4c\(%ebx\),%eax
+ [0-9a-f]+:    03 83 c4 ff ff ff[      ]+add    0xffffffc4\(%ebx\),%eax
 #                              ->R_386_TLS_TPOFF       sg4
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
 #  @gottpoff IE against local var
- [0-9a-f]+:    65 8b 0d 00 00 00 00    mov    %gs:0x0,%ecx
+ [0-9a-f]+:    65 8b 0d 00 00 00 00[   ]+mov    %gs:0x0,%ecx
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
- [0-9a-f]+:    2b 8b 18 00 00 00[      ]+sub    0x18\(%ebx\),%ecx
+ [0-9a-f]+:    2b 8b 90 ff ff ff[      ]+sub    0xffffff90\(%ebx\),%ecx
 #                              ->R_386_TLS_TPOFF32     [0xdcffffff]
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
@@ -256,17 +256,17 @@ Disassembly of section .text:
  [0-9a-f]+:    65 a1 00 00 00 00[      ]+mov    %gs:0x0,%eax
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
- [0-9a-f]+:    2b 83 20 00 00 00[      ]+sub    0x20\(%ebx\),%eax
+ [0-9a-f]+:    2b 83 98 ff ff ff[      ]+sub    0xffffff98\(%ebx\),%eax
 #                              ->R_386_TLS_TPOFF32     [0xd4ffffff]
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
 #  @gotntpoff IE against local var
- [0-9a-f]+:    65 8b 0d 00 00 00 00    mov    %gs:0x0,%ecx
+ [0-9a-f]+:    65 8b 0d 00 00 00 00[   ]+mov    %gs:0x0,%ecx
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
- [0-9a-f]+:    03 8b 1c 00 00 00[      ]+add    0x1c\(%ebx\),%ecx
+ [0-9a-f]+:    03 8b 94 ff ff ff[      ]+add    0xffffff94\(%ebx\),%ecx
 #                              ->R_386_TLS_TPOFF       [0x28000000]
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
@@ -276,17 +276,17 @@ Disassembly of section .text:
  [0-9a-f]+:    65 a1 00 00 00 00[      ]+mov    %gs:0x0,%eax
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
- [0-9a-f]+:    03 83 24 00 00 00[      ]+add    0x24\(%ebx\),%eax
+ [0-9a-f]+:    03 83 9c ff ff ff[      ]+add    0xffffff9c\(%ebx\),%eax
 #                              ->R_386_TLS_TPOFF       [0x2c000000]
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
 #  @gottpoff IE against hidden and local var
- [0-9a-f]+:    65 8b 0d 00 00 00 00    mov    %gs:0x0,%ecx
+ [0-9a-f]+:    65 8b 0d 00 00 00 00[   ]+mov    %gs:0x0,%ecx
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
- [0-9a-f]+:    2b 8b 84 00 00 00[      ]+sub    0x84\(%ebx\),%ecx
+ [0-9a-f]+:    2b 8b fc ff ff ff[      ]+sub    0xfffffffc\(%ebx\),%ecx
 #                              ->R_386_TLS_TPOFF32     [0xbcffffff]
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
@@ -296,17 +296,17 @@ Disassembly of section .text:
  [0-9a-f]+:    65 a1 00 00 00 00[      ]+mov    %gs:0x0,%eax
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
- [0-9a-f]+:    2b 83 64 00 00 00[      ]+sub    0x64\(%ebx\),%eax
+ [0-9a-f]+:    2b 83 dc ff ff ff[      ]+sub    0xffffffdc\(%ebx\),%eax
 #                              ->R_386_TLS_TPOFF32     [0xb4ffffff]
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
 #  @gotntpoff IE against hidden and local var
- [0-9a-f]+:    65 8b 0d 00 00 00 00    mov    %gs:0x0,%ecx
+ [0-9a-f]+:    65 8b 0d 00 00 00 00[   ]+mov    %gs:0x0,%ecx
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
- [0-9a-f]+:    03 8b 40 00 00 00[      ]+add    0x40\(%ebx\),%ecx
+ [0-9a-f]+:    03 8b b8 ff ff ff[      ]+add    0xffffffb8\(%ebx\),%ecx
 #                              ->R_386_TLS_TPOFF       [0x48000000]
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
@@ -316,17 +316,17 @@ Disassembly of section .text:
  [0-9a-f]+:    65 a1 00 00 00 00[      ]+mov    %gs:0x0,%eax
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
- [0-9a-f]+:    03 83 68 00 00 00[      ]+add    0x68\(%ebx\),%eax
+ [0-9a-f]+:    03 83 e0 ff ff ff[      ]+add    0xffffffe0\(%ebx\),%eax
 #                              ->R_386_TLS_TPOFF       [0x4c000000]
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
 #  @gottpoff IE against hidden but not local var
- [0-9a-f]+:    65 8b 0d 00 00 00 00    mov    %gs:0x0,%ecx
+ [0-9a-f]+:    65 8b 0d 00 00 00 00[   ]+mov    %gs:0x0,%ecx
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
- [0-9a-f]+:    2b 8b 44 00 00 00[      ]+sub    0x44\(%ebx\),%ecx
+ [0-9a-f]+:    2b 8b bc ff ff ff[      ]+sub    0xffffffbc\(%ebx\),%ecx
 #                              ->R_386_TLS_TPOFF32     [0x9cffffff]
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
@@ -336,17 +336,17 @@ Disassembly of section .text:
  [0-9a-f]+:    65 a1 00 00 00 00[      ]+mov    %gs:0x0,%eax
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
- [0-9a-f]+:    2b 83 54 00 00 00[      ]+sub    0x54\(%ebx\),%eax
+ [0-9a-f]+:    2b 83 cc ff ff ff[      ]+sub    0xffffffcc\(%ebx\),%eax
 #                              ->R_386_TLS_TPOFF32     [0x94ffffff]
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
 #  @gotntpoff IE against hidden but not local var
- [0-9a-f]+:    65 8b 0d 00 00 00 00    mov    %gs:0x0,%ecx
+ [0-9a-f]+:    65 8b 0d 00 00 00 00[   ]+mov    %gs:0x0,%ecx
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
- [0-9a-f]+:    03 8b 6c 00 00 00[      ]+add    0x6c\(%ebx\),%ecx
+ [0-9a-f]+:    03 8b e4 ff ff ff[      ]+add    0xffffffe4\(%ebx\),%ecx
 #                              ->R_386_TLS_TPOFF       [0x68000000]
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
@@ -356,7 +356,7 @@ Disassembly of section .text:
  [0-9a-f]+:    65 a1 00 00 00 00[      ]+mov    %gs:0x0,%eax
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
- [0-9a-f]+:    03 83 58 00 00 00[      ]+add    0x58\(%ebx\),%eax
+ [0-9a-f]+:    03 83 d0 ff ff ff[      ]+add    0xffffffd0\(%ebx\),%eax
 #                              ->R_386_TLS_TPOFF       [0x6c000000]
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
@@ -364,7 +364,7 @@ Disassembly of section .text:
  [0-9a-f]+:    90[     ]+nop *
 #  Direct access through %gs
 #  @gotntpoff IE against global var
- [0-9a-f]+:    8b 8b 50 00 00 00[      ]+mov    0x50\(%ebx\),%ecx
+ [0-9a-f]+:    8b 8b c8 ff ff ff[      ]+mov    0xffffffc8\(%ebx\),%ecx
 #                              ->R_386_TLS_TPOFF       sg5
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
@@ -374,7 +374,7 @@ Disassembly of section .text:
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
 #  @gotntpoff IE against local var
- [0-9a-f]+:    8b 83 28 00 00 00[      ]+mov    0x28\(%ebx\),%eax
+ [0-9a-f]+:    8b 83 a0 ff ff ff[      ]+mov    0xffffffa0\(%ebx\),%eax
 #                              ->R_386_TLS_TPOFF       [0x30000000]
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
@@ -384,7 +384,7 @@ Disassembly of section .text:
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
 #  @gotntpoff IE against hidden and local var
- [0-9a-f]+:    8b 93 70 00 00 00[      ]+mov    0x70\(%ebx\),%edx
+ [0-9a-f]+:    8b 93 e8 ff ff ff[      ]+mov    0xffffffe8\(%ebx\),%edx
 #                              ->R_386_TLS_TPOFF       [0x50000000]
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
@@ -394,7 +394,7 @@ Disassembly of section .text:
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
 #  @gotntpoff IE against hidden but not local var
- [0-9a-f]+:    8b 8b 74 00 00 00[      ]+mov    0x74\(%ebx\),%ecx
+ [0-9a-f]+:    8b 8b ec ff ff ff[      ]+mov    0xffffffec\(%ebx\),%ecx
 #                              ->R_386_TLS_TPOFF       [0x70000000]
  [0-9a-f]+:    90[     ]+nop *
  [0-9a-f]+:    90[     ]+nop *
index b890e56..5b217e6 100644 (file)
@@ -17,15 +17,16 @@ Section Headers:
   \[ 5\] \.rel.plt +.*
   \[ 6\] \.plt +.*
   \[ 7\] \.text +.*
-  \[ 8\] \.data +.*
-  \[ 9\] .tdata +PROGBITS +[0-9a-f]+ [0-9a-f]+ 000060 00 WAT  0   0  1
-  \[10\] .tbss +NOBITS +[0-9aa-f]+ [0-9a-f]+ 000020 00 WAT  0   0  1
-  \[11\] \.dynamic +.*
-  \[12\] \.got +.*
-  \[13\] \.bss +.*
-  \[14\] \.shstrtab +.*
-  \[15\] \.symtab +.*
-  \[16\] \.strtab +.*
+  \[ 8\] \.tdata +PROGBITS +[0-9a-f]+ [0-9a-f]+ 000060 00 WAT  0   0  1
+  \[ 9\] \.tbss +NOBITS +[0-9aa-f]+ [0-9a-f]+ 000020 00 WAT  0   0  1
+  \[10\] \.dynamic +.*
+  \[11\] \.got +.*
+  \[12\] \.got.plt +.*
+  \[13\] \.data +.*
+  \[14\] \.bss +.*
+  \[15\] \.shstrtab +.*
+  \[16\] \.symtab +.*
+  \[17\] \.strtab +.*
 Key to Flags:
 .*
 .*
@@ -45,7 +46,7 @@ Program Headers:
  Section to Segment mapping:
   Segment Sections...
    00 +.hash .dynsym .dynstr .rel.dyn .rel.plt .plt .text *
-   01 +.tdata .tbss .dynamic .got *
+   01 +.tdata .tbss .dynamic .got .got.plt *
    02 +.tbss .dynamic *
    03 +.tdata .tbss *
 
@@ -70,105 +71,98 @@ Relocation section '.rel.dyn' at offset 0x[0-9a-f]+ contains 26 entries:
 [0-9a-f]+ +0+0e R_386_TLS_TPOFF *
 [0-9a-f]+ +0+23 R_386_TLS_DTPMOD3
 [0-9a-f]+ +0+25 R_386_TLS_TPOFF32
-[0-9a-f]+ +0+100e R_386_TLS_TPOFF   0+8   sg3
-[0-9a-f]+ +0+1125 R_386_TLS_TPOFF32 0+c   sg4
-[0-9a-f]+ +0+110e R_386_TLS_TPOFF   0+c   sg4
-[0-9a-f]+ +0+120e R_386_TLS_TPOFF   0+10   sg5
-[0-9a-f]+ +0+1323 R_386_TLS_DTPMOD3 0+   sg1
-[0-9a-f]+ +0+1324 R_386_TLS_DTPOFF3 0+   sg1
-[0-9a-f]+ +0+1625 R_386_TLS_TPOFF32 0+4   sg2
+[0-9a-f]+ +0+80e R_386_TLS_TPOFF   0+8   sg3
+[0-9a-f]+ +0+925 R_386_TLS_TPOFF32 0+c   sg4
+[0-9a-f]+ +0+90e R_386_TLS_TPOFF   0+c   sg4
+[0-9a-f]+ +0+a0e R_386_TLS_TPOFF   0+10   sg5
+[0-9a-f]+ +0+b23 R_386_TLS_DTPMOD3 0+   sg1
+[0-9a-f]+ +0+b24 R_386_TLS_DTPOFF3 0+   sg1
+[0-9a-f]+ +0+e25 R_386_TLS_TPOFF32 0+4   sg2
 
-Relocation section '.rel.plt' at offset 0x480 contains 1 entries:
+Relocation section '.rel.plt' at offset 0x[0-9a-f]+ contains 1 entries:
  Offset     Info    Type            Sym.Value  Sym. Name
-[0-9a-f]+  0+1c07 R_386_JUMP_SLOT   0+   ___tls_get_addr
+[0-9a-f]+  0+1407 R_386_JUMP_SLOT   0+   ___tls_get_addr
 
-Symbol table '.dynsym' contains 29 entries:
+Symbol table '.dynsym' contains 21 entries:
  +Num: + Value  Size Type + Bind +Vis +Ndx Name
- +0: 0+ +0 NOTYPE  LOCAL  DEFAULT  UND *
- +1: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +1 *
- +2: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +2 *
- +3: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +3 *
- +4: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +4 *
- +5: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +5 *
- +6: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +6 *
- +7: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +7 *
- +8: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +8 *
- +9: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +9 *
- +10: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +10 *
- +11: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +11 *
- +12: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +12 *
- +13: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +13 *
- +14: 0+1c +0 TLS +GLOBAL DEFAULT +9 sg8
- +15: [0-9a-f]+ +0 OBJECT  GLOBAL DEFAULT  ABS _DYNAMIC
- +16: 0+8 +0 TLS +GLOBAL DEFAULT +9 sg3
- +17: 0+c +0 TLS +GLOBAL DEFAULT +9 sg4
- +18: 0+10 +0 TLS +GLOBAL DEFAULT +9 sg5
- +19: 0+ +0 TLS +GLOBAL DEFAULT +9 sg1
- +20: [0-9a-f]+ +0 FUNC +GLOBAL DEFAULT +7 fn1
- +21: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS __bss_start
- +22: 0+4 +0 TLS +GLOBAL DEFAULT +9 sg2
- +23: 0+14 +0 TLS +GLOBAL DEFAULT +9 sg6
- +24: 0+18 +0 TLS +GLOBAL DEFAULT +9 sg7
- +25: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS _edata
- +26: [0-9a-f]+ +0 OBJECT  GLOBAL DEFAULT  ABS _GLOBAL_OFFSET_TABLE_
- +27: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS _end
- +28: 0+ +0 NOTYPE  GLOBAL DEFAULT  UND ___tls_get_addr
+ +[0-9]+: 0+ +0 NOTYPE  LOCAL  DEFAULT  UND *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +7 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +8 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +9 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +13 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +14 *
+ +[0-9]+: 0+1c +0 TLS +GLOBAL DEFAULT +8 sg8
+ +[0-9]+: [0-9a-f]+ +0 OBJECT  GLOBAL DEFAULT  ABS _DYNAMIC
+ +[0-9]+: 0+8 +0 TLS +GLOBAL DEFAULT +8 sg3
+ +[0-9]+: 0+c +0 TLS +GLOBAL DEFAULT +8 sg4
+ +[0-9]+: 0+10 +0 TLS +GLOBAL DEFAULT +8 sg5
+ +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT +8 sg1
+ +[0-9]+: [0-9a-f]+ +0 FUNC +GLOBAL DEFAULT +7 fn1
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS __bss_start
+ +[0-9]+: 0+4 +0 TLS +GLOBAL DEFAULT +8 sg2
+ +[0-9]+: 0+14 +0 TLS +GLOBAL DEFAULT +8 sg6
+ +[0-9]+: 0+18 +0 TLS +GLOBAL DEFAULT +8 sg7
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS _edata
+ +[0-9]+: [0-9a-f]+ +0 OBJECT  GLOBAL DEFAULT  ABS _GLOBAL_OFFSET_TABLE_
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS _end
+ +[0-9]+: 0+ +0 NOTYPE  GLOBAL DEFAULT  UND ___tls_get_addr
 
-Symbol table '.symtab' contains 56 entries:
+Symbol table '.symtab' contains 57 entries:
  +Num: +Value  Size Type +Bind +Vis +Ndx Name
- +0: 0+ +0 NOTYPE  LOCAL  DEFAULT  UND *
- +1: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +1 *
- +2: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +2 *
- +3: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +3 *
- +4: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +4 *
- +5: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +5 *
- +6: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +6 *
- +7: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +7 *
- +8: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +8 *
- +9: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +9 *
- +10: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +10 *
- +11: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +11 *
- +12: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +12 *
- +13: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +13 *
- +14: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +14 *
- +15: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +15 *
- +16: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +16 *
- +17: 0+20 +0 TLS +LOCAL  DEFAULT +9 sl1
- +18: 0+24 +0 TLS +LOCAL  DEFAULT +9 sl2
- +19: 0+28 +0 TLS +LOCAL  DEFAULT +9 sl3
- +20: 0+2c +0 TLS +LOCAL  DEFAULT +9 sl4
- +21: 0+30 +0 TLS +LOCAL  DEFAULT +9 sl5
- +22: 0+34 +0 TLS +LOCAL  DEFAULT +9 sl6
- +23: 0+38 +0 TLS +LOCAL  DEFAULT +9 sl7
- +24: 0+3c +0 TLS +LOCAL  DEFAULT +9 sl8
- +25: 0+60 +0 TLS +LOCAL  HIDDEN +10 sH1
- +26: 0+48 +0 TLS +LOCAL  HIDDEN +9 sh3
- +27: 0+64 +0 TLS +LOCAL  HIDDEN +10 sH2
- +28: 0+78 +0 TLS +LOCAL  HIDDEN +10 sH7
- +29: 0+58 +0 TLS +LOCAL  HIDDEN +9 sh7
- +30: 0+5c +0 TLS +LOCAL  HIDDEN +9 sh8
- +31: 0+6c +0 TLS +LOCAL  HIDDEN +10 sH4
- +32: 0+4c +0 TLS +LOCAL  HIDDEN +9 sh4
- +33: 0+68 +0 TLS +LOCAL  HIDDEN +10 sH3
- +34: 0+50 +0 TLS +LOCAL  HIDDEN +9 sh5
- +35: 0+70 +0 TLS +LOCAL  HIDDEN +10 sH5
- +36: 0+74 +0 TLS +LOCAL  HIDDEN +10 sH6
- +37: 0+7c +0 TLS +LOCAL  HIDDEN +10 sH8
- +38: 0+40 +0 TLS +LOCAL  HIDDEN +9 sh1
- +39: 0+44 +0 TLS +LOCAL  HIDDEN +9 sh2
- +40: 0+54 +0 TLS +LOCAL  HIDDEN +9 sh6
- +41: 0+1c +0 TLS +GLOBAL DEFAULT +9 sg8
- +42: [0-9a-f]+ +0 OBJECT  GLOBAL DEFAULT  ABS _DYNAMIC
- +43: 0+8 +0 TLS +GLOBAL DEFAULT +9 sg3
- +44: 0+c +0 TLS +GLOBAL DEFAULT +9 sg4
- +45: 0+10 +0 TLS +GLOBAL DEFAULT +9 sg5
- +46: 0+ +0 TLS +GLOBAL DEFAULT +9 sg1
- +47: [0-9a-f]+ +0 FUNC +GLOBAL DEFAULT +7 fn1
- +48: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS __bss_start
- +49: 0+4 +0 TLS +GLOBAL DEFAULT +9 sg2
- +50: 0+14 +0 TLS +GLOBAL DEFAULT +9 sg6
- +51: 0+18 +0 TLS +GLOBAL DEFAULT +9 sg7
- +52: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS _edata
- +53: [0-9a-f]+ +0 OBJECT  GLOBAL DEFAULT  ABS _GLOBAL_OFFSET_TABLE_
- +54: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS _end
- +55: 0+ +0 NOTYPE  GLOBAL DEFAULT  UND ___tls_get_addr
+ +[0-9]+: 0+ +0 NOTYPE  LOCAL  DEFAULT  UND *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +1 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +2 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +3 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +4 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +5 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +6 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +7 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +8 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +9 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +10 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +11 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +12 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +13 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +14 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +15 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +16 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +17 *
+ +[0-9]+: 0+20 +0 TLS +LOCAL  DEFAULT +8 sl1
+ +[0-9]+: 0+24 +0 TLS +LOCAL  DEFAULT +8 sl2
+ +[0-9]+: 0+28 +0 TLS +LOCAL  DEFAULT +8 sl3
+ +[0-9]+: 0+2c +0 TLS +LOCAL  DEFAULT +8 sl4
+ +[0-9]+: 0+30 +0 TLS +LOCAL  DEFAULT +8 sl5
+ +[0-9]+: 0+34 +0 TLS +LOCAL  DEFAULT +8 sl6
+ +[0-9]+: 0+38 +0 TLS +LOCAL  DEFAULT +8 sl7
+ +[0-9]+: 0+3c +0 TLS +LOCAL  DEFAULT +8 sl8
+ +[0-9]+: 0+60 +0 TLS +LOCAL  HIDDEN +9 sH1
+ +[0-9]+: 0+48 +0 TLS +LOCAL  HIDDEN +8 sh3
+ +[0-9]+: 0+64 +0 TLS +LOCAL  HIDDEN +9 sH2
+ +[0-9]+: 0+78 +0 TLS +LOCAL  HIDDEN +9 sH7
+ +[0-9]+: 0+58 +0 TLS +LOCAL  HIDDEN +8 sh7
+ +[0-9]+: 0+5c +0 TLS +LOCAL  HIDDEN +8 sh8
+ +[0-9]+: 0+6c +0 TLS +LOCAL  HIDDEN +9 sH4
+ +[0-9]+: 0+4c +0 TLS +LOCAL  HIDDEN +8 sh4
+ +[0-9]+: 0+68 +0 TLS +LOCAL  HIDDEN +9 sH3
+ +[0-9]+: 0+50 +0 TLS +LOCAL  HIDDEN +8 sh5
+ +[0-9]+: 0+70 +0 TLS +LOCAL  HIDDEN +9 sH5
+ +[0-9]+: 0+74 +0 TLS +LOCAL  HIDDEN +9 sH6
+ +[0-9]+: 0+7c +0 TLS +LOCAL  HIDDEN +9 sH8
+ +[0-9]+: 0+40 +0 TLS +LOCAL  HIDDEN +8 sh1
+ +[0-9]+: 0+44 +0 TLS +LOCAL  HIDDEN +8 sh2
+ +[0-9]+: 0+54 +0 TLS +LOCAL  HIDDEN +8 sh6
+ +[0-9]+: 0+1c +0 TLS +GLOBAL DEFAULT +8 sg8
+ +[0-9]+: [0-9a-f]+ +0 OBJECT  GLOBAL DEFAULT  ABS _DYNAMIC
+ +[0-9]+: 0+8 +0 TLS +GLOBAL DEFAULT +8 sg3
+ +[0-9]+: 0+c +0 TLS +GLOBAL DEFAULT +8 sg4
+ +[0-9]+: 0+10 +0 TLS +GLOBAL DEFAULT +8 sg5
+ +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT +8 sg1
+ +[0-9]+: [0-9a-f]+ +0 FUNC +GLOBAL DEFAULT +7 fn1
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS __bss_start
+ +[0-9]+: 0+4 +0 TLS +GLOBAL DEFAULT +8 sg2
+ +[0-9]+: 0+14 +0 TLS +GLOBAL DEFAULT +8 sg6
+ +[0-9]+: 0+18 +0 TLS +GLOBAL DEFAULT +8 sg7
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS _edata
+ +[0-9]+: [0-9a-f]+ +0 OBJECT  GLOBAL DEFAULT  ABS _GLOBAL_OFFSET_TABLE_
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS _end
+ +[0-9]+: 0+ +0 NOTYPE  GLOBAL DEFAULT  UND ___tls_get_addr
index e51848d..f9c9627 100644 (file)
@@ -8,7 +8,6 @@
 .*:     file format elf32-i386
 
 Contents of section \.got:
- [0-9a-f]+ [0-9a-f]+ 00000000 00000000 [0-9a-f]+  .*
  [0-9a-f]+ 00000000 20000000 dcffffff 28000000  .*
  [0-9a-f]+ d4ffffff 2c000000 30000000 00000000  .*
  [0-9a-f]+ 00000000 00000000 60000000 00000000  .*
index 466c5b4..77eebae 100644 (file)
@@ -20,11 +20,11 @@ Section Headers:
   \[ 8\] .text +PROGBITS +40+1000 0+1000 0+140 00 +AX +0 +0 4096
   \[ 9\] .IA_64.unwind_inf +.*
   \[10\] .IA_64.unwind +.*
-  \[11\] .data +.*
-  \[12\] .tdata +PROGBITS +60+2000 0+2000 0+60 00 WAT +0 +0 +4
-  \[13\] .tbss +NOBITS +60+2060 0+2060 0+40 00 WAT +0 +0 +1
-  \[14\] .dynamic +DYNAMIC +60+2060 0+2060 0+150 10 +WA +4 +0 +8
-  \[15\] .got +PROGBITS +60+21b0 0+21b0 0+48 00 WAp +0 +0 +8
+  \[11\] .tdata +PROGBITS +60+1170 0+1170 0+60 00 WAT +0 +0 +4
+  \[12\] .tbss +NOBITS +60+11d0 0+11d0 0+40 00 WAT +0 +0 +1
+  \[13\] .dynamic +DYNAMIC +60+11d0 0+11d0 0+150 10 +WA +4 +0 +8
+  \[14\] .data +.*
+  \[15\] .got +PROGBITS +60+2000 0+2000 0+48 00 WAp +0 +0 +8
   \[16\] .IA_64.pltoff +.*
   \[17\] .sbss +.*
   \[18\] .bss +.*
@@ -43,32 +43,32 @@ Program Headers:
   INTERP +0x0+1c8 0x40+1c8 0x40+1c8 0x[0-9a-f]+ 0x[0-9a-f]+ R +0x1
 .*Requesting program interpreter.*
   LOAD +0x0+ 0x40+ 0x40+ 0x0+1170 0x0+1170 R E 0x10000
-  LOAD +0x0+2000 0x60+2000 0x60+2000 0x0+210 0x0+210 RW +0x10000
-  DYNAMIC +0x0+2060 0x60+2060 0x60+2060 0x0+150 0x0+150 RW +0x8
-  TLS +0x0+2000 0x60+2000 0x60+2000 0x0+60 0x0+a0 R +0x4
+  LOAD +0x0+1170 0x60+1170 0x60+1170 0x0+ef0 0x0+ef0 RW +0x10000
+  DYNAMIC +0x0+11d0 0x60+11d0 0x60+11d0 0x0+150 0x0+150 RW +0x8
+  TLS +0x0+1170 0x60+1170 0x60+1170 0x0+60 0x0+a0 R +0x4
   IA_64_UNWIND .* R +0x8
 #...
 
 Relocation section '.rela.dyn' at offset 0x[0-9a-f]+ contains 3 entries:
  +Offset +Info +Type +Symbol's Value  Symbol's Name \+ Addend
-60+21c8  0+200000097 R_IA64_TPREL64LSB +0+ sG2 \+ 0
-60+21d0  0+5000000a7 R_IA64_DTPMOD64LSB +0+ sG1 \+ 0
-60+21d8  0+5000000b7 R_IA64_DTPREL64LSB +0+ sG1 \+ 0
+60+2018  0+200000097 R_IA64_TPREL64LSB +0+ sG2 \+ 0
+60+2020  0+5000000a7 R_IA64_DTPMOD64LSB +0+ sG1 \+ 0
+60+2028  0+5000000b7 R_IA64_DTPREL64LSB +0+ sG1 \+ 0
 
 Relocation section '.rela.IA_64.pltoff' at offset 0x[0-9a-f]+ contains 1 entries:
  +Offset +Info +Type +Symbol's Value  Symbol's Name \+ Addend
-60+2200  0+300000081 R_IA64_IPLTLSB +0+ __tls_get_addr \+ 0
+60+2050  0+300000081 R_IA64_IPLTLSB +0+ __tls_get_addr \+ 0
 
 Symbol table '.dynsym' contains 9 entries:
  +Num: +Value +Size Type +Bind +Vis +Ndx Name
  +0: 0+ +0 NOTYPE +LOCAL +DEFAULT +UND *
- +1: 60+2060 +0 OBJECT +GLOBAL DEFAULT +ABS _DYNAMIC
+ +1: 60+11d0 +0 OBJECT +GLOBAL DEFAULT +ABS _DYNAMIC
  +2: 0+ +0 TLS +GLOBAL DEFAULT +UND sG2
  +3: 0+ +16 FUNC +GLOBAL DEFAULT +UND __tls_get_addr
  +4: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS __bss_start
  +5: 0+ +0 TLS +GLOBAL DEFAULT +UND sG1
  +6: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _edata
- +7: 60+21b0 +0 OBJECT +GLOBAL DEFAULT +ABS _GLOBAL_OFFSET_TABLE_
+ +7: 60+2000 +0 OBJECT +GLOBAL DEFAULT +ABS _GLOBAL_OFFSET_TABLE_
  +8: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _end
 
 Symbol table '.symtab' contains 72 entries:
@@ -95,53 +95,53 @@ Symbol table '.symtab' contains 72 entries:
  +19: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +19 *
  +20: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +20 *
  +21: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +21 *
- +22: 0+20 +0 TLS +LOCAL +DEFAULT +12 sl1
- +23: 0+24 +0 TLS +LOCAL +DEFAULT +12 sl2
- +24: 0+28 +0 TLS +LOCAL +DEFAULT +12 sl3
- +25: 0+2c +0 TLS +LOCAL +DEFAULT +12 sl4
- +26: 0+30 +0 TLS +LOCAL +DEFAULT +12 sl5
- +27: 0+34 +0 TLS +LOCAL +DEFAULT +12 sl6
- +28: 0+38 +0 TLS +LOCAL +DEFAULT +12 sl7
- +29: 0+3c +0 TLS +LOCAL +DEFAULT +12 sl8
- +30: 0+80 +0 TLS +LOCAL +DEFAULT +13 bl1
- +31: 0+84 +0 TLS +LOCAL +DEFAULT +13 bl2
- +32: 0+88 +0 TLS +LOCAL +DEFAULT +13 bl3
- +33: 0+8c +0 TLS +LOCAL +DEFAULT +13 bl4
- +34: 0+90 +0 TLS +LOCAL +DEFAULT +13 bl5
- +35: 0+94 +0 TLS +LOCAL +DEFAULT +13 bl6
- +36: 0+98 +0 TLS +LOCAL +DEFAULT +13 bl7
- +37: 0+9c +0 TLS +LOCAL +DEFAULT +13 bl8
- +38: 0+1c +0 TLS +GLOBAL DEFAULT +12 sg8
- +39: 0+7c +0 TLS +GLOBAL DEFAULT +13 bg8
- +40: 0+74 +0 TLS +GLOBAL DEFAULT +13 bg6
- +41: 0+68 +0 TLS +GLOBAL DEFAULT +13 bg3
- +42: 60+2060 +0 OBJECT +GLOBAL DEFAULT +ABS _DYNAMIC
- +43: 0+8 +0 TLS +GLOBAL DEFAULT +12 sg3
- +44: 0+48 +0 TLS +GLOBAL HIDDEN +12 sh3
+ +22: 0+20 +0 TLS +LOCAL +DEFAULT +11 sl1
+ +23: 0+24 +0 TLS +LOCAL +DEFAULT +11 sl2
+ +24: 0+28 +0 TLS +LOCAL +DEFAULT +11 sl3
+ +25: 0+2c +0 TLS +LOCAL +DEFAULT +11 sl4
+ +26: 0+30 +0 TLS +LOCAL +DEFAULT +11 sl5
+ +27: 0+34 +0 TLS +LOCAL +DEFAULT +11 sl6
+ +28: 0+38 +0 TLS +LOCAL +DEFAULT +11 sl7
+ +29: 0+3c +0 TLS +LOCAL +DEFAULT +11 sl8
+ +30: 0+80 +0 TLS +LOCAL +DEFAULT +12 bl1
+ +31: 0+84 +0 TLS +LOCAL +DEFAULT +12 bl2
+ +32: 0+88 +0 TLS +LOCAL +DEFAULT +12 bl3
+ +33: 0+8c +0 TLS +LOCAL +DEFAULT +12 bl4
+ +34: 0+90 +0 TLS +LOCAL +DEFAULT +12 bl5
+ +35: 0+94 +0 TLS +LOCAL +DEFAULT +12 bl6
+ +36: 0+98 +0 TLS +LOCAL +DEFAULT +12 bl7
+ +37: 0+9c +0 TLS +LOCAL +DEFAULT +12 bl8
+ +38: 0+1c +0 TLS +GLOBAL DEFAULT +11 sg8
+ +39: 0+7c +0 TLS +GLOBAL DEFAULT +12 bg8
+ +40: 0+74 +0 TLS +GLOBAL DEFAULT +12 bg6
+ +41: 0+68 +0 TLS +GLOBAL DEFAULT +12 bg3
+ +42: 60+11d0 +0 OBJECT +GLOBAL DEFAULT +ABS _DYNAMIC
+ +43: 0+8 +0 TLS +GLOBAL DEFAULT +11 sg3
+ +44: 0+48 +0 TLS +GLOBAL HIDDEN +11 sh3
  +45: 0+ +0 TLS +GLOBAL DEFAULT +UND sG2
- +46: 0+c +0 TLS +GLOBAL DEFAULT +12 sg4
- +47: 0+10 +0 TLS +GLOBAL DEFAULT +12 sg5
- +48: 0+70 +0 TLS +GLOBAL DEFAULT +13 bg5
+ +46: 0+c +0 TLS +GLOBAL DEFAULT +11 sg4
+ +47: 0+10 +0 TLS +GLOBAL DEFAULT +11 sg5
+ +48: 0+70 +0 TLS +GLOBAL DEFAULT +12 bg5
  +49: 0+ +16 FUNC +GLOBAL DEFAULT +UND __tls_get_addr
- +50: 0+58 +0 TLS +GLOBAL HIDDEN +12 sh7
- +51: 0+5c +0 TLS +GLOBAL HIDDEN +12 sh8
- +52: 0+ +0 TLS +GLOBAL DEFAULT +12 sg1
+ +50: 0+58 +0 TLS +GLOBAL HIDDEN +11 sh7
+ +51: 0+5c +0 TLS +GLOBAL HIDDEN +11 sh8
+ +52: 0+ +0 TLS +GLOBAL DEFAULT +11 sg1
  +53: 40+10d0 +112 FUNC +GLOBAL DEFAULT +8 _start
- +54: 0+4c +0 TLS +GLOBAL HIDDEN +12 sh4
- +55: 0+78 +0 TLS +GLOBAL DEFAULT +13 bg7
- +56: 0+50 +0 TLS +GLOBAL HIDDEN +12 sh5
+ +54: 0+4c +0 TLS +GLOBAL HIDDEN +11 sh4
+ +55: 0+78 +0 TLS +GLOBAL DEFAULT +12 bg7
+ +56: 0+50 +0 TLS +GLOBAL HIDDEN +11 sh5
  +57: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS __bss_start
  +58: 40+1000 +208 FUNC +GLOBAL DEFAULT +8 fn2
- +59: 0+4 +0 TLS +GLOBAL DEFAULT +12 sg2
+ +59: 0+4 +0 TLS +GLOBAL DEFAULT +11 sg2
  +60: 0+ +0 TLS +GLOBAL DEFAULT +UND sG1
- +61: 0+40 +0 TLS +GLOBAL HIDDEN +12 sh1
- +62: 0+14 +0 TLS +GLOBAL DEFAULT +12 sg6
- +63: 0+18 +0 TLS +GLOBAL DEFAULT +12 sg7
+ +61: 0+40 +0 TLS +GLOBAL HIDDEN +11 sh1
+ +62: 0+14 +0 TLS +GLOBAL DEFAULT +11 sg6
+ +63: 0+18 +0 TLS +GLOBAL DEFAULT +11 sg7
  +64: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _edata
  +65: [0-9a-f]+ +0 OBJECT +GLOBAL DEFAULT +ABS _GLOBAL_OFFSET_TABLE_
  +66: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _end
- +67: 0+44 +0 TLS +GLOBAL HIDDEN +12 sh2
- +68: 0+54 +0 TLS +GLOBAL HIDDEN +12 sh6
- +69: 0+64 +0 TLS +GLOBAL DEFAULT +13 bg2
- +70: 0+60 +0 TLS +GLOBAL DEFAULT +13 bg1
- +71: 0+6c +0 TLS +GLOBAL DEFAULT +13 bg4
+ +67: 0+44 +0 TLS +GLOBAL HIDDEN +11 sh2
+ +68: 0+54 +0 TLS +GLOBAL HIDDEN +11 sh6
+ +69: 0+64 +0 TLS +GLOBAL DEFAULT +12 bg2
+ +70: 0+60 +0 TLS +GLOBAL DEFAULT +12 bg1
+ +71: 0+6c +0 TLS +GLOBAL DEFAULT +12 bg4
index 847a20d..4ee17c6 100644 (file)
@@ -8,8 +8,8 @@
 .*: +file format elf..-ia64-.*
 
 Contents of section .got:
- (60+)?21b0 0+ 0+ 0+ 0+  .*
- (60+)?21c0 0+ 0+ 0+ 0+  .*
- (60+)?21d0 0+ 0+ 0+ 0+  .*
- (60+)?21e0 01000000 0+ 90000000 0+  .*
- (60+)?21f0 24000000 0+  .*
+ (60+)?2000 0+ 0+ 0+ 0+  .*
+ (60+)?2010 0+ 0+ 0+ 0+  .*
+ (60+)?2020 0+ 0+ 0+ 0+  .*
+ (60+)?2030 01000000 0+ 90000000 0+  .*
+ (60+)?2040 24000000 0+  .*
index 3d58077..d4492e8 100644 (file)
@@ -8,9 +8,9 @@
 .*: +file format elf..-ia64-.*
 
 Contents of section .tdata:
- (60+)?2000 11000000 12000000 13000000 14000000  .*
- (60+)?2010 15000000 16000000 17000000 18000000  .*
- (60+)?2020 41000000 42000000 43000000 44000000  .*
- (60+)?2030 45000000 46000000 47000000 48000000  .*
- (60+)?2040 01010000 02010000 03010000 04010000  .*
- (60+)?2050 05010000 06010000 07010000 08010000  .*
+ (60+)?1170 11000000 12000000 13000000 14000000  .*
+ (60+)?1180 15000000 16000000 17000000 18000000  .*
+ (60+)?1190 41000000 42000000 43000000 44000000  .*
+ (60+)?11a0 45000000 46000000 47000000 48000000  .*
+ (60+)?11b0 01010000 02010000 03010000 04010000  .*
+ (60+)?11c0 05010000 06010000 07010000 08010000  .*
index 79da6af..cfbbbe4 100644 (file)
@@ -18,25 +18,25 @@ Disassembly of section .text:
  +101c:        01 0a 00 90[    ]+addl r15=32,r1;;
  +1020:        19 18 01 1c 18 10[      ]+\[MMB\] +ld8 r35=\[r14\]
  +1026:        40 02 3c 30 20 00[      ]+ld8 r36=\[r15\]
- +102c:        88 f6 ff 58[    ]+br.call.sptk.many b0=[0-9a-f]+ <.*>;;
+ +102c:        88 f5 ff 58[    ]+br.call.sptk.many b0=[0-9a-f]+ <.*>;;
  +1030:        0d 70 c0 02 00 24[      ]+\[MFI\] +addl r14=48,r1
  +1036:        00 00 00 02 00 e0[      ]+nop.f 0x0
  +103c:        01 0c 00 90[    ]+addl r15=64,r1;;
  +1040:        19 18 01 1c 18 10[      ]+\[MMB\] +ld8 r35=\[r14\]
  +1046:        40 02 3c 30 20 00[      ]+ld8 r36=\[r15\]
- +104c:        68 f6 ff 58[    ]+br.call.sptk.many b0=[0-9a-f]+ <.*>;;
+ +104c:        68 f5 ff 58[    ]+br.call.sptk.many b0=[0-9a-f]+ <.*>;;
  +1050:        0d 70 c0 02 00 24[      ]+\[MFI\] +addl r14=48,r1
  +1056:        00 00 00 02 00 80[      ]+nop.f 0x0
  +105c:        14 02 00 90[    ]+mov r36=33;;
  +1060:        1d 18 01 1c 18 10[      ]+\[MFB\] +ld8 r35=\[r14\]
  +1066:        00 00 00 02 00 00[      ]+nop.f 0x0
- +106c:        48 f6 ff 58[    ]+br.call.sptk.many b0=[0-9a-f]+ <.*>;;
+ +106c:        48 f5 ff 58[    ]+br.call.sptk.many b0=[0-9a-f]+ <.*>;;
  +1070:        0d 70 c0 02 00 24[      ]+\[MFI\] +addl r14=48,r1
  +1076:        00 00 00 02 00 80[      ]+nop.f 0x0
  +107c:        04 00 00 84[    ]+mov r36=r0;;
  +1080:        1d 18 01 1c 18 10[      ]+\[MFB\] +ld8 r35=\[r14\]
  +1086:        00 00 00 02 00 00[      ]+nop.f 0x0
- +108c:        28 f6 ff 58[    ]+br.call.sptk.many b0=[0-9a-f]+ <.*>;;
+ +108c:        28 f5 ff 58[    ]+br.call.sptk.many b0=[0-9a-f]+ <.*>;;
  +1090:        0b 10 00 10 00 21[      ]+\[MMI\] +mov r2=r8;;
  +1096:        e0 00 0a 00 48 e0[      ]+addl r14=64,r2
  +109c:        21 16 00 90[    ]+addl r15=98,r2;;
index 1088f8e..9da9519 100644 (file)
@@ -19,11 +19,11 @@ Section Headers:
   \[ 7\] .text +PROGBITS +0+1000 0+1000 0+110 00 +AX +0 +0 4096
   \[ 8\] .IA_64.unwind_inf +.*
   \[ 9\] .IA_64.unwind +.*
-  \[10\] .data +.*
-  \[11\] .tdata +PROGBITS +0+12000 0+2000 0+60 00 WAT +0 +0 +4
-  \[12\] .tbss +NOBITS +0+12060 0+2060 0+20 00 WAT +0 +0 +1
-  \[13\] .dynamic +DYNAMIC +0+12060 0+2060 0+140 10 +WA +3 +0 +8
-  \[14\] .got +PROGBITS +0+121a0 0+21a0 0+50 00 WAp +0 +0 +8
+  \[10\] .tdata +PROGBITS +0+11140 0+1140 0+60 00 WAT +0 +0 +4
+  \[11\] .tbss +NOBITS +0+111a0 0+11a0 0+20 00 WAT +0 +0 +1
+  \[12\] .dynamic +DYNAMIC +0+111a0 0+11a0 0+140 10 +WA +3 +0 +8
+  \[13\] .data +.*
+  \[14\] .got +PROGBITS +0+12000 0+2000 0+50 00 WAp +0 +0 +8
   \[15\] .IA_64.pltoff +.*
   \[16\] .sbss +.*
   \[17\] .bss +.*
@@ -40,120 +40,111 @@ There are 5 program headers, starting at offset [0-9]+
 Program Headers:
   Type +Offset +VirtAddr +PhysAddr +FileSiz +MemSiz +Flg Align
   LOAD +0x0+ 0x0+ 0x0+ 0x0+1140 0x0+1140 R E 0x10000
-  LOAD +0x0+2000 0x0+12000 0x0+12000 0x0+200 0x0+200 RW +0x10000
-  DYNAMIC +0x0+2060 0x0+12060 0x0+12060 0x0+140 0x0+140 RW +0x8
-  TLS +0x0+2000 0x0+12000 0x0+12000 0x0+60 0x0+80 R +0x4
+  LOAD +0x0+1140 0x0+11140 0x0+11140 0x0+f20 0x0+f20 RW +0x10000
+  DYNAMIC +0x0+11a0 0x0+111a0 0x0+111a0 0x0+140 0x0+140 RW +0x8
+  TLS +0x0+1140 0x0+11140 0x0+11140 0x0+60 0x0+80 R +0x4
   IA_64_UNWIND +0x0+1128 0x0+1128 0x0+1128 0x0+18 0x0+18 R +0x8
 #...
 
 Relocation section '.rela.dyn' at offset 0x[0-9a-f]+ contains 6 entries:
  +Offset +Info +Type +Symbol's Value +Symbol's Name \+ Addend
-0+121b8 +0+18000000a7 R_IA64_DTPMOD64LSB +0+ sg1 \+ 0
-0+121c0 +0+18000000b7 R_IA64_DTPREL64LSB +0+ sg1 \+ 0
-0+121c8 +0+1b00000097 R_IA64_TPREL64LSB +0+4 sg2 \+ 0
-0+121d0 +0+a7 R_IA64_DTPMOD64LSB +0+
-0+121d8 +0+97 R_IA64_TPREL64LSB +0+44
-0+121e8 +0+97 R_IA64_TPREL64LSB +0+24
+0+12018 +0+f000000a7 R_IA64_DTPMOD64LSB +0+ sg1 \+ 0
+0+12020 +0+f000000b7 R_IA64_DTPREL64LSB +0+ sg1 \+ 0
+0+12028 +0+1200000097 R_IA64_TPREL64LSB +0+4 sg2 \+ 0
+0+12030 +0+a7 R_IA64_DTPMOD64LSB +0+
+0+12038 +0+97 R_IA64_TPREL64LSB +0+44
+0+12048 +0+97 R_IA64_TPREL64LSB +0+24
 
 Relocation section '.rela.IA_64.pltoff' at offset 0x[0-9a-f]+ contains 1 entries:
  +Offset +Info +Type +Symbol's Value +Symbol's Name \+ Addend
-0+[0-9a-f]+ +0+1700000081 R_IA64_IPLTLSB +0+ __tls_get_addr \+ 0
+0+[0-9a-f]+ +0+e00000081 R_IA64_IPLTLSB +0+ __tls_get_addr \+ 0
 
-Symbol table '.dynsym' contains 33 entries:
+Symbol table '.dynsym' contains 24 entries:
  +Num: +Value +Size Type +Bind +Vis +Ndx Name
- +0: 0+ +0 NOTYPE +LOCAL +DEFAULT +UND *
- +1: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +1 *
- +2: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +2 *
- +3: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +3 *
- +4: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +4 *
- +5: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +5 *
- +6: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +6 *
- +7: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +7 *
- +8: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +8 *
- +9: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +9 *
- +10: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +10 *
- +11: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +11 *
- +12: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +12 *
- +13: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +13 *
- +14: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +14 *
- +15: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +15 *
- +16: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +16 *
- +17: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +17 *
- +18: 0+1c +0 TLS +GLOBAL DEFAULT +11 sg8
- +19: 0+12060 +0 OBJECT +GLOBAL DEFAULT +ABS _DYNAMIC
- +20: 0+8 +0 TLS +GLOBAL DEFAULT +11 sg3
- +21: 0+c +0 TLS +GLOBAL DEFAULT +11 sg4
- +22: 0+10 +0 TLS +GLOBAL DEFAULT +11 sg5
- +23: 0+ +0 NOTYPE +GLOBAL DEFAULT +UND __tls_get_addr
- +24: 0+ +0 TLS +GLOBAL DEFAULT +11 sg1
- +25: 0+1000 +272 FUNC +GLOBAL DEFAULT +7 fn1
- +26: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS __bss_start
- +27: 0+4 +0 TLS +GLOBAL DEFAULT +11 sg2
- +28: 0+14 +0 TLS +GLOBAL DEFAULT +11 sg6
- +29: 0+18 +0 TLS +GLOBAL DEFAULT +11 sg7
- +30: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _edata
- +31: 0+121a0 +0 OBJECT +GLOBAL DEFAULT +ABS _GLOBAL_OFFSET_TABLE_
- +32: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _end
+ +[0-9]+: 0+ +0 NOTYPE +LOCAL +DEFAULT +UND *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +7 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +8 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +9 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +10 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +11 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +13 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +15 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +17 *
+ +[0-9]+: 0+1c +0 TLS +GLOBAL DEFAULT +10 sg8
+ +[0-9]+: 0+111a0 +0 OBJECT +GLOBAL DEFAULT +ABS _DYNAMIC
+ +[0-9]+: 0+8 +0 TLS +GLOBAL DEFAULT +10 sg3
+ +[0-9]+: 0+c +0 TLS +GLOBAL DEFAULT +10 sg4
+ +[0-9]+: 0+10 +0 TLS +GLOBAL DEFAULT +10 sg5
+ +[0-9]+: 0+ +0 NOTYPE +GLOBAL DEFAULT +UND __tls_get_addr
+ +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT +10 sg1
+ +[0-9]+: 0+1000 +272 FUNC +GLOBAL DEFAULT +7 fn1
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS __bss_start
+ +[0-9]+: 0+4 +0 TLS +GLOBAL DEFAULT +10 sg2
+ +[0-9]+: 0+14 +0 TLS +GLOBAL DEFAULT +10 sg6
+ +[0-9]+: 0+18 +0 TLS +GLOBAL DEFAULT +10 sg7
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _edata
+ +[0-9]+: 0+12000 +0 OBJECT +GLOBAL DEFAULT +ABS _GLOBAL_OFFSET_TABLE_
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _end
 
 Symbol table '.symtab' contains 60 entries:
  +Num: +Value +Size Type +Bind +Vis +Ndx Name
- +0: 0+ +0 NOTYPE +LOCAL +DEFAULT +UND *
- +1: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +1 *
- +2: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +2 *
- +3: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +3 *
- +4: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +4 *
- +5: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +5 *
- +6: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +6 *
- +7: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +7 *
- +8: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +8 *
- +9: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +9 *
- +10: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +10 *
- +11: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +11 *
- +12: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +12 *
- +13: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +13 *
- +14: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +14 *
- +15: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +15 *
- +16: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +16 *
- +17: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +17 *
- +18: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +18 *
- +19: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +19 *
- +20: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +20 *
- +21: 0+20 +0 TLS +LOCAL +DEFAULT +11 sl1
- +22: 0+24 +0 TLS +LOCAL +DEFAULT +11 sl2
- +23: 0+28 +0 TLS +LOCAL +DEFAULT +11 sl3
- +24: 0+2c +0 TLS +LOCAL +DEFAULT +11 sl4
- +25: 0+30 +0 TLS +LOCAL +DEFAULT +11 sl5
- +26: 0+34 +0 TLS +LOCAL +DEFAULT +11 sl6
- +27: 0+38 +0 TLS +LOCAL +DEFAULT +11 sl7
- +28: 0+3c +0 TLS +LOCAL +DEFAULT +11 sl8
- +29: 0+60 +0 TLS +LOCAL +HIDDEN +12 sH1
- +30: 0+48 +0 TLS +LOCAL +HIDDEN +11 sh3
- +31: 0+64 +0 TLS +LOCAL +HIDDEN +12 sH2
- +32: 0+78 +0 TLS +LOCAL +HIDDEN +12 sH7
- +33: 0+58 +0 TLS +LOCAL +HIDDEN +11 sh7
- +34: 0+5c +0 TLS +LOCAL +HIDDEN +11 sh8
- +35: 0+6c +0 TLS +LOCAL +HIDDEN +12 sH4
- +36: 0+4c +0 TLS +LOCAL +HIDDEN +11 sh4
- +37: 0+68 +0 TLS +LOCAL +HIDDEN +12 sH3
- +38: 0+50 +0 TLS +LOCAL +HIDDEN +11 sh5
- +39: 0+70 +0 TLS +LOCAL +HIDDEN +12 sH5
- +40: 0+74 +0 TLS +LOCAL +HIDDEN +12 sH6
- +41: 0+7c +0 TLS +LOCAL +HIDDEN +12 sH8
- +42: 0+40 +0 TLS +LOCAL +HIDDEN +11 sh1
- +43: 0+44 +0 TLS +LOCAL +HIDDEN +11 sh2
- +44: 0+54 +0 TLS +LOCAL +HIDDEN +11 sh6
- +45: 0+1c +0 TLS +GLOBAL DEFAULT +11 sg8
- +46: 0+12060 +0 OBJECT +GLOBAL DEFAULT +ABS _DYNAMIC
- +47: 0+8 +0 TLS +GLOBAL DEFAULT +11 sg3
- +48: 0+c +0 TLS +GLOBAL DEFAULT +11 sg4
- +49: 0+10 +0 TLS +GLOBAL DEFAULT +11 sg5
- +50: 0+ +0 NOTYPE +GLOBAL DEFAULT +UND __tls_get_addr
- +51: 0+ +0 TLS +GLOBAL DEFAULT +11 sg1
- +52: 0+1000 +272 FUNC +GLOBAL DEFAULT +7 fn1
- +53: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS __bss_start
- +54: 0+4 +0 TLS +GLOBAL DEFAULT +11 sg2
- +55: 0+14 +0 TLS +GLOBAL DEFAULT +11 sg6
- +56: 0+18 +0 TLS +GLOBAL DEFAULT +11 sg7
- +57: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _edata
- +58: 0+121a0 +0 OBJECT +GLOBAL DEFAULT +ABS _GLOBAL_OFFSET_TABLE_
- +59: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _end
+ +[0-9]+: 0+ +0 NOTYPE +LOCAL +DEFAULT +UND *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +1 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +2 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +3 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +4 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +5 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +6 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +7 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +8 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +9 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +10 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +11 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +12 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +13 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +14 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +15 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +16 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +17 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +18 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +19 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +20 *
+ +[0-9]+: 0+20 +0 TLS +LOCAL +DEFAULT +10 sl1
+ +[0-9]+: 0+24 +0 TLS +LOCAL +DEFAULT +10 sl2
+ +[0-9]+: 0+28 +0 TLS +LOCAL +DEFAULT +10 sl3
+ +[0-9]+: 0+2c +0 TLS +LOCAL +DEFAULT +10 sl4
+ +[0-9]+: 0+30 +0 TLS +LOCAL +DEFAULT +10 sl5
+ +[0-9]+: 0+34 +0 TLS +LOCAL +DEFAULT +10 sl6
+ +[0-9]+: 0+38 +0 TLS +LOCAL +DEFAULT +10 sl7
+ +[0-9]+: 0+3c +0 TLS +LOCAL +DEFAULT +10 sl8
+ +[0-9]+: 0+60 +0 TLS +LOCAL +HIDDEN +11 sH1
+ +[0-9]+: 0+48 +0 TLS +LOCAL +HIDDEN +10 sh3
+ +[0-9]+: 0+64 +0 TLS +LOCAL +HIDDEN +11 sH2
+ +[0-9]+: 0+78 +0 TLS +LOCAL +HIDDEN +11 sH7
+ +[0-9]+: 0+58 +0 TLS +LOCAL +HIDDEN +10 sh7
+ +[0-9]+: 0+5c +0 TLS +LOCAL +HIDDEN +10 sh8
+ +[0-9]+: 0+6c +0 TLS +LOCAL +HIDDEN +11 sH4
+ +[0-9]+: 0+4c +0 TLS +LOCAL +HIDDEN +10 sh4
+ +[0-9]+: 0+68 +0 TLS +LOCAL +HIDDEN +11 sH3
+ +[0-9]+: 0+50 +0 TLS +LOCAL +HIDDEN +10 sh5
+ +[0-9]+: 0+70 +0 TLS +LOCAL +HIDDEN +11 sH5
+ +[0-9]+: 0+74 +0 TLS +LOCAL +HIDDEN +11 sH6
+ +[0-9]+: 0+7c +0 TLS +LOCAL +HIDDEN +11 sH8
+ +[0-9]+: 0+40 +0 TLS +LOCAL +HIDDEN +10 sh1
+ +[0-9]+: 0+44 +0 TLS +LOCAL +HIDDEN +10 sh2
+ +[0-9]+: 0+54 +0 TLS +LOCAL +HIDDEN +10 sh6
+ +[0-9]+: 0+1c +0 TLS +GLOBAL DEFAULT +10 sg8
+ +[0-9]+: 0+111a0 +0 OBJECT +GLOBAL DEFAULT +ABS _DYNAMIC
+ +[0-9]+: 0+8 +0 TLS +GLOBAL DEFAULT +10 sg3
+ +[0-9]+: 0+c +0 TLS +GLOBAL DEFAULT +10 sg4
+ +[0-9]+: 0+10 +0 TLS +GLOBAL DEFAULT +10 sg5
+ +[0-9]+: 0+ +0 NOTYPE +GLOBAL DEFAULT +UND __tls_get_addr
+ +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT +10 sg1
+ +[0-9]+: 0+1000 +272 FUNC +GLOBAL DEFAULT +7 fn1
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS __bss_start
+ +[0-9]+: 0+4 +0 TLS +GLOBAL DEFAULT +10 sg2
+ +[0-9]+: 0+14 +0 TLS +GLOBAL DEFAULT +10 sg6
+ +[0-9]+: 0+18 +0 TLS +GLOBAL DEFAULT +10 sg7
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _edata
+ +[0-9]+: 0+12000 +0 OBJECT +GLOBAL DEFAULT +ABS _GLOBAL_OFFSET_TABLE_
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _end
index 41d4951..0838b0f 100644 (file)
@@ -8,8 +8,8 @@
 .*: +file format elf..-ia64-.*
 
 Contents of section .got:
- 121a0 0+ 0+ 0+ 0+  .*
- 121b0 0+ 0+ [0-9a-f]+ [0-9a-f]+  .*
- 121c0 [0-9a-f]+ [0-9a-f]+ [0-9a-f]+ [0-9a-f]+  .*
- 121d0 [0-9a-f]+ [0-9a-f]+ [0-9a-f]+ [0-9a-f]+  .*
- 121e0 440+ 0+ [0-9a-f]+ [0-9a-f]+  .*
+ 12000 0+ 0+ 0+ 0+  .*
+ 12010 0+ 0+ [0-9a-f]+ [0-9a-f]+  .*
+ 12020 [0-9a-f]+ [0-9a-f]+ [0-9a-f]+ [0-9a-f]+  .*
+ 12030 [0-9a-f]+ [0-9a-f]+ [0-9a-f]+ [0-9a-f]+  .*
+ 12040 440+ 0+ [0-9a-f]+ [0-9a-f]+  .*
index 16c4a8a..86ac0e3 100644 (file)
@@ -8,9 +8,9 @@
 .*: +file format elf..-ia64-.*
 
 Contents of section .tdata:
- 12000 11000000 12000000 13000000 14000000  .*
- 12010 15000000 16000000 17000000 18000000  .*
- 12020 41000000 42000000 43000000 44000000  .*
- 12030 45000000 46000000 47000000 48000000  .*
- 12040 01010000 02010000 03010000 04010000  .*
- 12050 05010000 06010000 07010000 08010000  .*
+ 11140 11000000 12000000 13000000 14000000  .*
+ 11150 15000000 16000000 17000000 18000000  .*
+ 11160 41000000 42000000 43000000 44000000  .*
+ 11170 45000000 46000000 47000000 48000000  .*
+ 11180 01010000 02010000 03010000 04010000  .*
+ 11190 05010000 06010000 07010000 08010000  .*
index 1d082ec..801312c 100644 (file)
@@ -10,25 +10,25 @@ There are 20 section headers.*
 Section Headers:
  +\[Nr\] Name +Type +Address +Off +Size +ES Flg Lk Inf Al
  +\[ 0\] +NULL +0+ 0+ 0+ 0+ +0 +0 +0
- +\[ 1\] \.interp +PROGBITS +0+10000190 0+190 0+11 0+ +A +0 +0 +1
- +\[ 2\] \.hash +HASH +0+100001a8 0+1a8 0+3c 04 +A +3 +0 +8
- +\[ 3\] \.dynsym +DYNSYM +0+100001e8 0+1e8 0+f0 18 +A +4 +1 +8
- +\[ 4\] \.dynstr +STRTAB +0+100002d8 0+2d8 0+50 0+ +A +0 +0 +1
- +\[ 5\] \.rela\.dyn +RELA +0+10000328 0+328 0+48 18 +A +3 +0 +8
- +\[ 6\] \.rela\.plt +RELA +0+10000370 0+370 0+18 18 +A +3 +15 +8
+ +\[ 1\] \.interp +.*
+ +\[ 2\] \.hash +.*
+ +\[ 3\] \.dynsym +.*
+ +\[ 4\] \.dynstr +.*
+ +\[ 5\] \.rela\.dyn +.*
+ +\[ 6\] \.rela\.plt +.*
  +\[ 7\] \.text +PROGBITS +0+10000388 0+388 0+fc 0+ +AX +0 +0 +4
- +\[ 8\] \.data +PROGBITS +0+10010488 0+488 0+ 0+ +WA +0 +0 +1
- +\[ 9\] \.branch_lt +PROGBITS +0+10010488 0+488 0+ 0+ +WA +0 +0 +8
- +\[10\] \.tdata +PROGBITS +0+10010488 0+488 0+38 0+ WAT +0 +0 +8
- +\[11\] \.tbss +NOBITS +0+100104c0 0+4c0 0+38 0+ WAT +0 +0 +8
- +\[12\] \.dynamic +DYNAMIC +0+100104c0 0+4c0 0+150 10 +WA +4 +0 +8
+ +\[ 8\] \.tdata +PROGBITS +0+10010488 0+488 0+38 0+ WAT +0 +0 +8
+ +\[ 9\] \.tbss +NOBITS +0+100104c0 0+4c0 0+38 0+ WAT +0 +0 +8
+ +\[10\] \.dynamic +DYNAMIC +0+100104c0 0+4c0 0+150 10 +WA +4 +0 +8
+ +\[11\] \.data +PROGBITS +0+10010610 0+610 0+ 0+ +WA +0 +0 +1
+ +\[12\] \.branch_lt +.*
  +\[13\] \.got +PROGBITS +0+10010610 0+610 0+30 08 +WA +0 +0 +8
- +\[14\] \.sbss +NOBITS +0+10010640 0+640 0+ 0+ +W +0 +0 +1
- +\[15\] \.plt +NOBITS +0+10010640 0+640 0+30 18 +WA +0 +0 +8
- +\[16\] \.bss +NOBITS +0+10010670 0+640 0+ 0+ +WA +0 +0 +1
- +\[17\] \.shstrtab +STRTAB +0+ 0+640 0+8a 0+ +0 +0 +1
- +\[18\] \.symtab +SYMTAB +0+ 0+bd0 0+408 18 +19 +27 +8
- +\[19\] \.strtab +STRTAB +0+ 0+fd8 0+86 0+ +0 +0 +1
+ +\[14\] \.sbss +.*
+ +\[15\] \.plt +.*
+ +\[16\] \.bss +.*
+ +\[17\] \.shstrtab +.*
+ +\[18\] \.symtab +.*
+ +\[19\] \.strtab +.*
 #...
 
 Elf file type is EXEC \(Executable file\)
@@ -72,7 +72,7 @@ Symbol table '\.dynsym' contains 10 entries:
  +3: 0+ +0 FUNC +GLOBAL DEFAULT +UND __tls_get_addr
  +4: 0+ +0 FUNC +GLOBAL DEFAULT +UND \.__tls_get_addr
  +5: 0+ +0 TLS +GLOBAL DEFAULT +UND ld
- +6: 0+50 +0 TLS +GLOBAL DEFAULT +11 ld2
+ +6: 0+50 +0 TLS +GLOBAL DEFAULT +9 ld2
  +7: 0+10010640 +0 NOTYPE +GLOBAL DEFAULT +ABS __bss_start
  +8: 0+10010640 +0 NOTYPE +GLOBAL DEFAULT +ABS _edata
  +9: 0+10010670 +0 NOTYPE +GLOBAL DEFAULT +ABS _end
@@ -80,45 +80,45 @@ Symbol table '\.dynsym' contains 10 entries:
 Symbol table '\.symtab' contains 43 entries:
  +Num: +Value +Size Type +Bind +Vis +Ndx Name
  +0: 0+ +0 NOTYPE +LOCAL +DEFAULT +UND 
- +1: 0+10000190 +0 SECTION LOCAL +DEFAULT +1 
- +2: 0+100001a8 +0 SECTION LOCAL +DEFAULT +2 
- +3: 0+100001e8 +0 SECTION LOCAL +DEFAULT +3 
- +4: 0+100002d8 +0 SECTION LOCAL +DEFAULT +4 
- +5: 0+10000328 +0 SECTION LOCAL +DEFAULT +5 
- +6: 0+10000370 +0 SECTION LOCAL +DEFAULT +6 
+ +1: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +1 
+ +2: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +2 
+ +3: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +3 
+ +4: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +4 
+ +5: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +5 
+ +6: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +6 
  +7: 0+10000388 +0 SECTION LOCAL +DEFAULT +7 
  +8: 0+10010488 +0 SECTION LOCAL +DEFAULT +8 
- +9: 0+10010488 +0 SECTION LOCAL +DEFAULT +9 
- +10: 0+10010488 +0 SECTION LOCAL +DEFAULT +10 
- +11: 0+100104c0 +0 SECTION LOCAL +DEFAULT +11 
- +12: 0+100104c0 +0 SECTION LOCAL +DEFAULT +12 
+ +9: 0+100104c0 +0 SECTION LOCAL +DEFAULT +9 
+ +10: 0+100104c0 +0 SECTION LOCAL +DEFAULT +10 
+ +11: 0+10010610 +0 SECTION LOCAL +DEFAULT +11 
+ +12: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +12 
  +13: 0+10010610 +0 SECTION LOCAL +DEFAULT +13 
- +14: 0+10010640 +0 SECTION LOCAL +DEFAULT +14 
- +15: 0+10010640 +0 SECTION LOCAL +DEFAULT +15 
- +16: 0+10010670 +0 SECTION LOCAL +DEFAULT +16 
+ +14: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +14 
+ +15: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +15 
+ +16: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +16 
  +17: 0+ +0 SECTION LOCAL +DEFAULT +17 
  +18: 0+ +0 SECTION LOCAL +DEFAULT +18 
  +19: 0+ +0 SECTION LOCAL +DEFAULT +19 
- +20: 0+ +0 TLS +LOCAL +DEFAULT +10 gd4
- +21: 0+8 +0 TLS +LOCAL +DEFAULT +10 ld4
- +22: 0+10 +0 TLS +LOCAL +DEFAULT +10 ld5
- +23: 0+18 +0 TLS +LOCAL +DEFAULT +10 ld6
- +24: 0+20 +0 TLS +LOCAL +DEFAULT +10 ie4
- +25: 0+28 +0 TLS +LOCAL +DEFAULT +10 le4
- +26: 0+30 +0 TLS +LOCAL +DEFAULT +10 le5
+ +20: 0+ +0 TLS +LOCAL +DEFAULT +8 gd4
+ +21: 0+8 +0 TLS +LOCAL +DEFAULT +8 ld4
+ +22: 0+10 +0 TLS +LOCAL +DEFAULT +8 ld5
+ +23: 0+18 +0 TLS +LOCAL +DEFAULT +8 ld6
+ +24: 0+20 +0 TLS +LOCAL +DEFAULT +8 ie4
+ +25: 0+28 +0 TLS +LOCAL +DEFAULT +8 le4
+ +26: 0+30 +0 TLS +LOCAL +DEFAULT +8 le5
  +27: 0+100104c0 +0 OBJECT +GLOBAL DEFAULT +ABS _DYNAMIC
  +28: 0+ +0 TLS +GLOBAL DEFAULT +UND gd
- +29: 0+60 +0 TLS +GLOBAL DEFAULT +11 le0
+ +29: 0+60 +0 TLS +GLOBAL DEFAULT +9 le0
  +30: 0+ +0 FUNC +GLOBAL DEFAULT +UND __tls_get_addr
  +31: 0+ +0 FUNC +GLOBAL DEFAULT +UND \.__tls_get_addr
- +32: 0+40 +0 TLS +GLOBAL DEFAULT +11 ld0
- +33: 0+68 +0 TLS +GLOBAL DEFAULT +11 le1
+ +32: 0+40 +0 TLS +GLOBAL DEFAULT +9 ld0
+ +33: 0+68 +0 TLS +GLOBAL DEFAULT +9 le1
  +34: 0+ +0 TLS +GLOBAL DEFAULT +UND ld
- +35: 0+100003a4 +0 NOTYPE +GLOBAL DEFAULT +7 _start
- +36: 0+50 +0 TLS +GLOBAL DEFAULT +11 ld2
- +37: 0+48 +0 TLS +GLOBAL DEFAULT +11 ld1
- +38: 0+10010640 +0 NOTYPE +GLOBAL DEFAULT +ABS __bss_start
- +39: 0+10010640 +0 NOTYPE +GLOBAL DEFAULT +ABS _edata
- +40: 0+10010670 +0 NOTYPE +GLOBAL DEFAULT +ABS _end
- +41: 0+38 +0 TLS +GLOBAL DEFAULT +11 gd0
- +42: 0+58 +0 TLS +GLOBAL DEFAULT +11 ie0
+ +35: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +7 _start
+ +36: 0+50 +0 TLS +GLOBAL DEFAULT +9 ld2
+ +37: 0+48 +0 TLS +GLOBAL DEFAULT +9 ld1
+ +38: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS __bss_start
+ +39: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _edata
+ +40: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _end
+ +41: 0+38 +0 TLS +GLOBAL DEFAULT +9 gd0
+ +42: 0+58 +0 TLS +GLOBAL DEFAULT +9 ie0
index 4fe7b64..217473c 100644 (file)
@@ -10,26 +10,26 @@ There are 21 section headers.*
 Section Headers:
  +\[Nr\] Name +Type +Addr +Off +Size +ES Flg Lk Inf Al
  +\[ 0\] +NULL +00000000 000000 000000 00 +0 +0 +0
- +\[ 1\] \.interp +PROGBITS +01800114 000114 000011 00 +A +0 +0 +1
- +\[ 2\] \.hash +HASH +01800128 000128 00003c 04 +A +3 +0 +4
- +\[ 3\] \.dynsym +DYNSYM +01800164 000164 0000a0 10 +A +4 +1 +4
- +\[ 4\] \.dynstr +STRTAB +01800204 000204 000064 00 +A +0 +0 +1
- +\[ 5\] \.rela\.dyn +RELA +01800268 000268 000018 0c +A +3 +0 +4
- +\[ 6\] \.rela\.plt +RELA +01800280 000280 00000c 0c +A +3 +16 +4
+ +\[ 1\] \.interp +.*
+ +\[ 2\] \.hash +.*
+ +\[ 3\] \.dynsym +.*
+ +\[ 4\] \.dynstr +.*
+ +\[ 5\] \.rela\.dyn +.*
+ +\[ 6\] \.rela\.plt +.*
  +\[ 7\] \.text +PROGBITS +0180028c 00028c 000070 00 +AX +0 +0 +1
- +\[ 8\] \.sdata2 +PROGBITS +018002fc 0002fc 000000 00 +A +0 +0 +4
- +\[ 9\] \.data +PROGBITS +018102fc 0002fc 000000 00 +WA +0 +0 +1
- +\[10\] \.tdata +PROGBITS +018102fc 0002fc 00001c 00 WAT +0 +0 +4
- +\[11\] \.tbss +NOBITS +01810318 000318 00001c 00 WAT +0 +0 +4
- +\[12\] \.dynamic +DYNAMIC +01810318 000318 0000a0 08 +WA +4 +0 +4
+ +\[ 8\] \.sdata2 +PROGBITS +.*
+ +\[ 9\] \.tdata +PROGBITS +018102fc 0002fc 00001c 00 WAT +0 +0 +4
+ +\[10\] \.tbss +NOBITS +01810318 000318 00001c 00 WAT +0 +0 +4
+ +\[11\] \.dynamic +DYNAMIC +01810318 000318 0000a0 08 +WA +4 +0 +4
+ +\[12\] \.data +PROGBITS +018103b8 0003b8 000000 00 +WA +0 +0 +1
  +\[13\] \.got +PROGBITS +018103b8 0003b8 00001c 04 WAX +0 +0 +4
  +\[14\] \.sdata +PROGBITS +018103d4 0003d4 000000 00 +WA +0 +0 +4
  +\[15\] \.sbss +NOBITS +018103d4 0003d4 000000 00 +WA +0 +0 +1
- +\[16\] \.plt +NOBITS +018103d4 0003d4 000054 00 WAX +0 +0 +4
- +\[17\] \.bss +NOBITS +01810428 0003d4 000000 00 +WA +0 +0 +1
- +\[18\] \.shstrtab +STRTAB +00000000 0003d4 00008e 00 +0 +0 +1
- +\[19\] \.symtab +SYMTAB +00000000 0007ac 0002f0 10 +20 +28 +4
- +\[20\] \.strtab +STRTAB +00000000 000a9c 0000a9 00 +0 +0 +1
+ +\[16\] \.plt +NOBITS +.*
+ +\[17\] \.bss +NOBITS +.*
+ +\[18\] \.shstrtab +STRTAB +.*
+ +\[19\] \.symtab +SYMTAB +.*
+ +\[20\] \.strtab +STRTAB +.*
 #...
 
 Elf file type is EXEC \(Executable file\)
@@ -80,49 +80,49 @@ Symbol table '\.dynsym' contains 10 entries:
 Symbol table '\.symtab' contains 47 entries:
  +Num: +Value +Size Type +Bind +Vis +Ndx Name
  +0: 00000000 +0 NOTYPE +LOCAL +DEFAULT +UND 
- +1: 01800114 +0 SECTION LOCAL +DEFAULT +1 
- +2: 01800128 +0 SECTION LOCAL +DEFAULT +2 
- +3: 01800164 +0 SECTION LOCAL +DEFAULT +3 
- +4: 01800204 +0 SECTION LOCAL +DEFAULT +4 
- +5: 01800268 +0 SECTION LOCAL +DEFAULT +5 
- +6: 01800280 +0 SECTION LOCAL +DEFAULT +6 
+ +1: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +1 
+ +2: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +2 
+ +3: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +3 
+ +4: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +4 
+ +5: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +5 
+ +6: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +6 
  +7: 0180028c +0 SECTION LOCAL +DEFAULT +7 
- +8: 018002fc +0 SECTION LOCAL +DEFAULT +8 
+ +8: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +8 
  +9: 018102fc +0 SECTION LOCAL +DEFAULT +9 
- +10: 018102fc +0 SECTION LOCAL +DEFAULT +10 
+ +10: 01810318 +0 SECTION LOCAL +DEFAULT +10 
  +11: 01810318 +0 SECTION LOCAL +DEFAULT +11 
- +12: 01810318 +0 SECTION LOCAL +DEFAULT +12 
+ +12: 018103b8 +0 SECTION LOCAL +DEFAULT +12 
  +13: 018103b8 +0 SECTION LOCAL +DEFAULT +13 
  +14: 018103d4 +0 SECTION LOCAL +DEFAULT +14 
  +15: 018103d4 +0 SECTION LOCAL +DEFAULT +15 
- +16: 018103d4 +0 SECTION LOCAL +DEFAULT +16 
- +17: 01810428 +0 SECTION LOCAL +DEFAULT +17 
- +18: 00000000 +0 SECTION LOCAL +DEFAULT +18 
- +19: 00000000 +0 SECTION LOCAL +DEFAULT +19 
- +20: 00000000 +0 SECTION LOCAL +DEFAULT +20 
- +21: 00000000 +0 TLS +LOCAL +DEFAULT +10 gd4
- +22: 00000004 +0 TLS +LOCAL +DEFAULT +10 ld4
- +23: 00000008 +0 TLS +LOCAL +DEFAULT +10 ld5
- +24: 0000000c +0 TLS +LOCAL +DEFAULT +10 ld6
- +25: 00000010 +0 TLS +LOCAL +DEFAULT +10 ie4
- +26: 00000014 +0 TLS +LOCAL +DEFAULT +10 le4
- +27: 00000018 +0 TLS +LOCAL +DEFAULT +10 le5
+ +16: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +16 
+ +17: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +17 
+ +18: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +18 
+ +19: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +19 
+ +20: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +20 
+ +21: 00000000 +0 TLS +LOCAL +DEFAULT +9 gd4
+ +22: 00000004 +0 TLS +LOCAL +DEFAULT +9 ld4
+ +23: 00000008 +0 TLS +LOCAL +DEFAULT +9 ld5
+ +24: 0000000c +0 TLS +LOCAL +DEFAULT +9 ld6
+ +25: 00000010 +0 TLS +LOCAL +DEFAULT +9 ie4
+ +26: 00000014 +0 TLS +LOCAL +DEFAULT +9 le4
+ +27: 00000018 +0 TLS +LOCAL +DEFAULT +9 le5
  +28: 01810318 +0 OBJECT +GLOBAL DEFAULT +ABS _DYNAMIC
  +29: 00000000 +0 TLS +GLOBAL DEFAULT +UND gd
- +30: 00000030 +0 TLS +GLOBAL DEFAULT +11 le0
- +31: 0181041c +0 FUNC +GLOBAL DEFAULT +UND __tls_get_addr
- +32: 00000020 +0 TLS +GLOBAL DEFAULT +11 ld0
- +33: 00000034 +0 TLS +GLOBAL DEFAULT +11 le1
+ +30: 00000030 +0 TLS +GLOBAL DEFAULT +10 le0
+ +31: [0-9a-f]+ +0 FUNC +GLOBAL DEFAULT +UND __tls_get_addr
+ +32: 00000020 +0 TLS +GLOBAL DEFAULT +10 ld0
+ +33: 00000034 +0 TLS +GLOBAL DEFAULT +10 le1
  +34: 00000000 +0 TLS +GLOBAL DEFAULT +UND ld
- +35: 0180028c +0 NOTYPE +GLOBAL DEFAULT +7 _start
- +36: 01810428 +0 NOTYPE +GLOBAL DEFAULT +ABS __end
- +37: 018183d4 +0 OBJECT +GLOBAL DEFAULT +14 _SDA_BASE_
- +38: 00000028 +0 TLS +GLOBAL DEFAULT +11 ld2
- +39: 00000024 +0 TLS +GLOBAL DEFAULT +11 ld1
- +40: 018103d4 +0 NOTYPE +GLOBAL DEFAULT +ABS __bss_start
- +41: 018103d4 +0 NOTYPE +GLOBAL DEFAULT +ABS _edata
+ +35: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +7 _start
+ +36: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS __end
+ +37: [0-9a-f]+ +0 OBJECT +GLOBAL DEFAULT +14 _SDA_BASE_
+ +38: 00000028 +0 TLS +GLOBAL DEFAULT +10 ld2
+ +39: 00000024 +0 TLS +GLOBAL DEFAULT +10 ld1
+ +40: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS __bss_start
+ +41: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _edata
  +42: 018103bc +0 OBJECT +GLOBAL DEFAULT +ABS _GLOBAL_OFFSET_TABLE_
- +43: 01810428 +0 NOTYPE +GLOBAL DEFAULT +ABS _end
- +44: 0000001c +0 TLS +GLOBAL DEFAULT +11 gd0
- +45: 0000002c +0 TLS +GLOBAL DEFAULT +11 ie0
- +46: 018082fc +0 OBJECT +GLOBAL DEFAULT +8 _SDA2_BASE_
+ +43: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _end
+ +44: 0000001c +0 TLS +GLOBAL DEFAULT +10 gd0
+ +45: 0000002c +0 TLS +GLOBAL DEFAULT +10 ie0
+ +46: [0-9a-f]+ +0 OBJECT +GLOBAL DEFAULT +8 _SDA2_BASE_
index c5dd994..2cf4043 100644 (file)
@@ -10,25 +10,25 @@ There are 20 section headers.*
 Section Headers:
  +\[Nr\] Name +Type +Address +Off +Size +ES Flg Lk Inf Al
  +\[ 0\] +NULL +0+ 0+ 0+ 0+ +0 +0 +0
- +\[ 1\] \.interp +PROGBITS +0+10000190 0+190 0+11 0+ +A +0 +0 +1
- +\[ 2\] \.hash +HASH +0+100001a8 0+1a8 0+38 04 +A +3 +0 +8
- +\[ 3\] \.dynsym +DYNSYM +0+100001e0 0+1e0 0+d8 18 +A +4 +1 +8
- +\[ 4\] \.dynstr +STRTAB +0+100002b8 0+2b8 0+4c 0+ +A +0 +0 +1
- +\[ 5\] \.rela\.dyn +RELA +0+10000308 0+308 0+30 18 +A +3 +0 +8
- +\[ 6\] \.rela\.plt +RELA +0+10000338 0+338 0+18 18 +A +3 +15 +8
+ +\[ 1\] \.interp +.*
+ +\[ 2\] \.hash +.*
+ +\[ 3\] \.dynsym +.*
+ +\[ 4\] \.dynstr +.*
+ +\[ 5\] \.rela\.dyn +.*
+ +\[ 6\] \.rela\.plt +.*
  +\[ 7\] \.text +PROGBITS +0+10000350 0+350 0+bc 0+ +AX +0 +0 +4
- +\[ 8\] \.data +PROGBITS +0+10010410 0+410 0+ 0+ +WA +0 +0 +1
- +\[ 9\] \.branch_lt +PROGBITS +0+10010410 0+410 0+ 0+ +WA +0 +0 +8
- +\[10\] \.tdata +PROGBITS +0+10010410 0+410 0+38 0+ WAT +0 +0 +8
- +\[11\] \.tbss +NOBITS +0+10010448 0+448 0+38 0+ WAT +0 +0 +8
- +\[12\] \.dynamic +DYNAMIC +0+10010448 0+448 0+150 10 +WA +4 +0 +8
+ +\[ 8\] \.tdata +PROGBITS +0+10010410 0+410 0+38 0+ WAT +0 +0 +8
+ +\[ 9\] \.tbss +NOBITS +0+10010448 0+448 0+38 0+ WAT +0 +0 +8
+ +\[10\] \.dynamic +DYNAMIC +0+10010448 0+448 0+150 10 +WA +4 +0 +8
+ +\[11\] \.data +PROGBITS +0+10010598 0+598 0+ 0+ +WA +0 +0 +1
+ +\[12\] \.branch_lt +.*
  +\[13\] \.got +PROGBITS +0+10010598 0+598 0+58 08 +WA +0 +0 +8
- +\[14\] \.sbss +NOBITS +0+100105f0 0+5f0 0+ 0+ +W +0 +0 +1
- +\[15\] \.plt +NOBITS +0+100105f0 0+5f0 0+30 18 +WA +0 +0 +8
- +\[16\] \.bss +NOBITS +0+10010620 0+5f0 0+ 0+ +WA +0 +0 +1
- +\[17\] \.shstrtab +STRTAB +0+ 0+5f0 0+8a 0+ +0 +0 +1
- +\[18\] \.symtab +SYMTAB +0+ 0+b80 0+420 18 +19 +28 +8
- +\[19\] \.strtab +STRTAB +0+ 0+fa0 0+8c 0+ +0 +0 +1
+ +\[14\] \.sbss +.*
+ +\[15\] \.plt +.*
+ +\[16\] \.bss +.*
+ +\[17\] \.shstrtab +.*
+ +\[18\] \.symtab +.*
+ +\[19\] \.strtab +.*
 #...
 
 Elf file type is EXEC \(Executable file\)
@@ -71,53 +71,53 @@ Symbol table '\.dynsym' contains 9 entries:
  +3: 0+ +0 FUNC +GLOBAL DEFAULT +UND __tls_get_addr
  +4: 0+ +0 FUNC +GLOBAL DEFAULT +UND \.__tls_get_addr
  +5: 0+ +0 TLS +GLOBAL DEFAULT +UND ld
- +6: 0+100105f0 +0 NOTYPE +GLOBAL DEFAULT +ABS __bss_start
- +7: 0+100105f0 +0 NOTYPE +GLOBAL DEFAULT +ABS _edata
- +8: 0+10010620 +0 NOTYPE +GLOBAL DEFAULT +ABS _end
+ +6: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS __bss_start
+ +7: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _edata
+ +8: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _end
 
 Symbol table '\.symtab' contains 44 entries:
  +Num: +Value +Size Type +Bind +Vis +Ndx Name
  +0: 0+ +0 NOTYPE +LOCAL +DEFAULT +UND 
- +1: 0+10000190 +0 SECTION LOCAL +DEFAULT +1 
- +2: 0+100001a8 +0 SECTION LOCAL +DEFAULT +2 
- +3: 0+100001e0 +0 SECTION LOCAL +DEFAULT +3 
- +4: 0+100002b8 +0 SECTION LOCAL +DEFAULT +4 
- +5: 0+10000308 +0 SECTION LOCAL +DEFAULT +5 
- +6: 0+10000338 +0 SECTION LOCAL +DEFAULT +6 
+ +1: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +1 
+ +2: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +2 
+ +3: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +3 
+ +4: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +4 
+ +5: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +5 
+ +6: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +6 
  +7: 0+10000350 +0 SECTION LOCAL +DEFAULT +7 
  +8: 0+10010410 +0 SECTION LOCAL +DEFAULT +8 
- +9: 0+10010410 +0 SECTION LOCAL +DEFAULT +9 
- +10: 0+10010410 +0 SECTION LOCAL +DEFAULT +10 
- +11: 0+10010448 +0 SECTION LOCAL +DEFAULT +11 
- +12: 0+10010448 +0 SECTION LOCAL +DEFAULT +12 
+ +9: 0+10010448 +0 SECTION LOCAL +DEFAULT +9 
+ +10: 0+10010448 +0 SECTION LOCAL +DEFAULT +10 
+ +11: 0+10010598 +0 SECTION LOCAL +DEFAULT +11 
+ +12: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +12 
  +13: 0+10010598 +0 SECTION LOCAL +DEFAULT +13 
- +14: 0+100105f0 +0 SECTION LOCAL +DEFAULT +14 
- +15: 0+100105f0 +0 SECTION LOCAL +DEFAULT +15 
- +16: 0+10010620 +0 SECTION LOCAL +DEFAULT +16 
+ +14: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +14 
+ +15: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +15 
+ +16: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +16 
  +17: 0+ +0 SECTION LOCAL +DEFAULT +17 
  +18: 0+ +0 SECTION LOCAL +DEFAULT +18 
  +19: 0+ +0 SECTION LOCAL +DEFAULT +19 
- +20: 0+ +0 TLS +LOCAL +DEFAULT +10 gd4
- +21: 0+8 +0 TLS +LOCAL +DEFAULT +10 ld4
- +22: 0+10 +0 TLS +LOCAL +DEFAULT +10 ld5
- +23: 0+18 +0 TLS +LOCAL +DEFAULT +10 ld6
- +24: 0+20 +0 TLS +LOCAL +DEFAULT +10 ie4
- +25: 0+28 +0 TLS +LOCAL +DEFAULT +10 le4
- +26: 0+30 +0 TLS +LOCAL +DEFAULT +10 le5
+ +20: 0+ +0 TLS +LOCAL +DEFAULT +8 gd4
+ +21: 0+8 +0 TLS +LOCAL +DEFAULT +8 ld4
+ +22: 0+10 +0 TLS +LOCAL +DEFAULT +8 ld5
+ +23: 0+18 +0 TLS +LOCAL +DEFAULT +8 ld6
+ +24: 0+20 +0 TLS +LOCAL +DEFAULT +8 ie4
+ +25: 0+28 +0 TLS +LOCAL +DEFAULT +8 le4
+ +26: 0+30 +0 TLS +LOCAL +DEFAULT +8 le5
  +27: 0+100105e8 +0 NOTYPE +LOCAL +DEFAULT +13 \.Lie0
  +28: 0+10010448 +0 OBJECT +GLOBAL DEFAULT +ABS _DYNAMIC
  +29: 0+ +0 TLS +GLOBAL DEFAULT +UND gd
- +30: 0+60 +0 TLS +GLOBAL DEFAULT +11 le0
+ +30: 0+60 +0 TLS +GLOBAL DEFAULT +9 le0
  +31: 0+ +0 FUNC +GLOBAL DEFAULT +UND __tls_get_addr
  +32: 0+ +0 FUNC +GLOBAL DEFAULT +UND \.__tls_get_addr
- +33: 0+40 +0 TLS +GLOBAL DEFAULT +11 ld0
- +34: 0+68 +0 TLS +GLOBAL DEFAULT +11 le1
+ +33: 0+40 +0 TLS +GLOBAL DEFAULT +9 ld0
+ +34: 0+68 +0 TLS +GLOBAL DEFAULT +9 le1
  +35: 0+ +0 TLS +GLOBAL DEFAULT +UND ld
  +36: 0+1000036c +0 NOTYPE +GLOBAL DEFAULT +7 _start
- +37: 0+50 +0 TLS +GLOBAL DEFAULT +11 ld2
- +38: 0+48 +0 TLS +GLOBAL DEFAULT +11 ld1
+ +37: 0+50 +0 TLS +GLOBAL DEFAULT +9 ld2
+ +38: 0+48 +0 TLS +GLOBAL DEFAULT +9 ld1
  +39: 0+100105f0 +0 NOTYPE +GLOBAL DEFAULT +ABS __bss_start
  +40: 0+100105f0 +0 NOTYPE +GLOBAL DEFAULT +ABS _edata
  +41: 0+10010620 +0 NOTYPE +GLOBAL DEFAULT +ABS _end
- +42: 0+38 +0 TLS +GLOBAL DEFAULT +11 gd0
- +43: 0+58 +0 TLS +GLOBAL DEFAULT +11 ie0
+ +42: 0+38 +0 TLS +GLOBAL DEFAULT +9 gd0
+ +43: 0+58 +0 TLS +GLOBAL DEFAULT +9 ie0
index 6fb2e4c..806a0c4 100644 (file)
@@ -7,9 +7,9 @@
 .*: +file format elf64-powerpc
 
 Contents of section \.got:
- 10948 00000000 00018948 00000000 00000000  .*
- 10958 00000000 00000000 00000000 00000000  .*
- 10968 00000000 00000000 00000000 00000000  .*
- 10978 00000000 00000000 00000000 00000000  .*
- 10988 00000000 00000000 00000000 00000000  .*
- 10998 00000000 00000000 00000000 00000000  .*
+ 10850 00000000 00018850 00000000 00000000  .*
+ 10860 00000000 00000000 00000000 00000000  .*
+ 10870 00000000 00000000 00000000 00000000  .*
+ 10880 00000000 00000000 00000000 00000000  .*
+ 10890 00000000 00000000 00000000 00000000  .*
+ 108a0 00000000 00000000 00000000 00000000  .*
index 7d63c66..2f3793e 100644 (file)
@@ -9,36 +9,36 @@ There are 19 section headers.*
 Section Headers:
  +\[Nr\] Name +Type +Address +Off +Size +ES Flg Lk Inf Al
  +\[ 0\] +NULL +0+ 0+ 0+ 0+ +0 +0 +0
- +\[ 1\] \.hash +HASH +0+120 0+120 0+c8 04 +A +2 +0 +8
- +\[ 2\] \.dynsym +DYNSYM +0+1e8 0+1e8 0+2e8 18 +A +3 +16 +8
- +\[ 3\] \.dynstr +STRTAB +0+4d0 0+4d0 0+53 0+ +A +0 +0 +1
- +\[ 4\] \.rela\.dyn +RELA +0+528 0+528 0+180 18 +A +2 +0 +8
- +\[ 5\] \.rela\.plt +RELA +0+6a8 0+6a8 0+18 18 +A +2 +14 +8
- +\[ 6\] \.text +PROGBITS +0+6c0 0+6c0 0+fc 0+ +AX +0 +0 +4
- +\[ 7\] \.data +PROGBITS +0+107c0 0+7c0 0+ 0+ +WA +0 +0 +1
- +\[ 8\] \.branch_lt +PROGBITS +0+107c0 0+7c0 0+ 0+ +WA +0 +0 +8
- +\[ 9\] \.tdata +PROGBITS +0+107c0 0+7c0 0+38 0+ WAT +0 +0 +8
- +\[10\] \.tbss +NOBITS +0+107f8 0+7f8 0+38 0+ WAT +0 +0 +8
- +\[11\] \.dynamic +DYNAMIC +0+107f8 0+7f8 0+150 10 +WA +3 +0 +8
- +\[12\] \.got +PROGBITS +0+10948 0+948 0+60 08 +WA +0 +0 +8
- +\[13\] \.sbss +NOBITS +0+109a8 0+9a8 0+ 0+ +W +0 +0 +1
- +\[14\] \.plt +NOBITS +0+109a8 0+9a8 0+30 18 +WA +0 +0 +8
- +\[15\] \.bss +NOBITS +0+109d8 0+9a8 0+ 0+ +WA +0 +0 +1
- +\[16\] \.shstrtab +STRTAB +0+ 0+9a8 0+82 0+ +0 +0 +1
- +\[17\] \.symtab +SYMTAB +0+ 0+ef0 0+3f0 18 +18 +27 +8
- +\[18\] \.strtab +STRTAB +0+ 0+12e0 0+86 0+ +0 +0 +1
+ +\[ 1\] \.hash +.*
+ +\[ 2\] \.dynsym +.*
+ +\[ 3\] \.dynstr +.*
+ +\[ 4\] \.rela\.dyn +.*
+ +\[ 5\] \.rela\.plt +.*
+ +\[ 6\] \.text +PROGBITS +0+5c8 0+5c8 0+fc 0+ +AX +0 +0 +4
+ +\[ 7\] \.tdata +PROGBITS +0+106c8 0+6c8 0+38 0+ WAT +0 +0 +8
+ +\[ 8\] \.tbss +NOBITS +0+10700 0+700 0+38 0+ WAT +0 +0 +8
+ +\[ 9\] \.dynamic +DYNAMIC +0+10700 0+700 0+150 10 +WA +3 +0 +8
+ +\[10\] \.data +PROGBITS +0+10850 0+850 0+ 0+ +WA +0 +0 +1
+ +\[11\] \.branch_lt +.*
+ +\[12\] \.got +PROGBITS +0+10850 0+850 0+60 08 +WA +0 +0 +8
+ +\[13\] \.sbss +.*
+ +\[14\] \.plt +.*
+ +\[15\] \.bss +.*
+ +\[16\] \.shstrtab +.*
+ +\[17\] \.symtab +.*
+ +\[18\] \.strtab +.*
 #...
 
 Elf file type is DYN \(Shared object file\)
-Entry point 0x6dc
+Entry point 0x[0-9a-f]+
 There are 4 program headers.*
 
 Program Headers:
  +Type +Offset +VirtAddr +PhysAddr +FileSiz +MemSiz +Flg Align
- +LOAD +0x0+ 0x0+ 0x0+ 0x0+7bc 0x0+7bc R E 0x10000
- +LOAD +0x0+7c0 0x0+107c0 0x0+107c0 0x0+1e8 0x0+218 RW +0x10000
- +DYNAMIC +0x0+7f8 0x0+107f8 0x0+107f8 0x0+150 0x0+150 RW +0x8
- +TLS +0x0+7c0 0x0+107c0 0x0+107c0 0x0+38 0x0+70 R +0x8
+ +LOAD +0x0+ 0x0+ 0x0+ 0x0+6c4 0x0+6c4 R E 0x10000
+ +LOAD +0x0+6c8 0x0+106c8 0x0+106c8 0x0+1e8 0x0+218 RW +0x10000
+ +DYNAMIC +0x0+700 0x0+10700 0x0+10700 0x0+150 0x0+150 RW +0x8
+ +TLS +0x0+6c8 0x0+106c8 0x0+106c8 0x0+38 0x0+70 R +0x8
 
  Section to Segment mapping:
  +Segment Sections\.\.\.
@@ -49,102 +49,93 @@ Program Headers:
 
 Relocation section '\.rela\.dyn' at offset .* contains 16 entries:
  +Offset +Info +Type +Symbol's Value +Symbol's Name \+ Addend
-0+72a +0+1200000045 R_PPC64_TPREL16 +0+60 le0 \+ 0
-0+72e +0+1500000048 R_PPC64_TPREL16_HA +0+68 le1 \+ 0
-0+732 +0+1500000046 R_PPC64_TPREL16_LO +0+68 le1 \+ 0
-0+76a +0+90000005f R_PPC64_TPREL16_DS +0+107c0 \.tdata \+ 28
-0+76e +0+900000048 R_PPC64_TPREL16_HA +0+107c0 \.tdata \+ 30
-0+772 +0+900000046 R_PPC64_TPREL16_LO +0+107c0 \.tdata \+ 30
-0+10950 +0+44 R_PPC64_DTPMOD64 +0+
-0+10960 +0+44 R_PPC64_DTPMOD64 +0+
-0+10968 +0+4e R_PPC64_DTPREL64 +0+
-0+10970 +0+4e R_PPC64_DTPREL64 +0+18
-0+10978 +0+1100000044 R_PPC64_DTPMOD64 +0+ gd \+ 0
-0+10980 +0+110000004e R_PPC64_DTPREL64 +0+ gd \+ 0
-0+10988 +0+180000004e R_PPC64_DTPREL64 +0+50 ld2 \+ 0
-0+10990 +0+1d00000044 R_PPC64_DTPMOD64 +0+38 gd0 \+ 0
-0+10998 +0+1d0000004e R_PPC64_DTPREL64 +0+38 gd0 \+ 0
-0+109a0 +0+1e00000049 R_PPC64_TPREL64 +0+58 ie0 \+ 0
+0+632 +0+90+45 R_PPC64_TPREL16 +0+60 le0 \+ 0
+0+636 +0+c0+48 R_PPC64_TPREL16_HA +0+68 le1 \+ 0
+0+63a +0+c0+46 R_PPC64_TPREL16_LO +0+68 le1 \+ 0
+0+672 +0+20+5f R_PPC64_TPREL16_DS +0+106c8 \.tdata \+ 28
+0+676 +0+20+48 R_PPC64_TPREL16_HA +0+106c8 \.tdata \+ 30
+0+67a +0+20+46 R_PPC64_TPREL16_LO +0+106c8 \.tdata \+ 30
+0+10858 +0+44 R_PPC64_DTPMOD64 +0+
+0+10868 +0+44 R_PPC64_DTPMOD64 +0+
+0+10870 +0+4e R_PPC64_DTPREL64 +0+
+0+10878 +0+4e R_PPC64_DTPREL64 +0+18
+0+10880 +0+80+44 R_PPC64_DTPMOD64 +0+ gd \+ 0
+0+10888 +0+80+4e R_PPC64_DTPREL64 +0+ gd \+ 0
+0+10890 +0+f0+4e R_PPC64_DTPREL64 +0+50 ld2 \+ 0
+0+10898 +0+140+44 R_PPC64_DTPMOD64 +0+38 gd0 \+ 0
+0+108a0 +0+140+4e R_PPC64_DTPREL64 +0+38 gd0 \+ 0
+0+108a8 +0+150+49 R_PPC64_TPREL64 +0+58 ie0 \+ 0
 
 Relocation section '\.rela\.plt' at offset .* contains 1 entries:
  +Offset +Info +Type +Symbol's Value +Symbol's Name \+ Addend
-0+109c0 +0+1300000015 R_PPC64_JMP_SLOT +0+ __tls_get_addr \+ 0
+0+108c8 +0+a0+15 R_PPC64_JMP_SLOT +0+ __tls_get_addr \+ 0
 
-Symbol table '\.dynsym' contains 31 entries:
+Symbol table '\.dynsym' contains 22 entries:
  +Num: +Value +Size Type +Bind +Vis +Ndx Name
- +0: 0+ +0 NOTYPE +LOCAL +DEFAULT +UND 
- +1: 0+120 +0 SECTION LOCAL +DEFAULT +1 
- +2: 0+1e8 +0 SECTION LOCAL +DEFAULT +2 
- +3: 0+4d0 +0 SECTION LOCAL +DEFAULT +3 
- +4: 0+528 +0 SECTION LOCAL +DEFAULT +4 
- +5: 0+6a8 +0 SECTION LOCAL +DEFAULT +5 
- +6: 0+6c0 +0 SECTION LOCAL +DEFAULT +6 
- +7: 0+107c0 +0 SECTION LOCAL +DEFAULT +7 
- +8: 0+107c0 +0 SECTION LOCAL +DEFAULT +8 
- +9: 0+107c0 +0 SECTION LOCAL +DEFAULT +9 
- +10: 0+107f8 +0 SECTION LOCAL +DEFAULT +10 
- +11: 0+107f8 +0 SECTION LOCAL +DEFAULT +11 
- +12: 0+10948 +0 SECTION LOCAL +DEFAULT +12 
- +13: 0+109a8 +0 SECTION LOCAL +DEFAULT +13 
- +14: 0+109a8 +0 SECTION LOCAL +DEFAULT +14 
- +15: 0+109d8 +0 SECTION LOCAL +DEFAULT +15 
- +16: 0+107f8 +0 OBJECT +GLOBAL DEFAULT +ABS _DYNAMIC
- +17: 0+ +0 NOTYPE +GLOBAL DEFAULT +UND gd
- +18: 0+60 +0 TLS +GLOBAL DEFAULT +10 le0
- +19: 0+ +24 OBJECT +GLOBAL DEFAULT +UND __tls_get_addr
- +20: 0+40 +0 TLS +GLOBAL DEFAULT +10 ld0
- +21: 0+68 +0 TLS +GLOBAL DEFAULT +10 le1
- +22: 0+ +0 NOTYPE +GLOBAL DEFAULT +UND ld
- +23: 0+6dc +0 NOTYPE +GLOBAL DEFAULT +6 _start
- +24: 0+50 +0 TLS +GLOBAL DEFAULT +10 ld2
- +25: 0+48 +0 TLS +GLOBAL DEFAULT +10 ld1
- +26: 0+109a8 +0 NOTYPE +GLOBAL DEFAULT +ABS __bss_start
- +27: 0+109a8 +0 NOTYPE +GLOBAL DEFAULT +ABS _edata
- +28: 0+109d8 +0 NOTYPE +GLOBAL DEFAULT +ABS _end
- +29: 0+38 +0 TLS +GLOBAL DEFAULT +10 gd0
- +30: 0+58 +0 TLS +GLOBAL DEFAULT +10 ie0
+ +[0-9]+: 0+ +0 NOTYPE +LOCAL +DEFAULT +UND 
+ +[0-9]+: 0+5c8 +0 SECTION LOCAL +DEFAULT +6 
+ +[0-9]+: 0+106c8 +0 SECTION LOCAL +DEFAULT +7 
+ +[0-9]+: 0+10700 +0 SECTION LOCAL +DEFAULT +8 
+ +[0-9]+: 0+10850 +0 SECTION LOCAL +DEFAULT +10 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +11 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +15 
+ +[0-9]+: 0+10700 +0 OBJECT +GLOBAL DEFAULT +ABS _DYNAMIC
+ +[0-9]+: 0+ +0 NOTYPE +GLOBAL DEFAULT +UND gd
+ +[0-9]+: 0+60 +0 TLS +GLOBAL DEFAULT +8 le0
+ +[0-9]+: 0+ +24 OBJECT +GLOBAL DEFAULT +UND __tls_get_addr
+ +[0-9]+: 0+40 +0 TLS +GLOBAL DEFAULT +8 ld0
+ +[0-9]+: 0+68 +0 TLS +GLOBAL DEFAULT +8 le1
+ +[0-9]+: 0+ +0 NOTYPE +GLOBAL DEFAULT +UND ld
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +6 _start
+ +[0-9]+: 0+50 +0 TLS +GLOBAL DEFAULT +8 ld2
+ +[0-9]+: 0+48 +0 TLS +GLOBAL DEFAULT +8 ld1
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS __bss_start
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _edata
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _end
+ +[0-9]+: 0+38 +0 TLS +GLOBAL DEFAULT +8 gd0
+ +[0-9]+: 0+58 +0 TLS +GLOBAL DEFAULT +8 ie0
 
 Symbol table '\.symtab' contains 42 entries:
  +Num: +Value +Size Type +Bind +Vis +Ndx Name
- +0: 0+ +0 NOTYPE +LOCAL +DEFAULT +UND 
- +1: 0+120 +0 SECTION LOCAL +DEFAULT +1 
- +2: 0+1e8 +0 SECTION LOCAL +DEFAULT +2 
- +3: 0+4d0 +0 SECTION LOCAL +DEFAULT +3 
- +4: 0+528 +0 SECTION LOCAL +DEFAULT +4 
- +5: 0+6a8 +0 SECTION LOCAL +DEFAULT +5 
- +6: 0+6c0 +0 SECTION LOCAL +DEFAULT +6 
- +7: 0+107c0 +0 SECTION LOCAL +DEFAULT +7 
- +8: 0+107c0 +0 SECTION LOCAL +DEFAULT +8 
- +9: 0+107c0 +0 SECTION LOCAL +DEFAULT +9 
- +10: 0+107f8 +0 SECTION LOCAL +DEFAULT +10 
- +11: 0+107f8 +0 SECTION LOCAL +DEFAULT +11 
- +12: 0+10948 +0 SECTION LOCAL +DEFAULT +12 
- +13: 0+109a8 +0 SECTION LOCAL +DEFAULT +13 
- +14: 0+109a8 +0 SECTION LOCAL +DEFAULT +14 
- +15: 0+109d8 +0 SECTION LOCAL +DEFAULT +15 
- +16: 0+ +0 SECTION LOCAL +DEFAULT +16 
- +17: 0+ +0 SECTION LOCAL +DEFAULT +17 
- +18: 0+ +0 SECTION LOCAL +DEFAULT +18 
- +19: 0+ +0 TLS +LOCAL +DEFAULT +9 gd4
- +20: 0+8 +0 TLS +LOCAL +DEFAULT +9 ld4
- +21: 0+10 +0 TLS +LOCAL +DEFAULT +9 ld5
- +22: 0+18 +0 TLS +LOCAL +DEFAULT +9 ld6
- +23: 0+20 +0 TLS +LOCAL +DEFAULT +9 ie4
- +24: 0+28 +0 TLS +LOCAL +DEFAULT +9 le4
- +25: 0+30 +0 TLS +LOCAL +DEFAULT +9 le5
- +26: 0+6c0 +0 NOTYPE +LOCAL +DEFAULT +6 \.__tls_get_addr
- +27: 0+107f8 +0 OBJECT +GLOBAL DEFAULT +ABS _DYNAMIC
- +28: 0+ +0 NOTYPE +GLOBAL DEFAULT +UND gd
- +29: 0+60 +0 TLS +GLOBAL DEFAULT +10 le0
- +30: 0+ +24 OBJECT +GLOBAL DEFAULT +UND __tls_get_addr
- +31: 0+40 +0 TLS +GLOBAL DEFAULT +10 ld0
- +32: 0+68 +0 TLS +GLOBAL DEFAULT +10 le1
- +33: 0+ +0 NOTYPE +GLOBAL DEFAULT +UND ld
- +34: 0+6dc +0 NOTYPE +GLOBAL DEFAULT +6 _start
- +35: 0+50 +0 TLS +GLOBAL DEFAULT +10 ld2
- +36: 0+48 +0 TLS +GLOBAL DEFAULT +10 ld1
- +37: 0+109a8 +0 NOTYPE +GLOBAL DEFAULT +ABS __bss_start
- +38: 0+109a8 +0 NOTYPE +GLOBAL DEFAULT +ABS _edata
- +39: 0+109d8 +0 NOTYPE +GLOBAL DEFAULT +ABS _end
- +40: 0+38 +0 TLS +GLOBAL DEFAULT +10 gd0
- +41: 0+58 +0 TLS +GLOBAL DEFAULT +10 ie0
+ +[0-9]+: 0+ +0 NOTYPE +LOCAL +DEFAULT +UND 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +1 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +2 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +3 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +4 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +5 
+ +[0-9]+: 0+5c8 +0 SECTION LOCAL +DEFAULT +6 
+ +[0-9]+: 0+106c8 +0 SECTION LOCAL +DEFAULT +7 
+ +[0-9]+: 0+10700 +0 SECTION LOCAL +DEFAULT +8 
+ +[0-9]+: 0+10700 +0 SECTION LOCAL +DEFAULT +9 
+ +[0-9]+: 0+10850 +0 SECTION LOCAL +DEFAULT +10 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +11 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +12 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +13 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +14 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +15 
+ +[0-9]+: 0+ +0 SECTION LOCAL +DEFAULT +16 
+ +[0-9]+: 0+ +0 SECTION LOCAL +DEFAULT +17 
+ +[0-9]+: 0+ +0 SECTION LOCAL +DEFAULT +18 
+ +[0-9]+: 0+ +0 TLS +LOCAL +DEFAULT +7 gd4
+ +[0-9]+: 0+8 +0 TLS +LOCAL +DEFAULT +7 ld4
+ +[0-9]+: 0+10 +0 TLS +LOCAL +DEFAULT +7 ld5
+ +[0-9]+: 0+18 +0 TLS +LOCAL +DEFAULT +7 ld6
+ +[0-9]+: 0+20 +0 TLS +LOCAL +DEFAULT +7 ie4
+ +[0-9]+: 0+28 +0 TLS +LOCAL +DEFAULT +7 le4
+ +[0-9]+: 0+30 +0 TLS +LOCAL +DEFAULT +7 le5
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE +LOCAL +DEFAULT +6 \.__tls_get_addr
+ +[0-9]+: 0+10700 +0 OBJECT +GLOBAL DEFAULT +ABS _DYNAMIC
+ +[0-9]+: 0+ +0 NOTYPE +GLOBAL DEFAULT +UND gd
+ +[0-9]+: 0+60 +0 TLS +GLOBAL DEFAULT +8 le0
+ +[0-9]+: 0+ +24 OBJECT +GLOBAL DEFAULT +UND __tls_get_addr
+ +[0-9]+: 0+40 +0 TLS +GLOBAL DEFAULT +8 ld0
+ +[0-9]+: 0+68 +0 TLS +GLOBAL DEFAULT +8 le1
+ +[0-9]+: 0+ +0 NOTYPE +GLOBAL DEFAULT +UND ld
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +6 _start
+ +[0-9]+: 0+50 +0 TLS +GLOBAL DEFAULT +8 ld2
+ +[0-9]+: 0+48 +0 TLS +GLOBAL DEFAULT +8 ld1
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS __bss_start
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _edata
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _end
+ +[0-9]+: 0+38 +0 TLS +GLOBAL DEFAULT +8 gd0
+ +[0-9]+: 0+58 +0 TLS +GLOBAL DEFAULT +8 ie0
index 5e321a4..5e23c28 100644 (file)
@@ -8,38 +8,38 @@
 
 Disassembly of section \.text:
 
-0+538 <_start>:
538:  38 7f 00 1c     addi    r3,r31,28
53c:  48 00 00 01     bl      53c .*
540:  38 7f 00 0c     addi    r3,r31,12
544:  48 00 00 01     bl      544 .*
548:  38 7f 00 24     addi    r3,r31,36
54c:  48 01 01 95     bl      106e0 .*
550:  38 7f 00 0c     addi    r3,r31,12
554:  48 01 01 8d     bl      106e0 .*
558:  39 23 80 20     addi    r9,r3,-32736
55c:  3d 23 00 00     addis   r9,r3,0
560:  81 49 80 24     lwz     r10,-32732\(r9\)
564:  81 3f 00 2c     lwz     r9,44\(r31\)
568:  7d 49 12 2e     lhzx    r10,r9,r2
56c:  89 42 00 00     lbz     r10,0\(r2\)
570:  3d 22 00 00     addis   r9,r2,0
574:  99 49 00 00     stb     r10,0\(r9\)
578:  38 7e 00 14     addi    r3,r30,20
57c:  48 00 00 01     bl      57c .*
580:  38 7e 00 0c     addi    r3,r30,12
584:  48 00 00 01     bl      584 .*
588:  91 43 80 04     stw     r10,-32764\(r3\)
58c:  3d 23 00 00     addis   r9,r3,0
590:  91 49 80 08     stw     r10,-32760\(r9\)
594:  81 3e 00 2c     lwz     r9,44\(r30\)
598:  7d 49 13 2e     sthx    r10,r9,r2
59c:  a1 42 00 00     lhz     r10,0\(r2\)
- 5a0:  3d 22 00 00     addis   r9,r2,0
- 5a4:  a9 49 00 00     lha     r10,0\(r9\)
+0+498 <_start>:
498:  38 7f 00 1c     addi    r3,r31,28
49c:  48 00 00 01     bl      49c .*
4a0:  38 7f 00 0c     addi    r3,r31,12
4a4:  48 00 00 01     bl      4a4 .*
4a8:  38 7f 00 24     addi    r3,r31,36
4ac:  48 01 01 95     bl      10640 .*
4b0:  38 7f 00 0c     addi    r3,r31,12
4b4:  48 01 01 8d     bl      10640 .*
4b8:  39 23 80 20     addi    r9,r3,-32736
4bc:  3d 23 00 00     addis   r9,r3,0
4c0:  81 49 80 24     lwz     r10,-32732\(r9\)
4c4:  81 3f 00 2c     lwz     r9,44\(r31\)
4c8:  7d 49 12 2e     lhzx    r10,r9,r2
4cc:  89 42 00 00     lbz     r10,0\(r2\)
4d0:  3d 22 00 00     addis   r9,r2,0
4d4:  99 49 00 00     stb     r10,0\(r9\)
4d8:  38 7e 00 14     addi    r3,r30,20
4dc:  48 00 00 01     bl      4dc .*
4e0:  38 7e 00 0c     addi    r3,r30,12
4e4:  48 00 00 01     bl      4e4 .*
4e8:  91 43 80 04     stw     r10,-32764\(r3\)
4ec:  3d 23 00 00     addis   r9,r3,0
4f0:  91 49 80 08     stw     r10,-32760\(r9\)
4f4:  81 3e 00 2c     lwz     r9,44\(r30\)
4f8:  7d 49 13 2e     sthx    r10,r9,r2
4fc:  a1 42 00 00     lhz     r10,0\(r2\)
+ 500:  3d 22 00 00     addis   r9,r2,0
+ 504:  a9 49 00 00     lha     r10,0\(r9\)
 Disassembly of section \.got:
 
-00010664 <\.got>:
-   10664:      4e 80 00 21     blrl
-   10668:      00 01 05 c4     \.long 0x105c4
+000105c4 <\.got>:
+   105c4:      4e 80 00 21     blrl
+   105c8:      00 01 05 24     \.long 0x10524
        \.\.\.
index 13c991f..7e1a294 100644 (file)
@@ -7,7 +7,7 @@
 .*: +file format elf32-powerpc
 
 Contents of section \.got:
- 10664 4e800021 000105c4 00000000 00000000  .*
- 10674 00000000 00000000 00000000 00000000  .*
- 10684 00000000 00000000 00000000 00000000  .*
- 10694 00000000                             .*
+ 105c4 4e800021 00010524 00000000 00000000  .*
+ 105d4 00000000 00000000 00000000 00000000  .*
+ 105e4 00000000 00000000 00000000 00000000  .*
+ 105f4 00000000                             .*
index f7c4694..8781ab3 100644 (file)
@@ -9,37 +9,37 @@ There are 20 section headers.*
 Section Headers:
  +\[Nr\] Name +Type +Addr +Off +Size +ES Flg Lk Inf Al
  +\[ 0\] +NULL +0+ 0+ 0+ 0+ +0 +0 +0
- +\[ 1\] \.hash +HASH +0+b4 0+b4 0+dc 04 +A +2 +0 +4
- +\[ 2\] \.dynsym +DYNSYM +0+190 0+190 0+240 10 +A +3 +17 +4
- +\[ 3\] \.dynstr +STRTAB +0+3d0 0+3d0 0+81 0+ +A +0 +0 +1
- +\[ 4\] \.rela\.dyn +RELA +0+454 0+454 0+d8 0c +A +2 +0 +4
- +\[ 5\] \.rela\.plt +RELA +0+52c 0+52c 0+c 0c +A +2 +15 +4
- +\[ 6\] \.text +PROGBITS +0+538 0+538 0+70 0+ +AX +0 +0 +1
- +\[ 7\] \.data +PROGBITS +0+105a8 0+5a8 0+ 0+ +WA +0 +0 +1
- +\[ 8\] \.tdata +PROGBITS +0+105a8 0+5a8 0+1c 0+ WAT +0 +0 +4
- +\[ 9\] \.tbss +NOBITS +0+105c4 0+5c4 0+1c 0+ WAT +0 +0 +4
- +\[10\] \.dynamic +DYNAMIC +0+105c4 0+5c4 0+a0 08 +WA +3 +0 +4
- +\[11\] \.got +PROGBITS +0+10664 0+664 0+34 04 WAX +0 +0 +4
- +\[12\] \.sdata2 +PROGBITS +0+10698 0+698 0+ 0+ +A +0 +0 +4
- +\[13\] \.sdata +PROGBITS +0+10698 0+698 0+ 0+ +WA +0 +0 +4
- +\[14\] \.sbss +NOBITS +0+10698 0+698 0+ 0+ +WA +0 +0 +1
- +\[15\] \.plt +NOBITS +0+10698 0+698 0+54 0+ WAX +0 +0 +4
- +\[16\] \.bss +NOBITS +0+106ec 0+698 0+ 0+ +WA +0 +0 +1
- +\[17\] \.shstrtab +STRTAB +0+ 0+698 0+86 0+ +0 +0 +1
- +\[18\] \.symtab +SYMTAB +0+ 0+a40 0+2e0 10 +19 +27 +4
- +\[19\] \.strtab +STRTAB +0+ 0+d20 0+a9 0+ +0 +0 +1
+ +\[ 1\] \.hash +.*
+ +\[ 2\] \.dynsym +.*
+ +\[ 3\] \.dynstr +.*
+ +\[ 4\] \.rela\.dyn +.*
+ +\[ 5\] \.rela\.plt +.*
+ +\[ 6\] \.text +PROGBITS +0+498 0+498 0+70 0+ +AX +0 +0 +1
+ +\[ 7\] \.tdata +PROGBITS +0+10508 0+508 0+1c 0+ WAT +0 +0 +4
+ +\[ 8\] \.tbss +NOBITS +0+10524 0+524 0+1c 0+ WAT +0 +0 +4
+ +\[ 9\] \.dynamic +DYNAMIC +0+10524 0+524 0+a0 08 +WA +3 +0 +4
+ +\[10\] \.data +PROGBITS +0+105c4 0+5c4 0+ 0+ +WA +0 +0 +1
+ +\[11\] \.got +PROGBITS +0+105c4 0+5c4 0+34 04 WAX +0 +0 +4
+ +\[12\] \.sdata2 +.*
+ +\[13\] \.sdata +.*
+ +\[14\] \.sbss +.*
+ +\[15\] \.plt +.*
+ +\[16\] \.bss +.*
+ +\[17\] \.shstrtab +.*
+ +\[18\] \.symtab +.*
+ +\[19\] \.strtab +.*
 #...
 
 Elf file type is DYN \(Shared object file\)
-Entry point 0x538
+Entry point 0x[0-9a-f]+
 There are 4 program headers.*
 
 Program Headers:
  +Type +Offset +VirtAddr +PhysAddr +FileSiz MemSiz +Flg Align
- +LOAD +0x0+ 0x0+ 0x0+ 0x0+5a8 0x0+5a8 R E 0x10000
- +LOAD +0x0+5a8 0x0+105a8 0x0+105a8 0x0+f0 0x0+144 RWE 0x10000
- +DYNAMIC +0x0+5c4 0x0+105c4 0x0+105c4 0x0+a0 0x0+a0 RW +0x4
- +TLS +0x0+5a8 0x0+105a8 0x0+105a8 0x0+1c 0x0+38 R +0x4
+ +LOAD +0x0+ 0x0+ 0x0+ 0x0+508 0x0+508 R E 0x10000
+ +LOAD +0x0+508 0x0+10508 0x0+10508 0x0+f0 0x0+144 RWE 0x10000
+ +DYNAMIC +0x0+524 0x0+10524 0x0+10524 0x0+a0 0x0+a0 RW +0x4
+ +TLS +0x0+508 0x0+10508 0x0+10508 0x0+1c 0x0+38 R +0x4
 
  Section to Segment mapping:
  +Segment Sections\.\.\.
@@ -48,115 +48,107 @@ Program Headers:
  +02 +\.tbss \.dynamic 
  +03 +\.tdata \.tbss 
 
-Relocation section '\.rela\.dyn' at offset 0x454 contains 18 entries:
+Relocation section '\.rela\.dyn' at offset 0x[0-9a-f]+ contains 18 entries:
  Offset +Info +Type +Sym\. Value +Symbol's Name \+ Addend
-0+53c +0+140a R_PPC_REL24 +0+ +__tls_get_addr \+ 0
-0+544 +0+140a R_PPC_REL24 +0+ +__tls_get_addr \+ 0
-0+57c +0+140a R_PPC_REL24 +0+ +__tls_get_addr \+ 0
-0+584 +0+140a R_PPC_REL24 +0+ +__tls_get_addr \+ 0
-0+56e +0+1345 R_PPC_TPREL16 +0+30 +le0 \+ 0
-0+572 +0+1648 R_PPC_TPREL16_HA +0+34 +le1 \+ 0
-0+576 +0+1646 R_PPC_TPREL16_LO +0+34 +le1 \+ 0
-0+59e +0+845 R_PPC_TPREL16 +0+105a8 +\.tdata \+ 105bc
-0+5a2 +0+848 R_PPC_TPREL16_HA +0+105a8 +\.tdata \+ 105c0
-0+5a6 +0+846 R_PPC_TPREL16_LO +0+105a8 +\.tdata \+ 105c0
-0+10674 +0+44 R_PPC_DTPMOD32 +0+
-0+1067c +0+44 R_PPC_DTPMOD32 +0+
-0+10680 +0+4e R_PPC_DTPREL32 +0+
-0+10684 +0+1244 R_PPC_DTPMOD32 +0+ +gd \+ 0
-0+10688 +0+124e R_PPC_DTPREL32 +0+ +gd \+ 0
-0+1068c +0+2144 R_PPC_DTPMOD32 +0+1c +gd0 \+ 0
-0+10690 +0+214e R_PPC_DTPREL32 +0+1c +gd0 \+ 0
-0+10694 +0+2249 R_PPC_TPREL32 +0+2c +ie0 \+ 0
+0+49c +0+c0a R_PPC_REL24 +0+ +__tls_get_addr \+ 0
+0+4a4 +0+c0a R_PPC_REL24 +0+ +__tls_get_addr \+ 0
+0+4dc +0+c0a R_PPC_REL24 +0+ +__tls_get_addr \+ 0
+0+4e4 +0+c0a R_PPC_REL24 +0+ +__tls_get_addr \+ 0
+0+4ce +0+b45 R_PPC_TPREL16 +0+30 +le0 \+ 0
+0+4d2 +0+e48 R_PPC_TPREL16_HA +0+34 +le1 \+ 0
+0+4d6 +0+e46 R_PPC_TPREL16_LO +0+34 +le1 \+ 0
+0+4fe +0+245 R_PPC_TPREL16 +0+10508 +\.tdata \+ 1051c
+0+502 +0+248 R_PPC_TPREL16_HA +0+10508 +\.tdata \+ 10520
+0+506 +0+246 R_PPC_TPREL16_LO +0+10508 +\.tdata \+ 10520
+0+105d4 +0+44 R_PPC_DTPMOD32 +0+
+0+105dc +0+44 R_PPC_DTPMOD32 +0+
+0+105e0 +0+4e R_PPC_DTPREL32 +0+
+0+105e4 +0+a44 R_PPC_DTPMOD32 +0+ +gd \+ 0
+0+105e8 +0+a4e R_PPC_DTPREL32 +0+ +gd \+ 0
+0+105ec +0+1944 R_PPC_DTPMOD32 +0+1c +gd0 \+ 0
+0+105f0 +0+194e R_PPC_DTPREL32 +0+1c +gd0 \+ 0
+0+105f4 +0+1a49 R_PPC_TPREL32 +0+2c +ie0 \+ 0
 
-Relocation section '\.rela\.plt' at offset 0x52c contains 1 entries:
+Relocation section '\.rela\.plt' at offset 0x[0-9a-f]+ contains 1 entries:
  Offset +Info +Type +Sym\. Value +Symbol's Name \+ Addend
-0+106e0 +0+1415 R_PPC_JMP_SLOT +0+ +__tls_get_addr \+ 0
+0+10640 +0+c15 R_PPC_JMP_SLOT +0+ +__tls_get_addr \+ 0
 
-Symbol table '\.dynsym' contains 36 entries:
+Symbol table '\.dynsym' contains 28 entries:
  +Num: +Value +Size Type +Bind +Vis +Ndx Name
- +0: 0+ +0 NOTYPE +LOCAL +DEFAULT +UND 
- +1: 0+b4 +0 SECTION LOCAL +DEFAULT +1 
- +2: 0+190 +0 SECTION LOCAL +DEFAULT +2 
- +3: 0+3d0 +0 SECTION LOCAL +DEFAULT +3 
- +4: 0+454 +0 SECTION LOCAL +DEFAULT +4 
- +5: 0+52c +0 SECTION LOCAL +DEFAULT +5 
- +6: 0+538 +0 SECTION LOCAL +DEFAULT +6 
- +7: 0+105a8 +0 SECTION LOCAL +DEFAULT +7 
- +8: 0+105a8 +0 SECTION LOCAL +DEFAULT +8 
- +9: 0+105c4 +0 SECTION LOCAL +DEFAULT +9 
- +10: 0+105c4 +0 SECTION LOCAL +DEFAULT +10 
- +11: 0+10664 +0 SECTION LOCAL +DEFAULT +11 
- +12: 0+10698 +0 SECTION LOCAL +DEFAULT +12 
- +13: 0+10698 +0 SECTION LOCAL +DEFAULT +13 
- +14: 0+10698 +0 SECTION LOCAL +DEFAULT +14 
- +15: 0+10698 +0 SECTION LOCAL +DEFAULT +15 
- +16: 0+106ec +0 SECTION LOCAL +DEFAULT +16 
- +17: 0+105c4 +0 OBJECT +GLOBAL DEFAULT +ABS _DYNAMIC
- +18: 0+ +0 NOTYPE +GLOBAL DEFAULT +UND gd
- +19: 0+30 +0 TLS +GLOBAL DEFAULT +9 le0
- +20: 0+ +0 NOTYPE +GLOBAL DEFAULT +UND __tls_get_addr
- +21: 0+20 +0 TLS +GLOBAL DEFAULT +9 ld0
- +22: 0+34 +0 TLS +GLOBAL DEFAULT +9 le1
- +23: 0+ +0 NOTYPE +GLOBAL DEFAULT +UND ld
- +24: 0+538 +0 NOTYPE +GLOBAL DEFAULT +6 _start
- +25: 0+106ec +0 NOTYPE +GLOBAL DEFAULT +ABS __end
- +26: 0+18698 +0 OBJECT +GLOBAL DEFAULT +13 _SDA_BASE_
- +27: 0+28 +0 TLS +GLOBAL DEFAULT +9 ld2
- +28: 0+24 +0 TLS +GLOBAL DEFAULT +9 ld1
- +29: 0+10698 +0 NOTYPE +GLOBAL DEFAULT +ABS __bss_start
- +30: 0+10698 +0 NOTYPE +GLOBAL DEFAULT +ABS _edata
- +31: 0+10668 +0 OBJECT +GLOBAL DEFAULT +ABS _GLOBAL_OFFSET_TABLE_
- +32: 0+106ec +0 NOTYPE +GLOBAL DEFAULT +ABS _end
- +33: 0+1c +0 TLS +GLOBAL DEFAULT +9 gd0
- +34: 0+2c +0 TLS +GLOBAL DEFAULT +9 ie0
- +35: 0+18698 +0 OBJECT +GLOBAL DEFAULT +12 _SDA2_BASE_
+ +[0-9]+: 0+ +0 NOTYPE +LOCAL +DEFAULT +UND 
+ +[0-9]+: 0+498 +0 SECTION LOCAL +DEFAULT +6 
+ +[0-9]+: 0+10508 +0 SECTION LOCAL +DEFAULT +7 
+ +[0-9]+: 0+10524 +0 SECTION LOCAL +DEFAULT +8 
+ +[0-9]+: 0+105c4 +0 SECTION LOCAL +DEFAULT +10 
+ +[0-9]+: 0+105f8 +0 SECTION LOCAL +DEFAULT +12 
+ +[0-9]+: 0+105f8 +0 SECTION LOCAL +DEFAULT +13 
+ +[0-9]+: 0+105f8 +0 SECTION LOCAL +DEFAULT +14 
+ +[0-9]+: 0+1064c +0 SECTION LOCAL +DEFAULT +16 
+ +[0-9]+: 0+10524 +0 OBJECT +GLOBAL DEFAULT +ABS _DYNAMIC
+ +[0-9]+: 0+ +0 NOTYPE +GLOBAL DEFAULT +UND gd
+ +[0-9]+: 0+30 +0 TLS +GLOBAL DEFAULT +8 le0
+ +[0-9]+: 0+ +0 NOTYPE +GLOBAL DEFAULT +UND __tls_get_addr
+ +[0-9]+: 0+20 +0 TLS +GLOBAL DEFAULT +8 ld0
+ +[0-9]+: 0+34 +0 TLS +GLOBAL DEFAULT +8 le1
+ +[0-9]+: 0+ +0 NOTYPE +GLOBAL DEFAULT +UND ld
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +6 _start
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS __end
+ +[0-9]+: [0-9a-f]+ +0 OBJECT +GLOBAL DEFAULT +13 _SDA_BASE_
+ +[0-9]+: 0+28 +0 TLS +GLOBAL DEFAULT +8 ld2
+ +[0-9]+: 0+24 +0 TLS +GLOBAL DEFAULT +8 ld1
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS __bss_start
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _edata
+ +[0-9]+: 0+105c8 +0 OBJECT +GLOBAL DEFAULT +ABS _GLOBAL_OFFSET_TABLE_
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _end
+ +[0-9]+: 0+1c +0 TLS +GLOBAL DEFAULT +8 gd0
+ +[0-9]+: 0+2c +0 TLS +GLOBAL DEFAULT +8 ie0
+ +[0-9]+: [0-9a-f]+ +0 OBJECT +GLOBAL DEFAULT +12 _SDA2_BASE_
 
 Symbol table '\.symtab' contains 46 entries:
  +Num: +Value +Size Type +Bind +Vis +Ndx Name
- +0: 0+ +0 NOTYPE +LOCAL +DEFAULT +UND 
- +1: 0+b4 +0 SECTION LOCAL +DEFAULT +1 
- +2: 0+190 +0 SECTION LOCAL +DEFAULT +2 
- +3: 0+3d0 +0 SECTION LOCAL +DEFAULT +3 
- +4: 0+454 +0 SECTION LOCAL +DEFAULT +4 
- +5: 0+52c +0 SECTION LOCAL +DEFAULT +5 
- +6: 0+538 +0 SECTION LOCAL +DEFAULT +6 
- +7: 0+105a8 +0 SECTION LOCAL +DEFAULT +7 
- +8: 0+105a8 +0 SECTION LOCAL +DEFAULT +8 
- +9: 0+105c4 +0 SECTION LOCAL +DEFAULT +9 
- +10: 0+105c4 +0 SECTION LOCAL +DEFAULT +10 
- +11: 0+10664 +0 SECTION LOCAL +DEFAULT +11 
- +12: 0+10698 +0 SECTION LOCAL +DEFAULT +12 
- +13: 0+10698 +0 SECTION LOCAL +DEFAULT +13 
- +14: 0+10698 +0 SECTION LOCAL +DEFAULT +14 
- +15: 0+10698 +0 SECTION LOCAL +DEFAULT +15 
- +16: 0+106ec +0 SECTION LOCAL +DEFAULT +16 
- +17: 0+ +0 SECTION LOCAL +DEFAULT +17 
- +18: 0+ +0 SECTION LOCAL +DEFAULT +18 
- +19: 0+ +0 SECTION LOCAL +DEFAULT +19 
- +20: 0+ +0 TLS +LOCAL +DEFAULT +8 gd4
- +21: 0+4 +0 TLS +LOCAL +DEFAULT +8 ld4
- +22: 0+8 +0 TLS +LOCAL +DEFAULT +8 ld5
- +23: 0+c +0 TLS +LOCAL +DEFAULT +8 ld6
- +24: 0+10 +0 TLS +LOCAL +DEFAULT +8 ie4
- +25: 0+14 +0 TLS +LOCAL +DEFAULT +8 le4
- +26: 0+18 +0 TLS +LOCAL +DEFAULT +8 le5
- +27: 0+105c4 +0 OBJECT +GLOBAL DEFAULT +ABS _DYNAMIC
- +28: 0+ +0 NOTYPE +GLOBAL DEFAULT +UND gd
- +29: 0+30 +0 TLS +GLOBAL DEFAULT +9 le0
- +30: 0+ +0 NOTYPE +GLOBAL DEFAULT +UND __tls_get_addr
- +31: 0+20 +0 TLS +GLOBAL DEFAULT +9 ld0
- +32: 0+34 +0 TLS +GLOBAL DEFAULT +9 le1
- +33: 0+ +0 NOTYPE +GLOBAL DEFAULT +UND ld
- +34: 0+538 +0 NOTYPE +GLOBAL DEFAULT +6 _start
- +35: 0+106ec +0 NOTYPE +GLOBAL DEFAULT +ABS __end
- +36: 0+18698 +0 OBJECT +GLOBAL DEFAULT +13 _SDA_BASE_
- +37: 0+28 +0 TLS +GLOBAL DEFAULT +9 ld2
- +38: 0+24 +0 TLS +GLOBAL DEFAULT +9 ld1
- +39: 0+10698 +0 NOTYPE +GLOBAL DEFAULT +ABS __bss_start
- +40: 0+10698 +0 NOTYPE +GLOBAL DEFAULT +ABS _edata
- +41: 0+10668 +0 OBJECT +GLOBAL DEFAULT +ABS _GLOBAL_OFFSET_TABLE_
- +42: 0+106ec +0 NOTYPE +GLOBAL DEFAULT +ABS _end
- +43: 0+1c +0 TLS +GLOBAL DEFAULT +9 gd0
- +44: 0+2c +0 TLS +GLOBAL DEFAULT +9 ie0
- +45: 0+18698 +0 OBJECT +GLOBAL DEFAULT +12 _SDA2_BASE_
+ +[0-9]+: 0+ +0 NOTYPE +LOCAL +DEFAULT +UND 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +1 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +2 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +3 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +4 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +5 
+ +[0-9]+: 0+498 +0 SECTION LOCAL +DEFAULT +6 
+ +[0-9]+: 0+10508 +0 SECTION LOCAL +DEFAULT +7 
+ +[0-9]+: 0+10524 +0 SECTION LOCAL +DEFAULT +8 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +9 
+ +[0-9]+: 0+105c4 +0 SECTION LOCAL +DEFAULT +10 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +11 
+ +[0-9]+: 0+105f8 +0 SECTION LOCAL +DEFAULT +12 
+ +[0-9]+: 0+105f8 +0 SECTION LOCAL +DEFAULT +13 
+ +[0-9]+: 0+105f8 +0 SECTION LOCAL +DEFAULT +14 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +15 
+ +[0-9]+: 0+1064c +0 SECTION LOCAL +DEFAULT +16 
+ +[0-9]+: 0+ +0 SECTION LOCAL +DEFAULT +17 
+ +[0-9]+: 0+ +0 SECTION LOCAL +DEFAULT +18 
+ +[0-9]+: 0+ +0 SECTION LOCAL +DEFAULT +19 
+ +[0-9]+: 0+ +0 TLS +LOCAL +DEFAULT +7 gd4
+ +[0-9]+: 0+4 +0 TLS +LOCAL +DEFAULT +7 ld4
+ +[0-9]+: 0+8 +0 TLS +LOCAL +DEFAULT +7 ld5
+ +[0-9]+: 0+c +0 TLS +LOCAL +DEFAULT +7 ld6
+ +[0-9]+: 0+10 +0 TLS +LOCAL +DEFAULT +7 ie4
+ +[0-9]+: 0+14 +0 TLS +LOCAL +DEFAULT +7 le4
+ +[0-9]+: 0+18 +0 TLS +LOCAL +DEFAULT +7 le5
+ +[0-9]+: 0+10524 +0 OBJECT +GLOBAL DEFAULT +ABS _DYNAMIC
+ +[0-9]+: 0+ +0 NOTYPE +GLOBAL DEFAULT +UND gd
+ +[0-9]+: 0+30 +0 TLS +GLOBAL DEFAULT +8 le0
+ +[0-9]+: 0+ +0 NOTYPE +GLOBAL DEFAULT +UND __tls_get_addr
+ +[0-9]+: 0+20 +0 TLS +GLOBAL DEFAULT +8 ld0
+ +[0-9]+: 0+34 +0 TLS +GLOBAL DEFAULT +8 le1
+ +[0-9]+: 0+ +0 NOTYPE +GLOBAL DEFAULT +UND ld
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +6 _start
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS __end
+ +[0-9]+: [0-9a-f]+ +0 OBJECT +GLOBAL DEFAULT +13 _SDA_BASE_
+ +[0-9]+: 0+28 +0 TLS +GLOBAL DEFAULT +8 ld2
+ +[0-9]+: 0+24 +0 TLS +GLOBAL DEFAULT +8 ld1
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS __bss_start
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _edata
+ +[0-9]+: 0+105c8 +0 OBJECT +GLOBAL DEFAULT +ABS _GLOBAL_OFFSET_TABLE_
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _end
+ +[0-9]+: 0+1c +0 TLS +GLOBAL DEFAULT +8 gd0
+ +[0-9]+: 0+2c +0 TLS +GLOBAL DEFAULT +8 ie0
+ +[0-9]+: [0-9a-f]+ +0 OBJECT +GLOBAL DEFAULT +12 _SDA2_BASE_
index 1481864..a1594db 100644 (file)
@@ -7,5 +7,5 @@
 .*: +file format elf32-powerpc
 
 Contents of section \.tdata:
- 105a8 12345678 23456789 3456789a 456789ab  .*
- 105b8 56789abc 6789abcd 789abcde           .*
+ 10508 12345678 23456789 3456789a 456789ab  .*
+ 10518 56789abc 6789abcd 789abcde           .*
index ee47e11..e0d51ac 100644 (file)
@@ -7,9 +7,9 @@
 .*: +file format elf64-powerpc
 
 Contents of section \.got:
- 10890 00000000 00018890 00000000 00000000  .*
- 108a0 00000000 00000000 00000000 00000000  .*
- 108b0 00000000 00000000 00000000 00000000  .*
- 108c0 00000000 00000000 00000000 00000000  .*
- 108d0 00000000 00000000 00000000 00000000  .*
- 108e0 00000000 00000000                    .*
+ 10798 00000000 00018798 00000000 00000000  .*
+ 107a8 00000000 00000000 00000000 00000000  .*
+ 107b8 00000000 00000000 00000000 00000000  .*
+ 107c8 00000000 00000000 00000000 00000000  .*
+ 107d8 00000000 00000000 00000000 00000000  .*
+ 107e8 00000000 00000000                    .*
index 273a800..f842320 100644 (file)
@@ -9,36 +9,36 @@ There are 19 section headers.*
 Section Headers:
  +\[Nr\] Name +Type +Address +Off +Size +ES Flg Lk Inf Al
  +\[ 0\] +NULL +0+ 0+ 0+ 0+ +0 +0 +0
- +\[ 1\] \.hash +HASH +0+120 0+120 0+c8 04 +A +2 +0 +8
- +\[ 2\] \.dynsym +DYNSYM +0+1e8 0+1e8 0+2e8 18 +A +3 +16 +8
- +\[ 3\] \.dynstr +STRTAB +0+4d0 0+4d0 0+53 0+ +A +0 +0 +1
- +\[ 4\] \.rela\.dyn +RELA +0+528 0+528 0+108 18 +A +2 +0 +8
- +\[ 5\] \.rela\.plt +RELA +0+630 0+630 0+18 18 +A +2 +14 +8
- +\[ 6\] \.text +PROGBITS +0+648 0+648 0+bc 0+ +AX +0 +0 +4
- +\[ 7\] \.data +PROGBITS +0+10708 0+708 0+ 0+ +WA +0 +0 +1
- +\[ 8\] \.branch_lt +PROGBITS +0+10708 0+708 0+ 0+ +WA +0 +0 +8
- +\[ 9\] \.tdata +PROGBITS +0+10708 0+708 0+38 0+ WAT +0 +0 +8
- +\[10\] \.tbss +NOBITS +0+10740 0+740 0+38 0+ WAT +0 +0 +8
- +\[11\] \.dynamic +DYNAMIC +0+10740 0+740 0+150 10 +WA +3 +0 +8
- +\[12\] \.got +PROGBITS +0+10890 0+890 0+58 08 +WA +0 +0 +8
- +\[13\] \.sbss +NOBITS +0+108e8 0+8e8 0+ 0+ +W +0 +0 +1
- +\[14\] \.plt +NOBITS +0+108e8 0+8e8 0+30 18 +WA +0 +0 +8
- +\[15\] \.bss +NOBITS +0+10918 0+8e8 0+ 0+ +WA +0 +0 +1
- +\[16\] \.shstrtab +STRTAB +0+ 0+8e8 0+82 0+ +0 +0 +1
- +\[17\] \.symtab +SYMTAB +0+ 0+e30 0+408 18 +18 +28 +8
- +\[18\] \.strtab +STRTAB +0+ 0+1238 0+8c 0+ +0 +0 +1
+ +\[ 1\] \.hash +.*
+ +\[ 2\] \.dynsym +.*
+ +\[ 3\] \.dynstr +.*
+ +\[ 4\] \.rela\.dyn +.*
+ +\[ 5\] \.rela\.plt +.*
+ +\[ 6\] \.text +PROGBITS +0+550 0+550 0+bc 0+ +AX +0 +0 +4
+ +\[ 7\] \.tdata +PROGBITS +0+10610 0+610 0+38 0+ WAT +0 +0 +8
+ +\[ 8\] \.tbss +NOBITS +0+10648 0+648 0+38 0+ WAT +0 +0 +8
+ +\[ 9\] \.dynamic +DYNAMIC +0+10648 0+648 0+150 10 +WA +3 +0 +8
+ +\[10\] \.data +PROGBITS +0+10798 0+798 0+ 0+ +WA +0 +0 +1
+ +\[11\] \.branch_lt +.*
+ +\[12\] \.got +PROGBITS +0+10798 0+798 0+58 08 +WA +0 +0 +8
+ +\[13\] \.sbss +.*
+ +\[14\] \.plt +.*
+ +\[15\] \.bss +.*
+ +\[16\] \.shstrtab +.*
+ +\[17\] \.symtab +.*
+ +\[18\] \.strtab +.*
 #...
 
 Elf file type is DYN \(Shared object file\)
-Entry point 0x664
+Entry point 0x[0-9a-f]+
 There are 4 program headers.*
 
 Program Headers:
  +Type +Offset +VirtAddr +PhysAddr +FileSiz +MemSiz +Flg Align
- +LOAD +0x0+ 0x0+ 0x0+ 0x0+704 0x0+704 R E 0x10000
- +LOAD +0x0+708 0x0+10708 0x0+10708 0x0+1e0 0x0+210 RW +0x10000
- +DYNAMIC +0x0+740 0x0+10740 0x0+10740 0x0+150 0x0+150 RW +0x8
- +TLS +0x0+708 0x0+10708 0x0+10708 0x0+38 0x0+70 R +0x8
+ +LOAD +0x0+ 0x0+ 0x0+ 0x0+60c 0x0+60c R E 0x10000
+ +LOAD +0x0+610 0x0+10610 0x0+10610 0x0+1e0 0x0+210 RW +0x10000
+ +DYNAMIC +0x0+648 0x0+10648 0x0+10648 0x0+150 0x0+150 RW +0x8
+ +TLS +0x0+610 0x0+10610 0x0+10610 0x0+38 0x0+70 R +0x8
 
  Section to Segment mapping:
  +Segment Sections\.\.\.
@@ -49,98 +49,89 @@ Program Headers:
 
 Relocation section '\.rela\.dyn' at offset .* contains 11 entries:
  +Offset +Info +Type +Symbol's Value +Symbol's Name \+ Addend
-0+6b2 +0+1200000045 R_PPC64_TPREL16 +0+60 le0 \+ 0
-0+6b6 +0+1500000048 R_PPC64_TPREL16_HA +0+68 le1 \+ 0
-0+6ba +0+1500000046 R_PPC64_TPREL16_LO +0+68 le1 \+ 0
-0+10898 +0+1100000044 R_PPC64_DTPMOD64 +0+ gd \+ 0
-0+108a0 +0+110000004e R_PPC64_DTPREL64 +0+ gd \+ 0
-0+108a8 +0+1600000044 R_PPC64_DTPMOD64 +0+ ld \+ 0
-0+108b8 +0+1d00000044 R_PPC64_DTPMOD64 +0+38 gd0 \+ 0
-0+108c0 +0+1d0000004e R_PPC64_DTPREL64 +0+38 gd0 \+ 0
-0+108c8 +0+1400000044 R_PPC64_DTPMOD64 +0+40 ld0 \+ 0
-0+108d8 +0+180000004e R_PPC64_DTPREL64 +0+50 ld2 \+ 0
-0+108e0 +0+1e00000049 R_PPC64_TPREL64 +0+58 ie0 \+ 0
+0+5ba +0+90+45 R_PPC64_TPREL16 +0+60 le0 \+ 0
+0+5be +0+c0+48 R_PPC64_TPREL16_HA +0+68 le1 \+ 0
+0+5c2 +0+c0+46 R_PPC64_TPREL16_LO +0+68 le1 \+ 0
+0+107a0 +0+80+44 R_PPC64_DTPMOD64 +0+ gd \+ 0
+0+107a8 +0+80+4e R_PPC64_DTPREL64 +0+ gd \+ 0
+0+107b0 +0+d0+44 R_PPC64_DTPMOD64 +0+ ld \+ 0
+0+107c0 +0+140+44 R_PPC64_DTPMOD64 +0+38 gd0 \+ 0
+0+107c8 +0+140+4e R_PPC64_DTPREL64 +0+38 gd0 \+ 0
+0+107d0 +0+b0+44 R_PPC64_DTPMOD64 +0+40 ld0 \+ 0
+0+107e0 +0+f0+4e R_PPC64_DTPREL64 +0+50 ld2 \+ 0
+0+107e8 +0+150+49 R_PPC64_TPREL64 +0+58 ie0 \+ 0
 
 Relocation section '\.rela\.plt' at offset .* contains 1 entries:
  +Offset +Info +Type +Symbol's Value +Symbol's Name \+ Addend
-0+10900 +0+1300000015 R_PPC64_JMP_SLOT +0+ __tls_get_addr \+ 0
+0+10808 +0+a0+15 R_PPC64_JMP_SLOT +0+ __tls_get_addr \+ 0
 
-Symbol table '\.dynsym' contains 31 entries:
+Symbol table '\.dynsym' contains 22 entries:
  +Num: +Value +Size Type +Bind +Vis +Ndx Name
- +0: 0+ +0 NOTYPE +LOCAL +DEFAULT +UND 
- +1: 0+120 +0 SECTION LOCAL +DEFAULT +1 
- +2: 0+1e8 +0 SECTION LOCAL +DEFAULT +2 
- +3: 0+4d0 +0 SECTION LOCAL +DEFAULT +3 
- +4: 0+528 +0 SECTION LOCAL +DEFAULT +4 
- +5: 0+630 +0 SECTION LOCAL +DEFAULT +5 
- +6: 0+648 +0 SECTION LOCAL +DEFAULT +6 
- +7: 0+10708 +0 SECTION LOCAL +DEFAULT +7 
- +8: 0+10708 +0 SECTION LOCAL +DEFAULT +8 
- +9: 0+10708 +0 SECTION LOCAL +DEFAULT +9 
- +10: 0+10740 +0 SECTION LOCAL +DEFAULT +10 
- +11: 0+10740 +0 SECTION LOCAL +DEFAULT +11 
- +12: 0+10890 +0 SECTION LOCAL +DEFAULT +12 
- +13: 0+108e8 +0 SECTION LOCAL +DEFAULT +13 
- +14: 0+108e8 +0 SECTION LOCAL +DEFAULT +14 
- +15: 0+10918 +0 SECTION LOCAL +DEFAULT +15 
- +16: 0+10740 +0 OBJECT +GLOBAL DEFAULT +ABS _DYNAMIC
- +17: 0+ +0 NOTYPE +GLOBAL DEFAULT +UND gd
- +18: 0+60 +0 TLS +GLOBAL DEFAULT +10 le0
- +19: 0+ +24 OBJECT +GLOBAL DEFAULT +UND __tls_get_addr
- +20: 0+40 +0 TLS +GLOBAL DEFAULT +10 ld0
- +21: 0+68 +0 TLS +GLOBAL DEFAULT +10 le1
- +22: 0+ +0 NOTYPE +GLOBAL DEFAULT +UND ld
- +23: 0+664 +0 NOTYPE +GLOBAL DEFAULT +6 _start
- +24: 0+50 +0 TLS +GLOBAL DEFAULT +10 ld2
- +25: 0+48 +0 TLS +GLOBAL DEFAULT +10 ld1
- +26: 0+108e8 +0 NOTYPE +GLOBAL DEFAULT +ABS __bss_start
- +27: 0+108e8 +0 NOTYPE +GLOBAL DEFAULT +ABS _edata
- +28: 0+10918 +0 NOTYPE +GLOBAL DEFAULT +ABS _end
- +29: 0+38 +0 TLS +GLOBAL DEFAULT +10 gd0
- +30: 0+58 +0 TLS +GLOBAL DEFAULT +10 ie0
+ +[0-9]+: 0+ +0 NOTYPE +LOCAL +DEFAULT +UND 
+ +[0-9]+: 0+550 +0 SECTION LOCAL +DEFAULT +6 
+ +[0-9]+: 0+10610 +0 SECTION LOCAL +DEFAULT +7 
+ +[0-9]+: 0+10648 +0 SECTION LOCAL +DEFAULT +8 
+ +[0-9]+: 0+10798 +0 SECTION LOCAL +DEFAULT +10 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +11 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +15 
+ +[0-9]+: 0+10648 +0 OBJECT +GLOBAL DEFAULT +ABS _DYNAMIC
+ +[0-9]+: 0+ +0 NOTYPE +GLOBAL DEFAULT +UND gd
+ +[0-9]+: 0+60 +0 TLS +GLOBAL DEFAULT +8 le0
+ +[0-9]+: 0+ +24 OBJECT +GLOBAL DEFAULT +UND __tls_get_addr
+ +[0-9]+: 0+40 +0 TLS +GLOBAL DEFAULT +8 ld0
+ +[0-9]+: 0+68 +0 TLS +GLOBAL DEFAULT +8 le1
+ +[0-9]+: 0+ +0 NOTYPE +GLOBAL DEFAULT +UND ld
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +6 _start
+ +[0-9]+: 0+50 +0 TLS +GLOBAL DEFAULT +8 ld2
+ +[0-9]+: 0+48 +0 TLS +GLOBAL DEFAULT +8 ld1
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS __bss_start
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _edata
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _end
+ +[0-9]+: 0+38 +0 TLS +GLOBAL DEFAULT +8 gd0
+ +[0-9]+: 0+58 +0 TLS +GLOBAL DEFAULT +8 ie0
 
 Symbol table '\.symtab' contains 43 entries:
  +Num: +Value +Size Type +Bind +Vis +Ndx Name
- +0: 0+ +0 NOTYPE +LOCAL +DEFAULT +UND 
- +1: 0+120 +0 SECTION LOCAL +DEFAULT +1 
- +2: 0+1e8 +0 SECTION LOCAL +DEFAULT +2 
- +3: 0+4d0 +0 SECTION LOCAL +DEFAULT +3 
- +4: 0+528 +0 SECTION LOCAL +DEFAULT +4 
- +5: 0+630 +0 SECTION LOCAL +DEFAULT +5 
- +6: 0+648 +0 SECTION LOCAL +DEFAULT +6 
- +7: 0+10708 +0 SECTION LOCAL +DEFAULT +7 
- +8: 0+10708 +0 SECTION LOCAL +DEFAULT +8 
- +9: 0+10708 +0 SECTION LOCAL +DEFAULT +9 
- +10: 0+10740 +0 SECTION LOCAL +DEFAULT +10 
- +11: 0+10740 +0 SECTION LOCAL +DEFAULT +11 
- +12: 0+10890 +0 SECTION LOCAL +DEFAULT +12 
- +13: 0+108e8 +0 SECTION LOCAL +DEFAULT +13 
- +14: 0+108e8 +0 SECTION LOCAL +DEFAULT +14 
- +15: 0+10918 +0 SECTION LOCAL +DEFAULT +15 
- +16: 0+ +0 SECTION LOCAL +DEFAULT +16 
- +17: 0+ +0 SECTION LOCAL +DEFAULT +17 
- +18: 0+ +0 SECTION LOCAL +DEFAULT +18 
- +19: 0+ +0 TLS +LOCAL +DEFAULT +9 gd4
- +20: 0+8 +0 TLS +LOCAL +DEFAULT +9 ld4
- +21: 0+10 +0 TLS +LOCAL +DEFAULT +9 ld5
- +22: 0+18 +0 TLS +LOCAL +DEFAULT +9 ld6
- +23: 0+20 +0 TLS +LOCAL +DEFAULT +9 ie4
- +24: 0+28 +0 TLS +LOCAL +DEFAULT +9 le4
- +25: 0+30 +0 TLS +LOCAL +DEFAULT +9 le5
- +26: 0+108e0 +0 NOTYPE +LOCAL +DEFAULT +12 \.Lie0
- +27: 0+648 +0 NOTYPE +LOCAL +DEFAULT +6 \.__tls_get_addr
- +28: 0+10740 +0 OBJECT +GLOBAL DEFAULT +ABS _DYNAMIC
- +29: 0+ +0 NOTYPE +GLOBAL DEFAULT +UND gd
- +30: 0+60 +0 TLS +GLOBAL DEFAULT +10 le0
- +31: 0+ +24 OBJECT +GLOBAL DEFAULT +UND __tls_get_addr
- +32: 0+40 +0 TLS +GLOBAL DEFAULT +10 ld0
- +33: 0+68 +0 TLS +GLOBAL DEFAULT +10 le1
- +34: 0+ +0 NOTYPE +GLOBAL DEFAULT +UND ld
- +35: 0+664 +0 NOTYPE +GLOBAL DEFAULT +6 _start
- +36: 0+50 +0 TLS +GLOBAL DEFAULT +10 ld2
- +37: 0+48 +0 TLS +GLOBAL DEFAULT +10 ld1
- +38: 0+108e8 +0 NOTYPE +GLOBAL DEFAULT +ABS __bss_start
- +39: 0+108e8 +0 NOTYPE +GLOBAL DEFAULT +ABS _edata
- +40: 0+10918 +0 NOTYPE +GLOBAL DEFAULT +ABS _end
- +41: 0+38 +0 TLS +GLOBAL DEFAULT +10 gd0
- +42: 0+58 +0 TLS +GLOBAL DEFAULT +10 ie0
+ +[0-9]+: 0+ +0 NOTYPE +LOCAL +DEFAULT +UND 
+ +[0-9]+: 0+120 +0 SECTION LOCAL +DEFAULT +1 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +2 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +3 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +4 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +5 
+ +[0-9]+: 0+550 +0 SECTION LOCAL +DEFAULT +6 
+ +[0-9]+: 0+10610 +0 SECTION LOCAL +DEFAULT +7 
+ +[0-9]+: 0+10648 +0 SECTION LOCAL +DEFAULT +8 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +9 
+ +[0-9]+: 0+10798 +0 SECTION LOCAL +DEFAULT +10 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +11 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +12 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +13 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +14 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +15 
+ +[0-9]+: 0+ +0 SECTION LOCAL +DEFAULT +16 
+ +[0-9]+: 0+ +0 SECTION LOCAL +DEFAULT +17 
+ +[0-9]+: 0+ +0 SECTION LOCAL +DEFAULT +18 
+ +[0-9]+: 0+ +0 TLS +LOCAL +DEFAULT +7 gd4
+ +[0-9]+: 0+8 +0 TLS +LOCAL +DEFAULT +7 ld4
+ +[0-9]+: 0+10 +0 TLS +LOCAL +DEFAULT +7 ld5
+ +[0-9]+: 0+18 +0 TLS +LOCAL +DEFAULT +7 ld6
+ +[0-9]+: 0+20 +0 TLS +LOCAL +DEFAULT +7 ie4
+ +[0-9]+: 0+28 +0 TLS +LOCAL +DEFAULT +7 le4
+ +[0-9]+: 0+30 +0 TLS +LOCAL +DEFAULT +7 le5
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE +LOCAL +DEFAULT +12 \.Lie0
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE +LOCAL +DEFAULT +6 \.__tls_get_addr
+ +[0-9]+: 0+10648 +0 OBJECT +GLOBAL DEFAULT +ABS _DYNAMIC
+ +[0-9]+: 0+ +0 NOTYPE +GLOBAL DEFAULT +UND gd
+ +[0-9]+: 0+60 +0 TLS +GLOBAL DEFAULT +8 le0
+ +[0-9]+: 0+ +24 OBJECT +GLOBAL DEFAULT +UND __tls_get_addr
+ +[0-9]+: 0+40 +0 TLS +GLOBAL DEFAULT +8 ld0
+ +[0-9]+: 0+68 +0 TLS +GLOBAL DEFAULT +8 le1
+ +[0-9]+: 0+ +0 NOTYPE +GLOBAL DEFAULT +UND ld
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +6 _start
+ +[0-9]+: 0+50 +0 TLS +GLOBAL DEFAULT +8 ld2
+ +[0-9]+: 0+48 +0 TLS +GLOBAL DEFAULT +8 ld1
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS __bss_start
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _edata
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _end
+ +[0-9]+: 0+38 +0 TLS +GLOBAL DEFAULT +8 gd0
+ +[0-9]+: 0+58 +0 TLS +GLOBAL DEFAULT +8 ie0
index 215a98d..82b1b87 100644 (file)
 
 Disassembly of section .text:
 
-0+4002e4 <fn2>:
+0+[0-9a-f]+ <fn2>:
 # function prolog
+4002e4:      90 6e f0 18             stm     %r6,%r14,24\(%r15\)
+4002e8:      a7 d5 00 24             bras    %r13,400330 <fn2\+0x4c>
 +[0-9a-f]+:  90 6e f0 18             stm     %r6,%r14,24\(%r15\)
 +[0-9a-f]+:  a7 d5 00 24             bras    %r13,[0-9a-f]+ <fn2\+0x4c>
 # _GLOBAL_OFFSET_TABLE_
- +4002ec:      00 00 12 90             .long   0x00001290
+  +[0-9a-f]+:  [0-9a-f ]+              .long   0x[0-9a-f]+
 # __tls_get_addr@plt-.LT1
- +4002f0:      ff ff ff d8             .long   0xffffffd8
+  +[0-9a-f]+:  [0-9a-f ]+              .long   0x[0-9a-f]+
 # sG1@tlsgd
+4002f4:      00 00 00 28             .long   0x00000028
 +[0-9a-f]+:  00 00 00 28             .long   0x00000028
 # sG2@tlsgd
+4002f8:      00 00 00 20             .long   0x00000020
 +[0-9a-f]+:  00 00 00 20             .long   0x00000020
 # sg1@tlsgd
+4002fc:      ff ff ff 60             .long   0xffffff60
 +[0-9a-f]+:  ff ff ff 60             .long   0xffffff60
 # sl1@tlsgd
+400300:      ff ff ff 80             .long   0xffffff80
 +[0-9a-f]+:  ff ff ff 80             .long   0xffffff80
 # sh1@tlsgd
+400304:      ff ff ff a0             .long   0xffffffa0
 +[0-9a-f]+:  ff ff ff a0             .long   0xffffffa0
 # sl1@tlsldm
+400308:      00 00 00 00             .long   0x00000000
 +[0-9a-f]+:  00 00 00 00             .long   0x00000000
 # sl1@dtpoff
+40030c:      ff ff ff 80             .long   0xffffff80
 +[0-9a-f]+:  ff ff ff 80             .long   0xffffff80
 # sl2@dtpoff
+400310:      ff ff ff 84             .long   0xffffff84
 +[0-9a-f]+:  ff ff ff 84             .long   0xffffff84
 # sh1@tlsldm
+400314:      00 00 00 00             .long   0x00000000
 +[0-9a-f]+:  00 00 00 00             .long   0x00000000
 # sh1@dtpoff
+400318:      ff ff ff a0             .long   0xffffffa0
 +[0-9a-f]+:  ff ff ff a0             .long   0xffffffa0
 # sh2@dtpoff
+40031c:      ff ff ff a4             .long   0xffffffa4
 +[0-9a-f]+:  ff ff ff a4             .long   0xffffffa4
 # sG2@gotntpoff
+400320:      00 00 00 20             .long   0x00000020
 +[0-9a-f]+:  00 00 00 20             .long   0x00000020
 # sg1@gotntpoff
+400324:      ff ff ff 60             .long   0xffffff60
 +[0-9a-f]+:  ff ff ff 60             .long   0xffffff60
 # sl1@gotntpoff
+400328:      ff ff ff 80             .long   0xffffff80
 +[0-9a-f]+:  ff ff ff 80             .long   0xffffff80
 # sh1@gotntpoff
+40032c:      ff ff ff a0             .long   0xffffffa0
 +[0-9a-f]+:  ff ff ff a0             .long   0xffffffa0
 # function prolog
+400330:      18 ef                   lr      %r14,%r15
+400332:      58 c0 d0 00             l       %r12,0\(%r13\)
+400336:      a7 fa ff a0             ahi     %r15,-96
+40033a:      41 cc d0 00             la      %r12,0\(%r12,%r13\)
+40033e:      50 e0 e0 00             st      %r14,0\(%r14\)
 +[0-9a-f]+:  18 ef                   lr      %r14,%r15
 +[0-9a-f]+:  58 c0 d0 00             l       %r12,0\(%r13\)
 +[0-9a-f]+:  a7 fa ff a0             ahi     %r15,-96
 +[0-9a-f]+:  41 cc d0 00             la      %r12,0\(%r12,%r13\)
 +[0-9a-f]+:  50 e0 e0 00             st      %r14,0\(%r14\)
 # Extract TCB and load branch offset
+400342:      b2 4f 00 90             ear     %r9,%a0
+400346:      58 70 d0 04             l       %r7,4\(%r13\)
 +[0-9a-f]+:  b2 4f 00 90             ear     %r9,%a0
 +[0-9a-f]+:  58 70 d0 04             l       %r7,4\(%r13\)
 # GD -> IE because variable is not defined in executable
+40034a:      58 20 d0 08             l       %r2,8\(%r13\)
+40034e:      58 22 c0 00             l       %r2,0\(%r2,%r12\)
+400352:      41 22 90 00             la      %r2,0\(%r2,%r9\)
 +[0-9a-f]+:  58 20 d0 08             l       %r2,8\(%r13\)
 +[0-9a-f]+:  58 22 c0 00             l       %r2,0\(%r2,%r12\)
 +[0-9a-f]+:  41 22 90 00             la      %r2,0\(%r2,%r9\)
 # GD -> IE because variable is not defined in executable where
 # the variable is referenced through IE too
+400356:      58 20 d0 0c             l       %r2,12\(%r13\)
+40035a:      58 22 c0 00             l       %r2,0\(%r2,%r12\)
+40035e:      41 22 90 00             la      %r2,0\(%r2,%r9\)
 +[0-9a-f]+:  58 20 d0 0c             l       %r2,12\(%r13\)
 +[0-9a-f]+:  58 22 c0 00             l       %r2,0\(%r2,%r12\)
 +[0-9a-f]+:  41 22 90 00             la      %r2,0\(%r2,%r9\)
 # GD -> LE with global variable defined in executable
+400362:      58 20 d0 10             l       %r2,16\(%r13\)
+400366:      47 00 00 00             bc      0,0
+40036a:      41 22 90 00             la      %r2,0\(%r2,%r9\)
 +[0-9a-f]+:  58 20 d0 10             l       %r2,16\(%r13\)
 +[0-9a-f]+:  47 00 00 00             bc      0,0
 +[0-9a-f]+:  41 22 90 00             la      %r2,0\(%r2,%r9\)
 # GD -> LE with local variable defined in executable
+40036e:      58 20 d0 14             l       %r2,20\(%r13\)
+400372:      47 00 00 00             bc      0,0
+400376:      41 22 90 00             la      %r2,0\(%r2,%r9\)
 +[0-9a-f]+:  58 20 d0 14             l       %r2,20\(%r13\)
 +[0-9a-f]+:  47 00 00 00             bc      0,0
 +[0-9a-f]+:  41 22 90 00             la      %r2,0\(%r2,%r9\)
 # GD -> LE with hidden variable defined in executable
+40037a:      58 20 d0 18             l       %r2,24\(%r13\)
+40037e:      47 00 00 00             bc      0,0
+400382:      41 22 90 00             la      %r2,0\(%r2,%r9\)
 +[0-9a-f]+:  58 20 d0 18             l       %r2,24\(%r13\)
 +[0-9a-f]+:  47 00 00 00             bc      0,0
 +[0-9a-f]+:  41 22 90 00             la      %r2,0\(%r2,%r9\)
 # LD -> LE
+400386:      58 20 d0 1c             l       %r2,28\(%r13\)
+40038a:      47 00 00 00             bc      0,0
+40038e:      41 32 90 00             la      %r3,0\(%r2,%r9\)
+400392:      58 40 d0 20             l       %r4,32\(%r13\)
+400396:      41 54 30 00             la      %r5,0\(%r4,%r3\)
+40039a:      58 40 d0 24             l       %r4,36\(%r13\)
+40039e:      41 54 30 00             la      %r5,0\(%r4,%r3\)
 +[0-9a-f]+:  58 20 d0 1c             l       %r2,28\(%r13\)
 +[0-9a-f]+:  47 00 00 00             bc      0,0
 +[0-9a-f]+:  41 32 90 00             la      %r3,0\(%r2,%r9\)
 +[0-9a-f]+:  58 40 d0 20             l       %r4,32\(%r13\)
 +[0-9a-f]+:  41 54 30 00             la      %r5,0\(%r4,%r3\)
 +[0-9a-f]+:  58 40 d0 24             l       %r4,36\(%r13\)
 +[0-9a-f]+:  41 54 30 00             la      %r5,0\(%r4,%r3\)
 # LD -> LE against hidden variables
+4003a2:      58 20 d0 28             l       %r2,40\(%r13\)
+4003a6:      47 00 00 00             bc      0,0
+4003aa:      41 32 90 00             la      %r3,0\(%r2,%r9\)
+4003ae:      58 40 d0 2c             l       %r4,44\(%r13\)
+4003b2:      41 54 30 00             la      %r5,0\(%r4,%r3\)
+4003b6:      58 40 d0 30             l       %r4,48\(%r13\)
+4003ba:      41 54 30 00             la      %r5,0\(%r4,%r3\)
 +[0-9a-f]+:  58 20 d0 28             l       %r2,40\(%r13\)
 +[0-9a-f]+:  47 00 00 00             bc      0,0
 +[0-9a-f]+:  41 32 90 00             la      %r3,0\(%r2,%r9\)
 +[0-9a-f]+:  58 40 d0 2c             l       %r4,44\(%r13\)
 +[0-9a-f]+:  41 54 30 00             la      %r5,0\(%r4,%r3\)
 +[0-9a-f]+:  58 40 d0 30             l       %r4,48\(%r13\)
 +[0-9a-f]+:  41 54 30 00             la      %r5,0\(%r4,%r3\)
 # IE against global var
+4003be:      58 30 d0 34             l       %r3,52\(%r13\)
+4003c2:      58 33 c0 00             l       %r3,0\(%r3,%r12\)
+4003c6:      58 33 90 00             l       %r3,0\(%r3,%r9\)
 +[0-9a-f]+:  58 30 d0 34             l       %r3,52\(%r13\)
 +[0-9a-f]+:  58 33 c0 00             l       %r3,0\(%r3,%r12\)
 +[0-9a-f]+:  58 33 90 00             l       %r3,0\(%r3,%r9\)
 # IE -> LE against global var defined in exec
+4003ca:      58 30 d0 38             l       %r3,56\(%r13\)
+4003ce:      18 43                   lr      %r4,%r3
+4003d0:      07 00                   bcr     0,%r0
+4003d2:      41 54 90 00             la      %r5,0\(%r4,%r9\)
 +[0-9a-f]+:  58 30 d0 38             l       %r3,56\(%r13\)
 +[0-9a-f]+:  18 43                   lr      %r4,%r3
 +[0-9a-f]+:  07 00                   bcr     0,%r0
 +[0-9a-f]+:  41 54 90 00             la      %r5,0\(%r4,%r9\)
 # IE -> LE against local var
+4003d6:      58 30 d0 3c             l       %r3,60\(%r13\)
+4003da:      18 43                   lr      %r4,%r3
+4003dc:      07 00                   bcr     0,%r0
+4003de:      41 54 90 00             la      %r5,0\(%r4,%r9\)
 +[0-9a-f]+:  58 30 d0 3c             l       %r3,60\(%r13\)
 +[0-9a-f]+:  18 43                   lr      %r4,%r3
 +[0-9a-f]+:  07 00                   bcr     0,%r0
 +[0-9a-f]+:  41 54 90 00             la      %r5,0\(%r4,%r9\)
 # IE -> LE against hidden var
+4003e2:      58 30 d0 40             l       %r3,64\(%r13\)
+4003e6:      18 43                   lr      %r4,%r3
+4003e8:      07 00                   bcr     0,%r0
+4003ea:      41 54 90 00             la      %r5,0\(%r4,%r9\)
 +[0-9a-f]+:  58 30 d0 40             l       %r3,64\(%r13\)
 +[0-9a-f]+:  18 43                   lr      %r4,%r3
 +[0-9a-f]+:  07 00                   bcr     0,%r0
 +[0-9a-f]+:  41 54 90 00             la      %r5,0\(%r4,%r9\)
 # IE against global var with small got access (no optimization)
+4003ee:      58 30 c0 14             l       %r3,20\(%r12\)
+4003f2:      41 33 90 00             la      %r3,0\(%r3,%r9\)
 +[0-9a-f]+:  58 30 c0 14             l       %r3,20\(%r12\)
 +[0-9a-f]+:  41 33 90 00             la      %r3,0\(%r3,%r9\)
 # IE against global var defined in exec with small got access
 # (no optimization)
+4003f6:      58 30 c0 18             l       %r3,24\(%r12\)
+4003fa:      41 33 90 00             la      %r3,0\(%r3,%r9\)
 +[0-9a-f]+:  58 30 c0 18             l       %r3,24\(%r12\)
 +[0-9a-f]+:  41 33 90 00             la      %r3,0\(%r3,%r9\)
 # IE against local var with small got access (no optimization)
+4003fe:      58 30 c0 10             l       %r3,16\(%r12\)
+400402:      41 33 90 00             la      %r3,0\(%r3,%r9\)
 +[0-9a-f]+:  58 30 c0 10             l       %r3,16\(%r12\)
 +[0-9a-f]+:  41 33 90 00             la      %r3,0\(%r3,%r9\)
 # IE against hidden var with small got access (no optimization)
+400406:      58 30 c0 1c             l       %r3,28\(%r12\)
+40040a:      41 33 90 00             la      %r3,0\(%r3,%r9\)
 +[0-9a-f]+:  58 30 c0 1c             l       %r3,28\(%r12\)
 +[0-9a-f]+:  41 33 90 00             la      %r3,0\(%r3,%r9\)
 # function epilog
- +40040e:      98 6e f0 78             lm      %r6,%r14,120\(%r15\)
- +400412:      07 fe                   br      %r14
+  +[0-9a-f]+:  98 6e f0 78             lm      %r6,%r14,120\(%r15\)
+  +[0-9a-f]+:  07 fe                   br      %r14
+  +[0-9a-f]+:  07 07                   bcr     0,%r7
+  +[0-9a-f]+:  07 07                   bcr     0,%r7
+  +[0-9a-f]+:  07 07                   bcr     0,%r7
+  +[0-9a-f]+:  07 07                   bcr     0,%r7
+  +[0-9a-f]+:  07 07                   bcr     0,%r7
+  +[0-9a-f]+:  07 07                   bcr     0,%r7
+  +[0-9a-f]+:  07 07                   bcr     0,%r7
+  +[0-9a-f]+:  07 07                   bcr     0,%r7
 
-0+400414 <_start>:
+0+[0-9a-f]+ <_start>:
 # function prolog
+400414:      90 6e f0 18             stm     %r6,%r14,24\(%r15\)
+400418:      a7 d5 00 0c             bras    %r13,400430 <_start\+0x1c>
 +[0-9a-f]+:  90 6e f0 18             stm     %r6,%r14,24\(%r15\)
 +[0-9a-f]+:  a7 d5 00 0c             bras    %r13,[0-9a-f]+ <_start\+0x1c>
 # sG6@indntpoff
- +40041c:      00 40 15 a0             .long   0x004015a0
+  +[0-9a-f]+:  00 40 15 e4             .long   0x004015e4
 # bg6@indntpoff
+400420:      ff ff ff d4             .long   0xffffffd4
 +[0-9a-f]+:  ff ff ff d4             .long   0xffffffd4
 # bl6@indntpoff
+400424:      ff ff ff f4             .long   0xfffffff4
 +[0-9a-f]+:  ff ff ff f4             .long   0xfffffff4
 # sh6@indntpoff
+400428:      ff ff ff b4             .long   0xffffffb4
 +[0-9a-f]+:  ff ff ff b4             .long   0xffffffb4
 # sg3@indntpoff
+40042c:      ff ff ff 68             .long   0xffffff68
 +[0-9a-f]+:  ff ff ff 68             .long   0xffffff68
 # function prolog
+400430:      18 ef                   lr      %r14,%r15
+400432:      a7 fa ff a0             ahi     %r15,-96
+400436:      50 e0 e0 00             st      %r14,0\(%r14\)
 +[0-9a-f]+:  18 ef                   lr      %r14,%r15
 +[0-9a-f]+:  a7 fa ff a0             ahi     %r15,-96
 +[0-9a-f]+:  50 e0 e0 00             st      %r14,0\(%r14\)
 # Extract TCB
+40043a:      b2 4f 00 90             ear     %r9,%a0
 +[0-9a-f]+:  b2 4f 00 90             ear     %r9,%a0
 # IE against global var
+40043e:      58 30 d0 00             l       %r3,0\(%r13\)
+400442:      58 33 c0 00             l       %r3,0\(%r3,%r12\)
+400446:      41 33 90 00             la      %r3,0\(%r3,%r9\)
 +[0-9a-f]+:  58 30 d0 00             l       %r3,0\(%r13\)
 +[0-9a-f]+:  58 33 c0 00             l       %r3,0\(%r3,%r12\)
 +[0-9a-f]+:  41 33 90 00             la      %r3,0\(%r3,%r9\)
 # IE -> LE against global var defined in exec
+40044a:      58 30 d0 04             l       %r3,4\(%r13\)
+40044e:      18 43                   lr      %r4,%r3
+400450:      07 00                   bcr     0,%r0
+400452:      41 54 90 00             la      %r5,0\(%r4,%r9\)
 +[0-9a-f]+:  58 30 d0 04             l       %r3,4\(%r13\)
 +[0-9a-f]+:  18 43                   lr      %r4,%r3
 +[0-9a-f]+:  07 00                   bcr     0,%r0
 +[0-9a-f]+:  41 54 90 00             la      %r5,0\(%r4,%r9\)
 # IE -> LE against local var
+400456:      58 30 d0 08             l       %r3,8\(%r13\)
+40045a:      18 43                   lr      %r4,%r3
+40045c:      07 00                   bcr     0,%r0
+40045e:      41 54 90 00             la      %r5,0\(%r4,%r9\)
 +[0-9a-f]+:  58 30 d0 08             l       %r3,8\(%r13\)
 +[0-9a-f]+:  18 43                   lr      %r4,%r3
 +[0-9a-f]+:  07 00                   bcr     0,%r0
 +[0-9a-f]+:  41 54 90 00             la      %r5,0\(%r4,%r9\)
 # IE -> LE against hidden but not local var
+400462:      58 30 d0 0c             l       %r3,12\(%r13\)
+400466:      18 43                   lr      %r4,%r3
+400468:      07 00                   bcr     0,%r0
+40046a:      41 54 90 00             la      %r5,0\(%r4,%r9\)
 +[0-9a-f]+:  58 30 d0 0c             l       %r3,12\(%r13\)
 +[0-9a-f]+:  18 43                   lr      %r4,%r3
 +[0-9a-f]+:  07 00                   bcr     0,%r0
 +[0-9a-f]+:  41 54 90 00             la      %r5,0\(%r4,%r9\)
 # LE, global var defined in exec
+40046e:      58 40 d0 10             l       %r4,16\(%r13\)
+400472:      41 54 90 00             la      %r5,0\(%r4,%r9\)
 +[0-9a-f]+:  58 40 d0 10             l       %r4,16\(%r13\)
 +[0-9a-f]+:  41 54 90 00             la      %r5,0\(%r4,%r9\)
 # function epilog
+400476:      98 6e f0 78             lm      %r6,%r14,120\(%r15\)
+40047a:      07 fe                   br      %r14
 +[0-9a-f]+:  98 6e f0 78             lm      %r6,%r14,120\(%r15\)
 +[0-9a-f]+:  07 fe                   br      %r14
index e643b6e..f711f11 100644 (file)
@@ -5,7 +5,7 @@
 #readelf: -Ssrl
 #target: s390-*-*
 
-There are 19 section headers, starting at offset 0x[0-9a-f]+:
+There are 18 section headers, starting at offset 0x[0-9a-f]+:
 
 Section Headers:
   \[Nr\] Name +Type +Addr +Off +Size +ES Flg Lk Inf Al
@@ -17,24 +17,23 @@ Section Headers:
   \[ 5\] .rela.dyn +.*
   \[ 6\] .rela.plt +.*
   \[ 7\] .plt +.*
-  \[ 8\] .text +PROGBITS +0+4002e4 0+2e4 0+198 00 +AX +0 +0 +4
-  \[ 9\] .data +.*
-  \[10\] .tdata +PROGBITS +0+40147c 0+47c 0+60 00 WAT +0 +0 +1
-  \[11\] .tbss +NOBITS +0+4014dc 0+4dc 0+40 00 WAT +0 +0 +1
-  \[12\] .dynamic +DYNAMIC +0+4014dc 0+4dc 0+a0 08 +WA +4 +0 +4
-  \[13\] .got +PROGBITS +0+40157c 0+57c 0+2c 04 +WA +0 +0 +4
-  \[14\] .sbss +.*
-  \[15\] .bss +.*
-  \[16\] .shstrtab +.*
-  \[17\] .symtab +.*
-  \[18\] .strtab +.*
+  \[ 8\] .text +PROGBITS +.*
+  \[ 9\] .tdata +PROGBITS +0+4014c0 0+4c0 0+60 00 WAT +0 +0 +32
+  \[10\] .tbss +NOBITS +0+401520 0+520 0+40 00 WAT +0 +0 +1
+  \[11\] .dynamic +DYNAMIC +0+401520 0+520 0+a0 08 +WA +4 +0 +4
+  \[12\] .got +PROGBITS +0+4015c0 0+5c0 0+2c 04 +WA +0 +0 +4
+  \[13\] .data +.*
+  \[14\] .bss +.*
+  \[15\] .shstrtab +.*
+  \[16\] .symtab +.*
+  \[17\] .strtab +.*
 Key to Flags:
 .*
 .*
 .*
 
 Elf file type is EXEC \(Executable file\)
-Entry point 0x400414
+Entry point 0x[0-9a-f]+
 There are 6 program headers, starting at offset [0-9]+
 
 Program Headers:
@@ -42,10 +41,10 @@ Program Headers:
   PHDR +0x0+34 0x0+400034 0x0+400034 0x0+c0 0x0+c0 R E 0x4
   INTERP +0x0+f4 0x0+4000f4 0x0+4000f4 0x0+11 0x0+11 R +0x1
 .*Requesting program interpreter.*
-  LOAD +0x0+ 0x0+400000 0x0+400000 0x0+47c 0x0+47c R E 0x1000
-  LOAD +0x0+47c 0x0+40147c 0x0+40147c 0x0+12c 0x0+12c RW  0x1000
-  DYNAMIC +0x0+4dc 0x0+4014dc 0x0+4014dc 0x0+a0 0x0+a0 RW  0x4
-  TLS +0x0+47c 0x0+40147c 0x0+40147c 0x0+60 0x0+a0 R +0x1
+  LOAD +0x0+ 0x0+400000 0x0+400000 0x[0-9a-f]+ 0x[0-9a-f]+ R E 0x1000
+  LOAD +0x0+4c0 0x0+4014c0 0x0+4014c0 0x0+12c 0x0+12c RW  0x1000
+  DYNAMIC +0x0+520 0x0+401520 0x0+401520 0x0+a0 0x0+a0 RW  0x4
+  TLS +0x0+4c0 0x0+4014c0 0x0+4014c0 0x0+60 0x0+a0 R +0x20
 
  Section to Segment mapping:
   Segment Sections...
@@ -69,88 +68,87 @@ Relocation section '.rela.plt' at offset 0x[0-9a-f]+ contains 1 entries:
 
 Symbol table '.dynsym' contains 11 entries:
  +Num: +Value  Size Type +Bind +Vis +Ndx Name
- +0: 0+ +0 NOTYPE  LOCAL  DEFAULT  UND 
- +1: 0+ +0 TLS +GLOBAL DEFAULT  UND sG3
- +2: [0-9a-f]+ +0 OBJECT  GLOBAL DEFAULT  ABS _DYNAMIC
- +3: 0+ +0 TLS +GLOBAL DEFAULT  UND sG2
- +4: [0-9a-f]+ +0 FUNC +GLOBAL DEFAULT  UND __tls_get_offset
- +5: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS __bss_start
- +6: 0+ +0 TLS +GLOBAL DEFAULT  UND sG6
- +7: 0+ +0 TLS +GLOBAL DEFAULT  UND sG1
- +8: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS _edata
- +9: [0-9a-f]+ +0 OBJECT  GLOBAL DEFAULT  ABS _GLOBAL_OFFSET_TABLE_
- +10: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS _end
+ +[0-9]+: 0+ +0 NOTYPE  LOCAL  DEFAULT  UND 
+ +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT  UND sG3
+ +[0-9]+: [0-9a-f]+ +0 OBJECT  GLOBAL DEFAULT  ABS _DYNAMIC
+ +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT  UND sG2
+ +[0-9]+: [0-9a-f]+ +0 FUNC +GLOBAL DEFAULT  UND __tls_get_offset
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS __bss_start
+ +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT  UND sG6
+ +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT  UND sG1
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS _edata
+ +[0-9]+: [0-9a-f]+ +0 OBJECT  GLOBAL DEFAULT  ABS _GLOBAL_OFFSET_TABLE_
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS _end
 
-Symbol table '.symtab' contains 71 entries:
+Symbol table '.symtab' contains 70 entries:
  +Num: +Value  Size Type +Bind +Vis +Ndx Name
- +0: 0+ +0 NOTYPE  LOCAL  DEFAULT  UND 
- +1: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +1 
- +2: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +2 
- +3: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +3 
- +4: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +4 
- +5: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +5 
- +6: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +6 
- +7: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +7 
- +8: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +8 
- +9: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +9 
- +10: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +10 
- +11: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +11 
- +12: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +12 
- +13: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +13 
- +14: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +14 
- +15: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +15 
- +16: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +16 
- +17: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +17 
- +18: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +18 
- +19: 0+20 +0 TLS +LOCAL  DEFAULT +10 sl1
- +20: 0+24 +0 TLS +LOCAL  DEFAULT +10 sl2
- +21: 0+28 +0 TLS +LOCAL  DEFAULT +10 sl3
- +22: 0+2c +0 TLS +LOCAL  DEFAULT +10 sl4
- +23: 0+30 +0 TLS +LOCAL  DEFAULT +10 sl5
- +24: 0+34 +0 TLS +LOCAL  DEFAULT +10 sl6
- +25: 0+38 +0 TLS +LOCAL  DEFAULT +10 sl7
- +26: 0+3c +0 TLS +LOCAL  DEFAULT +10 sl8
- +27: 0+80 +0 TLS +LOCAL  DEFAULT +11 bl1
- +28: 0+84 +0 TLS +LOCAL  DEFAULT +11 bl2
- +29: 0+88 +0 TLS +LOCAL  DEFAULT +11 bl3
- +30: 0+8c +0 TLS +LOCAL  DEFAULT +11 bl4
- +31: 0+90 +0 TLS +LOCAL  DEFAULT +11 bl5
- +32: 0+94 +0 TLS +LOCAL  DEFAULT +11 bl6
- +33: 0+98 +0 TLS +LOCAL  DEFAULT +11 bl7
- +34: 0+9c +0 TLS +LOCAL  DEFAULT +11 bl8
- +35: 0+ +0 TLS +GLOBAL DEFAULT  UND sG3
- +36: 0+1c +0 TLS +GLOBAL DEFAULT +10 sg8
- +37: 0+7c +0 TLS +GLOBAL DEFAULT +11 bg8
- +38: 0+74 +0 TLS +GLOBAL DEFAULT +11 bg6
- +39: 0+68 +0 TLS +GLOBAL DEFAULT +11 bg3
- +40: [0-9a-f]+ +0 OBJECT  GLOBAL DEFAULT  ABS _DYNAMIC
- +41: 0+8 +0 TLS +GLOBAL DEFAULT +10 sg3
- +42: 0+48 +0 TLS +GLOBAL HIDDEN +10 sh3
- +43: 0+ +0 TLS +GLOBAL DEFAULT  UND sG2
- +44: 0+c +0 TLS +GLOBAL DEFAULT +10 sg4
- +45: 0+10 +0 TLS +GLOBAL DEFAULT +10 sg5
- +46: 0+70 +0 TLS +GLOBAL DEFAULT +11 bg5
- +47: 0+58 +0 TLS +GLOBAL HIDDEN +10 sh7
- +48: 0+5c +0 TLS +GLOBAL HIDDEN +10 sh8
- +49: [0-9a-f]+ +0 FUNC +GLOBAL DEFAULT  UND __tls_get_offset
- +50: 0+ +0 TLS +GLOBAL DEFAULT +10 sg1
- +51: [0-9a-f]+ +0 FUNC +GLOBAL DEFAULT +8 _start
- +52: 0+4c +0 TLS +GLOBAL HIDDEN +10 sh4
- +53: 0+78 +0 TLS +GLOBAL DEFAULT +11 bg7
- +54: 0+50 +0 TLS +GLOBAL HIDDEN +10 sh5
- +55: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS __bss_start
- +56: 0+ +0 TLS +GLOBAL DEFAULT  UND sG6
- +57: [0-9a-f]+ +0 FUNC +GLOBAL DEFAULT +8 fn2
- +58: 0+4 +0 TLS +GLOBAL DEFAULT +10 sg2
- +59: 0+ +0 TLS +GLOBAL DEFAULT  UND sG1
- +60: 0+40 +0 TLS +GLOBAL HIDDEN +10 sh1
- +61: 0+14 +0 TLS +GLOBAL DEFAULT +10 sg6
- +62: 0+18 +0 TLS +GLOBAL DEFAULT +10 sg7
- +63: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS _edata
- +64: [0-9a-f]+ +0 OBJECT  GLOBAL DEFAULT  ABS _GLOBAL_OFFSET_TABLE_
- +65: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS _end
- +66: 0+44 +0 TLS +GLOBAL HIDDEN +10 sh2
- +67: 0+54 +0 TLS +GLOBAL HIDDEN +10 sh6
- +68: 0+64 +0 TLS +GLOBAL DEFAULT +11 bg2
- +69: 0+60 +0 TLS +GLOBAL DEFAULT +11 bg1
- +70: 0+6c +0 TLS +GLOBAL DEFAULT +11 bg4
+ +[0-9]+: 0+ +0 NOTYPE  LOCAL  DEFAULT  UND 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +1 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +2 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +3 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +4 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +5 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +6 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +7 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +8 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +9 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +10 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +11 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +12 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +13 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +14 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +15 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +16 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +17 
+ +[0-9]+: 0+20 +0 TLS +LOCAL  DEFAULT +9 sl1
+ +[0-9]+: 0+24 +0 TLS +LOCAL  DEFAULT +9 sl2
+ +[0-9]+: 0+28 +0 TLS +LOCAL  DEFAULT +9 sl3
+ +[0-9]+: 0+2c +0 TLS +LOCAL  DEFAULT +9 sl4
+ +[0-9]+: 0+30 +0 TLS +LOCAL  DEFAULT +9 sl5
+ +[0-9]+: 0+34 +0 TLS +LOCAL  DEFAULT +9 sl6
+ +[0-9]+: 0+38 +0 TLS +LOCAL  DEFAULT +9 sl7
+ +[0-9]+: 0+3c +0 TLS +LOCAL  DEFAULT +9 sl8
+ +[0-9]+: 0+80 +0 TLS +LOCAL  DEFAULT +10 bl1
+ +[0-9]+: 0+84 +0 TLS +LOCAL  DEFAULT +10 bl2
+ +[0-9]+: 0+88 +0 TLS +LOCAL  DEFAULT +10 bl3
+ +[0-9]+: 0+8c +0 TLS +LOCAL  DEFAULT +10 bl4
+ +[0-9]+: 0+90 +0 TLS +LOCAL  DEFAULT +10 bl5
+ +[0-9]+: 0+94 +0 TLS +LOCAL  DEFAULT +10 bl6
+ +[0-9]+: 0+98 +0 TLS +LOCAL  DEFAULT +10 bl7
+ +[0-9]+: 0+9c +0 TLS +LOCAL  DEFAULT +10 bl8
+ +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT  UND sG3
+ +[0-9]+: 0+1c +0 TLS +GLOBAL DEFAULT +9 sg8
+ +[0-9]+: 0+7c +0 TLS +GLOBAL DEFAULT +10 bg8
+ +[0-9]+: 0+74 +0 TLS +GLOBAL DEFAULT +10 bg6
+ +[0-9]+: 0+68 +0 TLS +GLOBAL DEFAULT +10 bg3
+ +[0-9]+: [0-9a-f]+ +0 OBJECT  GLOBAL DEFAULT  ABS _DYNAMIC
+ +[0-9]+: 0+8 +0 TLS +GLOBAL DEFAULT +9 sg3
+ +[0-9]+: 0+48 +0 TLS +GLOBAL HIDDEN +9 sh3
+ +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT  UND sG2
+ +[0-9]+: 0+c +0 TLS +GLOBAL DEFAULT +9 sg4
+ +[0-9]+: 0+10 +0 TLS +GLOBAL DEFAULT +9 sg5
+ +[0-9]+: 0+70 +0 TLS +GLOBAL DEFAULT +10 bg5
+ +[0-9]+: 0+58 +0 TLS +GLOBAL HIDDEN +9 sh7
+ +[0-9]+: 0+5c +0 TLS +GLOBAL HIDDEN +9 sh8
+ +[0-9]+: [0-9a-f]+ +0 FUNC +GLOBAL DEFAULT  UND __tls_get_offset
+ +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT +9 sg1
+ +[0-9]+: [0-9a-f]+ +0 FUNC +GLOBAL DEFAULT +8 _start
+ +[0-9]+: 0+4c +0 TLS +GLOBAL HIDDEN +9 sh4
+ +[0-9]+: 0+78 +0 TLS +GLOBAL DEFAULT +10 bg7
+ +[0-9]+: 0+50 +0 TLS +GLOBAL HIDDEN +9 sh5
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS __bss_start
+ +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT  UND sG6
+ +[0-9]+: [0-9a-f]+ +0 FUNC +GLOBAL DEFAULT +8 fn2
+ +[0-9]+: 0+4 +0 TLS +GLOBAL DEFAULT +9 sg2
+ +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT  UND sG1
+ +[0-9]+: 0+40 +0 TLS +GLOBAL HIDDEN +9 sh1
+ +[0-9]+: 0+14 +0 TLS +GLOBAL DEFAULT +9 sg6
+ +[0-9]+: 0+18 +0 TLS +GLOBAL DEFAULT +9 sg7
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS _edata
+ +[0-9]+: [0-9a-f]+ +0 OBJECT  GLOBAL DEFAULT  ABS _GLOBAL_OFFSET_TABLE_
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS _end
+ +[0-9]+: 0+44 +0 TLS +GLOBAL HIDDEN +9 sh2
+ +[0-9]+: 0+54 +0 TLS +GLOBAL HIDDEN +9 sh6
+ +[0-9]+: 0+64 +0 TLS +GLOBAL DEFAULT +10 bg2
+ +[0-9]+: 0+60 +0 TLS +GLOBAL DEFAULT +10 bg1
+ +[0-9]+: 0+6c +0 TLS +GLOBAL DEFAULT +10 bg4
index fd48420..b1ecbf0 100644 (file)
@@ -8,6 +8,6 @@
 .*:     file format elf32-s390
 
 Contents of section .got:
40157c [0-9a-f]+ 00000000 00000000 [0-9a-f]+  .@...........@..
40158c ffffff88 00000000 ffffff68 ffffffa8  ...........h....
40159c 00000000 00000000 00000000           ............    
[0-9a-f]+ [0-9a-f]+ 00000000 00000000 [0-9a-f]+  .@...........@..
[0-9a-f]+ ffffff88 00000000 ffffff68 ffffffa8  ...........h....
[0-9a-f]+ 00000000 00000000 00000000           ............    
index 6ecd9c7..f0a61b8 100644 (file)
@@ -8,9 +8,9 @@
 .*:     file format elf32-s390
 
 Contents of section .tdata:
40147c 00000011 00000012 00000013 00000014  .*
40148c 00000015 00000016 00000017 00000018  .*
40149c 00000041 00000042 00000043 00000044  .*
4014ac 00000045 00000046 00000047 00000048  .*
4014bc 00000101 00000102 00000103 00000104  .*
4014cc 00000105 00000106 00000107 00000108  .*
[0-9a-f]+ 00000011 00000012 00000013 00000014  .*
[0-9a-f]+ 00000015 00000016 00000017 00000018  .*
[0-9a-f]+ 00000041 00000042 00000043 00000044  .*
[0-9a-f]+ 00000045 00000046 00000047 00000048  .*
[0-9a-f]+ 00000101 00000102 00000103 00000104  .*
[0-9a-f]+ 00000105 00000106 00000107 00000108  .*
index ca13d73..664991a 100644 (file)
 
 Disassembly of section .text:
 
-0+80000458 <fn2>:
+0+[0-9a-f]+ <fn2>:
 # function prolog
- +80000458:    eb 6e f0 30 00 24       stmg    %r6,%r14,48\(%r15\)
- +8000045e:    a7 d5 00 3e             bras    %r13,800004da <fn2\+0x82>
+ +[0-9a-f]+:   eb 6e f0 30 00 24       stmg    %r6,%r14,48\(%r15\)
+ +[0-9a-f]+:   a7 d5 00 3e             bras    %r13,[0-9a-f]+ <fn2\+0x82>
 # sG1@tlsgd
- +80000462:    00 00 00 00             .long   0x00000000
- +80000466:    00 00 00 60             .long   0x00000060
+ +[0-9a-f]+:   00 00 00 00             .long   0x00000000
+ +[0-9a-f]+:   00 00 00 60             .long   0x00000060
 # sG2@tlsgd
- +8000046a:    00 00 00 00             .long   0x00000000
- +8000046e:    00 00 00 48             .long   0x00000048
+ +[0-9a-f]+:   00 00 00 00             .long   0x00000000
+ +[0-9a-f]+:   00 00 00 48             .long   0x00000048
 # sg1@tlsgd
- +80000472:    ff ff ff ff             .long   0xffffffff
- +80000476:    ff ff ff 60             .long   0xffffff60
+ +[0-9a-f]+:   ff ff ff ff             .long   0xffffffff
+ +[0-9a-f]+:   ff ff ff 60             .long   0xffffff60
 # sl1@tlsgd
- +8000047a:    ff ff ff ff             .long   0xffffffff
- +8000047e:    ff ff ff 80             .long   0xffffff80
+ +[0-9a-f]+:   ff ff ff ff             .long   0xffffffff
+ +[0-9a-f]+:   ff ff ff 80             .long   0xffffff80
 # sh1@tlsgd
- +80000482:    ff ff ff ff             .long   0xffffffff
- +80000486:    ff ff ff a0             .long   0xffffffa0
+ +[0-9a-f]+:   ff ff ff ff             .long   0xffffffff
+ +[0-9a-f]+:   ff ff ff a0             .long   0xffffffa0
 # sl1@tlsldm
- +8000048a:    00 00 00 00             .long   0x00000000
- +8000048e:    00 00 00 00             .long   0x00000000
+ +[0-9a-f]+:   00 00 00 00             .long   0x00000000
+ +[0-9a-f]+:   00 00 00 00             .long   0x00000000
 # sl1@dtpoff
- +80000492:    ff ff ff ff             .long   0xffffffff
- +80000496:    ff ff ff 80             .long   0xffffff80
+ +[0-9a-f]+:   ff ff ff ff             .long   0xffffffff
+ +[0-9a-f]+:   ff ff ff 80             .long   0xffffff80
 # sl2@dtpoff
- +8000049a:    ff ff ff ff             .long   0xffffffff
- +8000049e:    ff ff ff 84             .long   0xffffff84
+ +[0-9a-f]+:   ff ff ff ff             .long   0xffffffff
+ +[0-9a-f]+:   ff ff ff 84             .long   0xffffff84
 # sh1@tlsldm
- +800004a2:    00 00 00 00             .long   0x00000000
- +800004a6:    00 00 00 00             .long   0x00000000
+ +[0-9a-f]+:   00 00 00 00             .long   0x00000000
+ +[0-9a-f]+:   00 00 00 00             .long   0x00000000
 # sh1@dtpoff
- +800004aa:    ff ff ff ff             .long   0xffffffff
- +800004ae:    ff ff ff a0             .long   0xffffffa0
+ +[0-9a-f]+:   ff ff ff ff             .long   0xffffffff
+ +[0-9a-f]+:   ff ff ff a0             .long   0xffffffa0
 # sh2@dtpoff
- +800004b2:    ff ff ff ff             .long   0xffffffff
- +800004b6:    ff ff ff a4             .long   0xffffffa4
+ +[0-9a-f]+:   ff ff ff ff             .long   0xffffffff
+ +[0-9a-f]+:   ff ff ff a4             .long   0xffffffa4
 # sG2@gotntpoff
- +800004ba:    00 00 00 00             .long   0x00000000
- +800004be:    00 00 00 48             .long   0x00000048
+ +[0-9a-f]+:   00 00 00 00             .long   0x00000000
+ +[0-9a-f]+:   00 00 00 48             .long   0x00000048
 # sg1@gotntpoff
- +800004c2:    ff ff ff ff             .long   0xffffffff
- +800004c6:    ff ff ff 60             .long   0xffffff60
+ +[0-9a-f]+:   ff ff ff ff             .long   0xffffffff
+ +[0-9a-f]+:   ff ff ff 60             .long   0xffffff60
 # sl1@gotntpoff
- +800004ca:    ff ff ff ff             .long   0xffffffff
- +800004ce:    ff ff ff 80             .long   0xffffff80
+ +[0-9a-f]+:   ff ff ff ff             .long   0xffffffff
+ +[0-9a-f]+:   ff ff ff 80             .long   0xffffff80
 # sh1@gotntpoff
- +800004d2:    ff ff ff ff             .long   0xffffffff
- +800004d6:    ff ff ff a0             .long   0xffffffa0
+ +[0-9a-f]+:   ff ff ff ff             .long   0xffffffff
+ +[0-9a-f]+:   ff ff ff a0             .long   0xffffffa0
 # function prolog
- +800004da:    b9 04 00 ef             lgr     %r14,%r15
- +800004de:    a7 fb ff 60             aghi    %r15,-160
- +800004e2:    c0 c0 00 00 09 d3       larl    %r12,80001888 <_GLOBAL_OFFSET_TABLE_>
- +800004e8:    e3 e0 e0 00 00 24       stg     %r14,0\(%r14\)
+ +[0-9a-f]+:   b9 04 00 ef             lgr     %r14,%r15
+ +[0-9a-f]+:   a7 fb ff 60             aghi    %r15,-160
+ +[0-9a-f]+:   c0 c0 [0-9a-f ]+        larl    %r12,[0-9a-f]+ <_GLOBAL_OFFSET_TABLE_>
+ +[0-9a-f]+:   e3 e0 e0 00 00 24       stg     %r14,0\(%r14\)
 # extract TCB
- +800004ee:    b2 4f 00 90             ear     %r9,%a0
- +800004f2:    eb 94 00 20 00 0d       sllg    %r9,%r4,32
- +800004f8:    b2 4f 00 91             ear     %r9,%a1
+ +[0-9a-f]+:   b2 4f 00 90             ear     %r9,%a0
+ +[0-9a-f]+:   eb 94 00 20 00 0d       sllg    %r9,%r4,32
+ +[0-9a-f]+:   b2 4f 00 91             ear     %r9,%a1
 # GD -> IE because variable is not defined in executable
- +800004fc:    e3 c0 d0 00 00 04       lg      %r12,0\(%r13\)
- +80000502:    e3 22 c0 00 00 04       lg      %r2,0\(%r2,%r12\)
- +80000508:    41 22 90 00             la      %r2,0\(%r2,%r9\)
+ +[0-9a-f]+:   e3 c0 d0 00 00 04       lg      %r12,0\(%r13\)
+ +[0-9a-f]+:   e3 22 c0 00 00 04       lg      %r2,0\(%r2,%r12\)
+ +[0-9a-f]+:   41 22 90 00             la      %r2,0\(%r2,%r9\)
 # GD -> IE because variable is not defined in executable where
 # the variable is referenced through IE too
- +8000050c:    e3 20 d0 08 00 04       lg      %r2,8\(%r13\)
- +80000512:    e3 22 c0 00 00 04       lg      %r2,0\(%r2,%r12\)
- +80000518:    41 22 90 00             la      %r2,0\(%r2,%r9\)
+ +[0-9a-f]+:   e3 20 d0 08 00 04       lg      %r2,8\(%r13\)
+ +[0-9a-f]+:   e3 22 c0 00 00 04       lg      %r2,0\(%r2,%r12\)
+ +[0-9a-f]+:   41 22 90 00             la      %r2,0\(%r2,%r9\)
 # GD -> LE with global variable defined in executable
- +8000051c:    e3 20 d0 10 00 04       lg      %r2,16\(%r13\)
- +80000522:    c0 04 00 00 00 00       brcl    0,80000522 <fn2\+0xca>
- +80000528:    41 22 90 00             la      %r2,0\(%r2,%r9\)
+ +[0-9a-f]+:   e3 20 d0 10 00 04       lg      %r2,16\(%r13\)
+ +[0-9a-f]+:   c0 04 00 00 00 00       brcl    0,[0-9a-f]+ <fn2\+0xca>
+ +[0-9a-f]+:   41 22 90 00             la      %r2,0\(%r2,%r9\)
 # GD -> LE with local variable defined in executable
- +8000052c:    e3 20 d0 18 00 04       lg      %r2,24\(%r13\)
- +80000532:    c0 04 00 00 00 00       brcl    0,80000532 <fn2\+0xda>
- +80000538:    41 22 90 00             la      %r2,0\(%r2,%r9\)
+ +[0-9a-f]+:   e3 20 d0 18 00 04       lg      %r2,24\(%r13\)
+ +[0-9a-f]+:   c0 04 00 00 00 00       brcl    0,[0-9a-f]+ <fn2\+0xda>
+ +[0-9a-f]+:   41 22 90 00             la      %r2,0\(%r2,%r9\)
 # GD -> LE with hidden variable defined in executable
- +8000053c:    e3 20 d0 20 00 04       lg      %r2,32\(%r13\)
- +80000542:    c0 04 00 00 00 00       brcl    0,80000542 <fn2\+0xea>
- +80000548:    41 22 90 00             la      %r2,0\(%r2,%r9\)
+ +[0-9a-f]+:   e3 20 d0 20 00 04       lg      %r2,32\(%r13\)
+ +[0-9a-f]+:   c0 04 00 00 00 00       brcl    0,[0-9a-f]+ <fn2\+0xea>
+ +[0-9a-f]+:   41 22 90 00             la      %r2,0\(%r2,%r9\)
 # LD -> LE
- +8000054c:    e3 20 d0 28 00 04       lg      %r2,40\(%r13\)
- +80000552:    c0 04 00 00 00 00       brcl    0,80000552 <fn2\+0xfa>
- +80000558:    41 32 90 00             la      %r3,0\(%r2,%r9\)
- +8000055c:    e3 40 d0 30 00 04       lg      %r4,48\(%r13\)
- +80000562:    41 54 30 00             la      %r5,0\(%r4,%r3\)
- +80000566:    e3 40 d0 38 00 04       lg      %r4,56\(%r13\)
- +8000056c:    41 54 30 00             la      %r5,0\(%r4,%r3\)
- +80000570:    e3 20 d0 40 00 04       lg      %r2,64\(%r13\)
- +80000576:    c0 04 00 00 00 00       brcl    0,80000576 <fn2\+0x11e>
- +8000057c:    41 32 90 00             la      %r3,0\(%r2,%r9\)
- +80000580:    e3 40 d0 48 00 04       lg      %r4,72\(%r13\)
- +80000586:    41 54 30 00             la      %r5,0\(%r4,%r3\)
- +8000058a:    e3 40 d0 50 00 04       lg      %r4,80\(%r13\)
- +80000590:    41 54 30 00             la      %r5,0\(%r4,%r3\)
+ +[0-9a-f]+:   e3 20 d0 28 00 04       lg      %r2,40\(%r13\)
+ +[0-9a-f]+:   c0 04 00 00 00 00       brcl    0,[0-9a-f]+ <fn2\+0xfa>
+ +[0-9a-f]+:   41 32 90 00             la      %r3,0\(%r2,%r9\)
+ +[0-9a-f]+:   e3 40 d0 30 00 04       lg      %r4,48\(%r13\)
+ +[0-9a-f]+:   41 54 30 00             la      %r5,0\(%r4,%r3\)
+ +[0-9a-f]+:   e3 40 d0 38 00 04       lg      %r4,56\(%r13\)
+ +[0-9a-f]+:   41 54 30 00             la      %r5,0\(%r4,%r3\)
+ +[0-9a-f]+:   e3 20 d0 40 00 04       lg      %r2,64\(%r13\)
+ +[0-9a-f]+:   c0 04 00 00 00 00       brcl    0,[0-9a-f]+ <fn2\+0x11e>
+ +[0-9a-f]+:   41 32 90 00             la      %r3,0\(%r2,%r9\)
+ +[0-9a-f]+:   e3 40 d0 48 00 04       lg      %r4,72\(%r13\)
+ +[0-9a-f]+:   41 54 30 00             la      %r5,0\(%r4,%r3\)
+ +[0-9a-f]+:   e3 40 d0 50 00 04       lg      %r4,80\(%r13\)
+ +[0-9a-f]+:   41 54 30 00             la      %r5,0\(%r4,%r3\)
 # IE against global var
- +80000594:    e3 30 d0 58 00 04       lg      %r3,88\(%r13\)
- +8000059a:    e3 33 c0 00 00 04       lg      %r3,0\(%r3,%r12\)
- +800005a0:    41 33 90 00             la      %r3,0\(%r3,%r9\)
+ +[0-9a-f]+:   e3 30 d0 58 00 04       lg      %r3,88\(%r13\)
+ +[0-9a-f]+:   e3 33 c0 00 00 04       lg      %r3,0\(%r3,%r12\)
+ +[0-9a-f]+:   41 33 90 00             la      %r3,0\(%r3,%r9\)
 # IE -> LE against global var defined in exec
- +800005a4:    e3 30 d0 60 00 04       lg      %r3,96\(%r13\)
- +800005aa:    eb 43 00 00 00 0d       sllg    %r4,%r3,0
- +800005b0:    41 54 90 00             la      %r5,0\(%r4,%r9\)
+ +[0-9a-f]+:   e3 30 d0 60 00 04       lg      %r3,96\(%r13\)
+ +[0-9a-f]+:   eb 43 00 00 00 0d       sllg    %r4,%r3,0
+ +[0-9a-f]+:   41 54 90 00             la      %r5,0\(%r4,%r9\)
 # IE -> LE against local var
- +800005b4:    e3 30 d0 68 00 04       lg      %r3,104\(%r13\)
- +800005ba:    eb 43 00 00 00 0d       sllg    %r4,%r3,0
- +800005c0:    41 54 90 00             la      %r5,0\(%r4,%r9\)
+ +[0-9a-f]+:   e3 30 d0 68 00 04       lg      %r3,104\(%r13\)
+ +[0-9a-f]+:   eb 43 00 00 00 0d       sllg    %r4,%r3,0
+ +[0-9a-f]+:   41 54 90 00             la      %r5,0\(%r4,%r9\)
 # IE -> LE against hidden var
- +800005c4:    e3 30 d0 70 00 04       lg      %r3,112\(%r13\)
- +800005ca:    eb 43 00 00 00 0d       sllg    %r4,%r3,0
- +800005d0:    41 54 90 00             la      %r5,0\(%r4,%r9\)
+ +[0-9a-f]+:   e3 30 d0 70 00 04       lg      %r3,112\(%r13\)
+ +[0-9a-f]+:   eb 43 00 00 00 0d       sllg    %r4,%r3,0
+ +[0-9a-f]+:   41 54 90 00             la      %r5,0\(%r4,%r9\)
 # IE against global var with larl got access
- +800005d4:    c0 30 00 00 09 6e       larl    %r3,800018b0 <\_GLOBAL\_OFFSET\_TABLE\_\+0x28>
- +800005da:    e3 33 c0 00 00 04       lg      %r3,0\(%r3,%r12\)
- +800005e0:    41 33 90 00             la      %r3,0\(%r3,%r9\)
+ +[0-9a-f]+:   c0 30 [0-9a-f ]+        larl    %r3,[0-9a-f]+ <_GLOBAL_OFFSET_TABLE_\+0x28>
+ +[0-9a-f]+:   e3 33 c0 00 00 04       lg      %r3,0\(%r3,%r12\)
+ +[0-9a-f]+:   41 33 90 00             la      %r3,0\(%r3,%r9\)
 # IE against global var defined in exec with larl got access
- +800005e4:    c0 30 00 00 09 6e       larl    %r3,800018c0 <\_GLOBAL\_OFFSET\_TABLE\_\+0x38>
- +800005ea:    eb 43 00 00 00 0d       sllg    %r4,%r3,0
- +800005f0:    41 54 90 00             la      %r5,0\(%r4,%r9\)
+ +[0-9a-f]+:   c0 30 [0-9a-f ]+        larl    %r3,[0-9a-f]+ <_GLOBAL_OFFSET_TABLE_\+0x38>
+ +[0-9a-f]+:   eb 43 00 00 00 0d       sllg    %r4,%r3,0
+ +[0-9a-f]+:   41 54 90 00             la      %r5,0\(%r4,%r9\)
 # IE against local var with larl got access
- +800005f4:    c0 30 00 00 09 5a       larl    %r3,800018a8 <\_GLOBAL\_OFFSET\_TABLE\_\+0x20>
- +800005fa:    eb 43 00 00 00 0d       sllg    %r4,%r3,0
- +80000600:    41 54 90 00             la      %r5,0\(%r4,%r9\)
+ +[0-9a-f]+:   c0 30 [0-9a-f ]+        larl    %r3,[0-9a-f]+ <_GLOBAL_OFFSET_TABLE_\+0x20>
+ +[0-9a-f]+:   eb 43 00 00 00 0d       sllg    %r4,%r3,0
+ +[0-9a-f]+:   41 54 90 00             la      %r5,0\(%r4,%r9\)
 # IE against hidden var with larl got access
- +80000604:    c0 30 00 00 09 62       larl    %r3,800018c8 <\_GLOBAL\_OFFSET\_TABLE\_\+0x40>
- +8000060a:    eb 43 00 00 00 0d       sllg    %r4,%r3,0
- +80000610:    41 54 90 00             la      %r5,0\(%r4,%r9\)
+ +[0-9a-f]+:   c0 30 [0-9a-f ]+        larl    %r3,[0-9a-f]+ <_GLOBAL_OFFSET_TABLE_\+0x40>
+ +[0-9a-f]+:   eb 43 00 00 00 0d       sllg    %r4,%r3,0
+ +[0-9a-f]+:   41 54 90 00             la      %r5,0\(%r4,%r9\)
 # IE against global var with small got access (no optimization)
- +80000614:    e3 30 c0 28 00 04       lg      %r3,40\(%r12\)
- +8000061a:    41 33 90 00             la      %r3,0\(%r3,%r9\)
+ +[0-9a-f]+:   e3 30 c0 28 00 04       lg      %r3,40\(%r12\)
+ +[0-9a-f]+:   41 33 90 00             la      %r3,0\(%r3,%r9\)
 # IE against global var defined in exec with small got access
 # (no optimization)
- +8000061e:    e3 30 c0 38 00 04       lg      %r3,56\(%r12\)
- +80000624:    41 33 90 00             la      %r3,0\(%r3,%r9\)
+ +[0-9a-f]+:   e3 30 c0 38 00 04       lg      %r3,56\(%r12\)
+ +[0-9a-f]+:   41 33 90 00             la      %r3,0\(%r3,%r9\)
 # IE against local var with small got access (no optimization)
- +80000628:    e3 30 c0 20 00 04       lg      %r3,32\(%r12\)
- +8000062e:    41 33 90 00             la      %r3,0\(%r3,%r9\)
+ +[0-9a-f]+:   e3 30 c0 20 00 04       lg      %r3,32\(%r12\)
+ +[0-9a-f]+:   41 33 90 00             la      %r3,0\(%r3,%r9\)
 # IE against hidden var with small got access (no optimization)
- +80000632:    e3 30 c0 40 00 04       lg      %r3,64\(%r12\)
- +80000638:    41 33 90 00             la      %r3,0\(%r3,%r9\)
+ +[0-9a-f]+:   e3 30 c0 40 00 04       lg      %r3,64\(%r12\)
+ +[0-9a-f]+:   41 33 90 00             la      %r3,0\(%r3,%r9\)
 # function epilog
- +8000063c:    eb 6e f0 d0 00 04       lmg     %r6,%r14,208\(%r15\)
- +80000642:    07 fe                   br      %r14
+ +[0-9a-f]+:   eb 6e f0 d0 00 04       lmg     %r6,%r14,208\(%r15\)
+ +[0-9a-f]+:   07 fe                   br      %r14
+ +[0-9a-f]+:   07 07                   bcr     0,%r7
+ +[0-9a-f]+:   07 07                   bcr     0,%r7
+ +[0-9a-f]+:   07 07                   bcr     0,%r7
+ +[0-9a-f]+:   07 07                   bcr     0,%r7
+ +[0-9a-f]+:   07 07                   bcr     0,%r7
+ +[0-9a-f]+:   07 07                   bcr     0,%r7
+ +[0-9a-f]+:   07 07                   bcr     0,%r7
+ +[0-9a-f]+:   07 07                   bcr     0,%r7
+ +[0-9a-f]+:   07 07                   bcr     0,%r7
+ +[0-9a-f]+:   07 07                   bcr     0,%r7
 
-0+80000644 <_start>:
+0+[0-9a-f]+ <_start>:
 # function prolog
- +80000644:    90 6e f0 18             stm     %r6,%r14,24\(%r15\)
- +80000648:    a7 d5 00 16             bras    %r13,80000674 <_start\+0x30>
+ +[0-9a-f]+:   90 6e f0 18             stm     %r6,%r14,24\(%r15\)
+ +[0-9a-f]+:   a7 d5 00 16             bras    %r13,[0-9a-f]+ <_start\+0x30>
 # sG6@indntpoff
- +8000064c:    00 00 00 00             .long   0x00000000
- +80000650:    80 00 18 e0             ssm     2272\(%r1\)
+ +[0-9a-f]+:   00 00 00 00             .long   0x00000000
+ +[0-9a-f]+:   80 00 [0-9a-f ]+        ssm     [0-9]+\(%r1\)
 # bg6@indntpoff
- +80000654:    ff ff ff ff             .long   0xffffffff
- +80000658:    ff ff ff d4             .long   0xffffffd4
+ +[0-9a-f]+:   ff ff ff ff             .long   0xffffffff
+ +[0-9a-f]+:   ff ff ff d4             .long   0xffffffd4
 # bl6@indntpoff
- +8000065c:    ff ff ff ff             .long   0xffffffff
- +80000660:    ff ff ff f4             .long   0xfffffff4
+ +[0-9a-f]+:   ff ff ff ff             .long   0xffffffff
+ +[0-9a-f]+:   ff ff ff f4             .long   0xfffffff4
 # sh6@indntpoff
- +80000664:    ff ff ff ff             .long   0xffffffff
- +80000668:    ff ff ff b4             .long   0xffffffb4
+ +[0-9a-f]+:   ff ff ff ff             .long   0xffffffff
+ +[0-9a-f]+:   ff ff ff b4             .long   0xffffffb4
 # sg3@indntpoff
- +8000066c:    ff ff ff ff             .long   0xffffffff
- +80000670:    ff ff ff 68             .long   0xffffff68
+ +[0-9a-f]+:   ff ff ff ff             .long   0xffffffff
+ +[0-9a-f]+:   ff ff ff 68             .long   0xffffff68
 # function prolog
- +80000674:    b9 04 00 ef             lgr     %r14,%r15
- +80000678:    a7 fb ff 60             aghi    %r15,-160
- +8000067c:    e3 e0 e0 00 00 24       stg     %r14,0\(%r14\)
+ +[0-9a-f]+:   b9 04 00 ef             lgr     %r14,%r15
+ +[0-9a-f]+:   a7 fb ff 60             aghi    %r15,-160
+ +[0-9a-f]+:   e3 e0 e0 00 00 24       stg     %r14,0\(%r14\)
 # extract TCB
- +80000682:    b2 4f 00 90             ear     %r9,%a0
- +80000686:    eb 94 00 20 00 0d       sllg    %r9,%r4,32
- +8000068c:    b2 4f 00 91             ear     %r9,%a1
+ +[0-9a-f]+:   b2 4f 00 90             ear     %r9,%a0
+ +[0-9a-f]+:   eb 94 00 20 00 0d       sllg    %r9,%r4,32
+ +[0-9a-f]+:   b2 4f 00 91             ear     %r9,%a1
 # IE against global var
- +80000690:    e3 30 d0 00 00 04       lg      %r3,0\(%r13\)
- +80000696:    e3 33 c0 00 00 04       lg      %r3,0\(%r3,%r12\)
- +8000069c:    41 33 90 00             la      %r3,0\(%r3,%r9\)
+ +[0-9a-f]+:   e3 30 d0 00 00 04       lg      %r3,0\(%r13\)
+ +[0-9a-f]+:   e3 33 c0 00 00 04       lg      %r3,0\(%r3,%r12\)
+ +[0-9a-f]+:   41 33 90 00             la      %r3,0\(%r3,%r9\)
 # IE -> LE against global var defined in exec
- +800006a0:    e3 30 d0 08 00 04       lg      %r3,8\(%r13\)
- +800006a6:    eb 43 00 00 00 0d       sllg    %r4,%r3,0
- +800006ac:    41 54 90 00             la      %r5,0\(%r4,%r9\)
+ +[0-9a-f]+:   e3 30 d0 08 00 04       lg      %r3,8\(%r13\)
+ +[0-9a-f]+:   eb 43 00 00 00 0d       sllg    %r4,%r3,0
+ +[0-9a-f]+:   41 54 90 00             la      %r5,0\(%r4,%r9\)
 # IE -> LE against local var
- +800006b0:    e3 30 d0 10 00 04       lg      %r3,16\(%r13\)
- +800006b6:    eb 43 00 00 00 0d       sllg    %r4,%r3,0
- +800006bc:    41 54 90 00             la      %r5,0\(%r4,%r9\)
+ +[0-9a-f]+:   e3 30 d0 10 00 04       lg      %r3,16\(%r13\)
+ +[0-9a-f]+:   eb 43 00 00 00 0d       sllg    %r4,%r3,0
+ +[0-9a-f]+:   41 54 90 00             la      %r5,0\(%r4,%r9\)
 # IE -> LE against hidden but not local var
- +800006c0:    e3 30 d0 18 00 04       lg      %r3,24\(%r13\)
- +800006c6:    eb 43 00 00 00 0d       sllg    %r4,%r3,0
- +800006cc:    41 54 90 00             la      %r5,0\(%r4,%r9\)
+ +[0-9a-f]+:   e3 30 d0 18 00 04       lg      %r3,24\(%r13\)
+ +[0-9a-f]+:   eb 43 00 00 00 0d       sllg    %r4,%r3,0
+ +[0-9a-f]+:   41 54 90 00             la      %r5,0\(%r4,%r9\)
 # LE, global var defined in exec
- +800006d0:    e3 40 d0 20 00 04       lg      %r4,32\(%r13\)
- +800006d6:    41 54 90 00             la      %r5,0\(%r4,%r9\)
+ +[0-9a-f]+:   e3 40 d0 20 00 04       lg      %r4,32\(%r13\)
+ +[0-9a-f]+:   41 54 90 00             la      %r5,0\(%r4,%r9\)
 # function epilog
- +800006da:    eb 6e f0 d0 00 04       lmg     %r6,%r14,208\(%r15\)
- +800006e0:    07 fe                   br      %r14
- +800006e2:    07 07                   bcr     0,%r7
+ +[0-9a-f]+:   eb 6e f0 d0 00 04       lmg     %r6,%r14,208\(%r15\)
+ +[0-9a-f]+:   07 fe                   br      %r14
+ +[0-9a-f]+:   07 07                   bcr     0,%r7
index b9ded2b..42515f0 100644 (file)
@@ -5,7 +5,7 @@
 #readelf: -Ssrl
 #target: s390x-*-*
 
-There are 19 section headers, starting at offset 0x[0-9a-f]+:
+There are 18 section headers, starting at offset 0x[0-9a-f]+:
 
 Section Headers:
   \[Nr\] Name +Type +Address +Off +Size +ES Flg Lk Inf Al
@@ -17,24 +17,23 @@ Section Headers:
   \[ 5\] .rela.dyn +.*
   \[ 6\] .rela.plt +.*
   \[ 7\] .plt +.*
-  \[ 8\] .text +PROGBITS +0+80000458 0+458 0+28c 00 +AX +0 +0 +4
-  \[ 9\] .data +.*
-  \[10\] .tdata +PROGBITS +0+800016e8 0+6e8 0+60 00 WAT +0 +0 +1
-  \[11\] .tbss +NOBITS +0+80001748 0+748 0+40 00 WAT +0 +0 +1
-  \[12\] .dynamic +DYNAMIC +0+80001748 0+748 0+140 10 +WA +4 +0 +8
-  \[13\] .got +PROGBITS +0+80001888 0+888 0+78 08 +WA +0 +0 +8
-  \[14\] .sbss +.*
-  \[15\] .bss +.*
-  \[16\] .shstrtab +.*
-  \[17\] .symtab +.*
-  \[18\] .strtab +.*
+  \[ 8\] .text +PROGBITS +.*
+  \[ 9\] .tdata +PROGBITS +0+80001720 0+720 0+60 00 WAT +0 +0 +32
+  \[10\] .tbss +NOBITS +0+80001780 0+780 0+40 00 WAT +0 +0 +1
+  \[11\] .dynamic +DYNAMIC +0+80001780 0+780 0+140 10 +WA +4 +0 +8
+  \[12\] .got +PROGBITS +0+800018c0 0+8c0 0+78 08 +WA +0 +0 +8
+  \[13\] .data +.*
+  \[14\] .bss +.*
+  \[15\] .shstrtab +.*
+  \[16\] .symtab +.*
+  \[17\] .strtab +.*
 Key to Flags:
 .*
 .*
 .*
 
 Elf file type is EXEC \(Executable file\)
-Entry point 0x80000644
+Entry point 0x[0-9a-f]+
 There are 6 program headers, starting at offset [0-9]+
 
 Program Headers:
@@ -42,10 +41,10 @@ Program Headers:
   PHDR +0x0+40 0x0+80000040 0x0+80000040 0x0+150 0x0+150 R E 0x8
   INTERP +0x0+190 0x0+80000190 0x0+80000190 0x0+11 0x0+11 R +0x1
 .*Requesting program interpreter.*
-  LOAD +0x0+ 0x0+80000000 0x0+80000000 0x0+6e4 0x0+6e4 R E 0x1000
-  LOAD +0x0+6e8 0x0+800016e8 0x0+800016e8 0x0+218 0x0+218 RW  0x1000
-  DYNAMIC +0x0+748 0x0+80001748 0x0+80001748 0x0+140 0x0+140 RW  0x8
-  TLS +0x0+6e8 0x0+800016e8 0x0+800016e8 0x0+60 0x0+a0 R +0x1
+  LOAD +0x0+ 0x0+80000000 0x0+80000000 0x0+720 0x0+720 R E 0x1000
+  LOAD +0x0+720 0x0+80001720 0x0+80001720 0x0+218 0x0+218 RW  0x1000
+  DYNAMIC +0x0+780 0x0+80001780 0x0+80001780 0x0+140 0x0+140 RW  0x8
+  TLS +0x0+720 0x0+80001720 0x0+80001720 0x0+60 0x0+a0 R +0x20
 
  Section to Segment mapping:
   Segment Sections...
@@ -56,101 +55,100 @@ Program Headers:
    04 +.tbss .dynamic *
    05 +.tdata .tbss *
 
-Relocation section '.rela.dyn' at offset 0x[0-9a-z]+ contains 4 entries:
+Relocation section '.rela.dyn' at offset 0x[0-9a-f]+ contains 4 entries:
  +Offset +Info +Type +Symbol's Value +Symbol's Name \+ Addend
-[0-9a-z]+ +0+10+38 R_390_TLS_TPOFF +0+ sG3 \+ 0
-[0-9a-z]+ +0+30+38 R_390_TLS_TPOFF +0+ sG2 \+ 0
-[0-9a-z]+ +0+60+38 R_390_TLS_TPOFF +0+ sG6 \+ 0
-[0-9a-z]+ +0+70+38 R_390_TLS_TPOFF +0+ sG1 \+ 0
+[0-9a-f]+ +0+10+38 R_390_TLS_TPOFF +0+ sG3 \+ 0
+[0-9a-f]+ +0+30+38 R_390_TLS_TPOFF +0+ sG2 \+ 0
+[0-9a-f]+ +0+60+38 R_390_TLS_TPOFF +0+ sG6 \+ 0
+[0-9a-f]+ +0+70+38 R_390_TLS_TPOFF +0+ sG1 \+ 0
 
 Relocation section '.rela.plt' at offset 0x40+ contains 1 entries:
  +Offset +Info +Type +Symbol's Value +Symbol's Name \+ Addend
-[0-9a-z]+ +0+40+b R_390_JMP_SLOT +0+80+438 __tls_get_offset \+ 0
+[0-9a-f]+ +0+40+b R_390_JMP_SLOT +0+80+438 __tls_get_offset \+ 0
 
 Symbol table '.dynsym' contains 11 entries:
  +Num: +Value +Size Type +Bind +Vis +Ndx Name
- +0: 0+ +0 NOTYPE +LOCAL +DEFAULT +UND 
- +1: 0+ +0 TLS +GLOBAL DEFAULT +UND sG3
- +2: [0-9a-z]+ +0 OBJECT +GLOBAL DEFAULT +ABS _DYNAMIC
- +3: 0+ +0 TLS +GLOBAL DEFAULT +UND sG2
- +4: [0-9a-z]+ +0 FUNC +GLOBAL DEFAULT +UND __tls_get_offset
- +5: [0-9a-z]+ +0 NOTYPE +GLOBAL DEFAULT +ABS __bss_start
- +6: 0+ +0 TLS +GLOBAL DEFAULT +UND sG6
- +7: 0+ +0 TLS +GLOBAL DEFAULT +UND sG1
- +8: [0-9a-z]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _edata
- +9: [0-9a-z]+ +0 OBJECT +GLOBAL DEFAULT +ABS _GLOBAL_OFFSET_TABLE_
- +10: [0-9a-z]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _end
+ +[0-9]+: 0+ +0 NOTYPE +LOCAL +DEFAULT +UND 
+ +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT +UND sG3
+ +[0-9]+: [0-9a-f]+ +0 OBJECT +GLOBAL DEFAULT +ABS _DYNAMIC
+ +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT +UND sG2
+ +[0-9]+: [0-9a-f]+ +0 FUNC +GLOBAL DEFAULT +UND __tls_get_offset
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS __bss_start
+ +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT +UND sG6
+ +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT +UND sG1
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _edata
+ +[0-9]+: [0-9a-f]+ +0 OBJECT +GLOBAL DEFAULT +ABS _GLOBAL_OFFSET_TABLE_
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _end
 
-Symbol table '.symtab' contains 71 entries:
+Symbol table '.symtab' contains 70 entries:
  +Num: +Value +Size Type +Bind +Vis +Ndx Name
- +0: 0+ +0 NOTYPE +LOCAL +DEFAULT +UND 
- +1: [0-9a-z]+ +0 SECTION LOCAL +DEFAULT +1 
- +2: [0-9a-z]+ +0 SECTION LOCAL +DEFAULT +2 
- +3: [0-9a-z]+ +0 SECTION LOCAL +DEFAULT +3 
- +4: [0-9a-z]+ +0 SECTION LOCAL +DEFAULT +4 
- +5: [0-9a-z]+ +0 SECTION LOCAL +DEFAULT +5 
- +6: [0-9a-z]+ +0 SECTION LOCAL +DEFAULT +6 
- +7: [0-9a-z]+ +0 SECTION LOCAL +DEFAULT +7 
- +8: [0-9a-z]+ +0 SECTION LOCAL +DEFAULT +8 
- +9: [0-9a-z]+ +0 SECTION LOCAL +DEFAULT +9 
- +10: [0-9a-z]+ +0 SECTION LOCAL +DEFAULT +10 
- +11: [0-9a-z]+ +0 SECTION LOCAL +DEFAULT +11 
- +12: [0-9a-z]+ +0 SECTION LOCAL +DEFAULT +12 
- +13: [0-9a-z]+ +0 SECTION LOCAL +DEFAULT +13 
- +14: [0-9a-z]+ +0 SECTION LOCAL +DEFAULT +14 
- +15: [0-9a-z]+ +0 SECTION LOCAL +DEFAULT +15 
- +16: [0-9a-z]+ +0 SECTION LOCAL +DEFAULT +16 
- +17: [0-9a-z]+ +0 SECTION LOCAL +DEFAULT +17 
- +18: [0-9a-z]+ +0 SECTION LOCAL +DEFAULT +18 
- +19: 0+20 +0 TLS +LOCAL +DEFAULT +10 sl1
- +20: 0+24 +0 TLS +LOCAL +DEFAULT +10 sl2
- +21: 0+28 +0 TLS +LOCAL +DEFAULT +10 sl3
- +22: 0+2c +0 TLS +LOCAL +DEFAULT +10 sl4
- +23: 0+30 +0 TLS +LOCAL +DEFAULT +10 sl5
- +24: 0+34 +0 TLS +LOCAL +DEFAULT +10 sl6
- +25: 0+38 +0 TLS +LOCAL +DEFAULT +10 sl7
- +26: 0+3c +0 TLS +LOCAL +DEFAULT +10 sl8
- +27: 0+80 +0 TLS +LOCAL +DEFAULT +11 bl1
- +28: 0+84 +0 TLS +LOCAL +DEFAULT +11 bl2
- +29: 0+88 +0 TLS +LOCAL +DEFAULT +11 bl3
- +30: 0+8c +0 TLS +LOCAL +DEFAULT +11 bl4
- +31: 0+90 +0 TLS +LOCAL +DEFAULT +11 bl5
- +32: 0+94 +0 TLS +LOCAL +DEFAULT +11 bl6
- +33: 0+98 +0 TLS +LOCAL +DEFAULT +11 bl7
- +34: 0+9c +0 TLS +LOCAL +DEFAULT +11 bl8
- +35: 0+ +0 TLS +GLOBAL DEFAULT +UND sG3
- +36: 0+1c +0 TLS +GLOBAL DEFAULT +10 sg8
- +37: 0+7c +0 TLS +GLOBAL DEFAULT +11 bg8
- +38: 0+74 +0 TLS +GLOBAL DEFAULT +11 bg6
- +39: 0+68 +0 TLS +GLOBAL DEFAULT +11 bg3
- +40: [0-9a-z]+ +0 OBJECT +GLOBAL DEFAULT +ABS _DYNAMIC
- +41: 0+8 +0 TLS +GLOBAL DEFAULT +10 sg3
- +42: 0+48 +0 TLS +GLOBAL HIDDEN +10 sh3
- +43: 0+ +0 TLS +GLOBAL DEFAULT +UND sG2
- +44: 0+c +0 TLS +GLOBAL DEFAULT +10 sg4
- +45: 0+10 +0 TLS +GLOBAL DEFAULT +10 sg5
- +46: 0+70 +0 TLS +GLOBAL DEFAULT +11 bg5
- +47: 0+58 +0 TLS +GLOBAL HIDDEN +10 sh7
- +48: 0+5c +0 TLS +GLOBAL HIDDEN +10 sh8
- +49: [0-9a-z]+ +0 FUNC +GLOBAL DEFAULT +UND __tls_get_offset
- +50: 0+ +0 TLS +GLOBAL DEFAULT +10 sg1
- +51: [0-9a-z]+ +0 FUNC +GLOBAL DEFAULT +8 _start
- +52: 0+4c +0 TLS +GLOBAL HIDDEN +10 sh4
- +53: 0+78 +0 TLS +GLOBAL DEFAULT +11 bg7
- +54: 0+50 +0 TLS +GLOBAL HIDDEN +10 sh5
- +55: [0-9a-z]+ +0 NOTYPE +GLOBAL DEFAULT +ABS __bss_start
- +56: 0+ +0 TLS +GLOBAL DEFAULT +UND sG6
- +57: [0-9a-z]+ +0 FUNC +GLOBAL DEFAULT +8 fn2
- +58: 0+4 +0 TLS +GLOBAL DEFAULT +10 sg2
- +59: 0+ +0 TLS +GLOBAL DEFAULT +UND sG1
- +60: 0+40 +0 TLS +GLOBAL HIDDEN +10 sh1
- +61: 0+14 +0 TLS +GLOBAL DEFAULT +10 sg6
- +62: 0+18 +0 TLS +GLOBAL DEFAULT +10 sg7
- +63: [0-9a-z]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _edata
- +64: [0-9a-z]+ +0 OBJECT +GLOBAL DEFAULT +ABS _GLOBAL_OFFSET_TABLE_
- +65: 0+80+190+ +0 NOTYPE +GLOBAL DEFAULT +ABS _end
- +66: 0+44 +0 TLS +GLOBAL HIDDEN +10 sh2
- +67: 0+54 +0 TLS +GLOBAL HIDDEN +10 sh6
- +68: 0+64 +0 TLS +GLOBAL DEFAULT +11 bg2
- +69: 0+60 +0 TLS +GLOBAL DEFAULT +11 bg1
- +70: 0+6c +0 TLS +GLOBAL DEFAULT +11 bg4
+ +[0-9]+: 0+ +0 NOTYPE +LOCAL +DEFAULT +UND 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +1 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +2 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +3 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +4 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +5 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +6 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +7 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +8 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +9 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +10 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +11 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +12 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +13 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +14 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +15 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +16 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL +DEFAULT +17 
+ +[0-9]+: 0+20 +0 TLS +LOCAL +DEFAULT +9 sl1
+ +[0-9]+: 0+24 +0 TLS +LOCAL +DEFAULT +9 sl2
+ +[0-9]+: 0+28 +0 TLS +LOCAL +DEFAULT +9 sl3
+ +[0-9]+: 0+2c +0 TLS +LOCAL +DEFAULT +9 sl4
+ +[0-9]+: 0+30 +0 TLS +LOCAL +DEFAULT +9 sl5
+ +[0-9]+: 0+34 +0 TLS +LOCAL +DEFAULT +9 sl6
+ +[0-9]+: 0+38 +0 TLS +LOCAL +DEFAULT +9 sl7
+ +[0-9]+: 0+3c +0 TLS +LOCAL +DEFAULT +9 sl8
+ +[0-9]+: 0+80 +0 TLS +LOCAL +DEFAULT +10 bl1
+ +[0-9]+: 0+84 +0 TLS +LOCAL +DEFAULT +10 bl2
+ +[0-9]+: 0+88 +0 TLS +LOCAL +DEFAULT +10 bl3
+ +[0-9]+: 0+8c +0 TLS +LOCAL +DEFAULT +10 bl4
+ +[0-9]+: 0+90 +0 TLS +LOCAL +DEFAULT +10 bl5
+ +[0-9]+: 0+94 +0 TLS +LOCAL +DEFAULT +10 bl6
+ +[0-9]+: 0+98 +0 TLS +LOCAL +DEFAULT +10 bl7
+ +[0-9]+: 0+9c +0 TLS +LOCAL +DEFAULT +10 bl8
+ +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT +UND sG3
+ +[0-9]+: 0+1c +0 TLS +GLOBAL DEFAULT +9 sg8
+ +[0-9]+: 0+7c +0 TLS +GLOBAL DEFAULT +10 bg8
+ +[0-9]+: 0+74 +0 TLS +GLOBAL DEFAULT +10 bg6
+ +[0-9]+: 0+68 +0 TLS +GLOBAL DEFAULT +10 bg3
+ +[0-9]+: [0-9a-f]+ +0 OBJECT +GLOBAL DEFAULT +ABS _DYNAMIC
+ +[0-9]+: 0+8 +0 TLS +GLOBAL DEFAULT +9 sg3
+ +[0-9]+: 0+48 +0 TLS +GLOBAL HIDDEN +9 sh3
+ +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT +UND sG2
+ +[0-9]+: 0+c +0 TLS +GLOBAL DEFAULT +9 sg4
+ +[0-9]+: 0+10 +0 TLS +GLOBAL DEFAULT +9 sg5
+ +[0-9]+: 0+70 +0 TLS +GLOBAL DEFAULT +10 bg5
+ +[0-9]+: 0+58 +0 TLS +GLOBAL HIDDEN +9 sh7
+ +[0-9]+: 0+5c +0 TLS +GLOBAL HIDDEN +9 sh8
+ +[0-9]+: [0-9a-f]+ +0 FUNC +GLOBAL DEFAULT +UND __tls_get_offset
+ +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT +9 sg1
+ +[0-9]+: [0-9a-f]+ +0 FUNC +GLOBAL DEFAULT +8 _start
+ +[0-9]+: 0+4c +0 TLS +GLOBAL HIDDEN +9 sh4
+ +[0-9]+: 0+78 +0 TLS +GLOBAL DEFAULT +10 bg7
+ +[0-9]+: 0+50 +0 TLS +GLOBAL HIDDEN +9 sh5
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS __bss_start
+ +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT +UND sG6
+ +[0-9]+: [0-9a-f]+ +0 FUNC +GLOBAL DEFAULT +8 fn2
+ +[0-9]+: 0+4 +0 TLS +GLOBAL DEFAULT +9 sg2
+ +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT +UND sG1
+ +[0-9]+: 0+40 +0 TLS +GLOBAL HIDDEN +9 sh1
+ +[0-9]+: 0+14 +0 TLS +GLOBAL DEFAULT +9 sg6
+ +[0-9]+: 0+18 +0 TLS +GLOBAL DEFAULT +9 sg7
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _edata
+ +[0-9]+: [0-9a-f]+ +0 OBJECT +GLOBAL DEFAULT +ABS _GLOBAL_OFFSET_TABLE_
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE +GLOBAL DEFAULT +ABS _end
+ +[0-9]+: 0+44 +0 TLS +GLOBAL HIDDEN +9 sh2
+ +[0-9]+: 0+54 +0 TLS +GLOBAL HIDDEN +9 sh6
+ +[0-9]+: 0+64 +0 TLS +GLOBAL DEFAULT +10 bg2
+ +[0-9]+: 0+60 +0 TLS +GLOBAL DEFAULT +10 bg1
+ +[0-9]+: 0+6c +0 TLS +GLOBAL DEFAULT +10 bg4
index 873c4f9..6618e45 100644 (file)
@@ -8,11 +8,11 @@
 .*:     file format elf64-s390
 
 Contents of section .got:
80001888 [0-9a-f]+ [0-9a-f]+ 00000000 00000000  .*
80001898 00000000 00000000 [0-9a-f]+ [0-9a-f]+  .*
800018a8 ffffffff ffffff88 00000000 00000000  .*
800018b8 00000000 00000000 ffffffff ffffff68  .*
800018c8 ffffffff ffffffa8 00000000 00000000  .*
800018d8 00000000 00000000 00000000 00000000  .*
800018e8 00000000 00000000 00000000 00000000  .*
800018f8 00000000 00000000                    .*
[0-9a-f]+ [0-9a-f]+ [0-9a-f]+ 00000000 00000000  .*
[0-9a-f]+ 00000000 00000000 [0-9a-f]+ [0-9a-f]+  .*
[0-9a-f]+ ffffffff ffffff88 00000000 00000000  .*
[0-9a-f]+ 00000000 00000000 ffffffff ffffff68  .*
[0-9a-f]+ ffffffff ffffffa8 00000000 00000000  .*
[0-9a-f]+ 00000000 00000000 00000000 00000000  .*
[0-9a-f]+ 00000000 00000000 00000000 00000000  .*
[0-9a-f]+ 00000000 00000000                    .*
index 0101b6f..dfa7e8d 100644 (file)
@@ -8,9 +8,9 @@
 .*:     file format elf64-s390
 
 Contents of section .tdata:
800016e8 00000011 00000012 00000013 00000014  .*
800016f8 00000015 00000016 00000017 00000018  .*
80001708 00000041 00000042 00000043 00000044  .*
80001718 00000045 00000046 00000047 00000048  .*
80001728 00000101 00000102 00000103 00000104  .*
80001738 00000105 00000106 00000107 00000108  .*
[0-9a-f]+ 00000011 00000012 00000013 00000014  .*
[0-9a-f]+ 00000015 00000016 00000017 00000018  .*
[0-9a-f]+ 00000041 00000042 00000043 00000044  .*
[0-9a-f]+ 00000045 00000046 00000047 00000048  .*
[0-9a-f]+ 00000101 00000102 00000103 00000104  .*
[0-9a-f]+ 00000105 00000106 00000107 00000108  .*
index 9779c05..e52e3a4 100644 (file)
@@ -1,4 +1,5 @@
        .section ".tdata", "awT", @progbits
+       .balign 32
        .globl sg1, sg2, sg3, sg4, sg5, sg6, sg7, sg8
        .globl sh1, sh2, sh3, sh4, sh5, sh6, sh7, sh8
        .hidden sh1, sh2, sh3, sh4, sh5, sh6, sh7, sh8
@@ -30,6 +31,7 @@ sh8:  .long 264
        .text
        .globl  fn2
        .type   fn2,@function
+       .balign 64
 fn2:
        /* Function prolog */
        stm     %r6,%r14,24(%r15)
index eaeff73..eeda6ca 100644 (file)
@@ -1,4 +1,5 @@
        .section ".tdata", "awT", @progbits
+       .balign 32
        .globl sg1, sg2, sg3, sg4, sg5, sg6, sg7, sg8
        .globl sh1, sh2, sh3, sh4, sh5, sh6, sh7, sh8
        .hidden sh1, sh2, sh3, sh4, sh5, sh6, sh7, sh8
@@ -30,6 +31,7 @@ sh8:  .long 264
        .text
        .globl  fn2
        .type   fn2,@function
+       .balign 64
 fn2:
        /* Function prolog */
        stmg    %r6,%r14,48(%r15)
index 71add02..6e9da5d 100644 (file)
 
 Disassembly of section .text:
 
-0+4bc <fn1>:
+0+[0-9a-f]+ <fn1>:
 # function prolog
- +4bc: 90 6e f0 18             stm     %r6,%r14,24\(%r15\)
- +4c0: a7 d5 00 30             bras    %r13,520 <fn1\+0x64>
+ +[0-9a-f]+:   90 6e f0 18             stm     %r6,%r14,24\(%r15\)
+ +[0-9a-f]+:   a7 d5 00 30             bras    %r13,[0-9a-f]+ <fn1\+0x64>
 # _GLOBAL_OFFSET_TABLE_-.LT1
- +4c4: 00 00 12 78             .long   0x00001278
+ +[0-9a-f]+:   [0-9a-f ]+              .long   0x[0-9a-f]+
 # __tls_get_addr@plt-.LT1
- +4c8: ff ff ff d8             .long   0xffffffd8
+ +[0-9a-f]+:   [0-9a-f ]+              .long   0x[0-9a-f]+
 # sg1@tlsgd
- +4cc: 00 00 00 38             .long   0x00000038
+ +[0-9a-f]+:   00 00 00 38             .long   0x00000038
 # sg2@tlsgd
- +4d0: 00 00 00 48             .long   0x00000048
+ +[0-9a-f]+:   00 00 00 48             .long   0x00000048
 # sl1@tlsgd
- +4d4: 00 00 00 10             .long   0x00000010
+ +[0-9a-f]+:   00 00 00 10             .long   0x00000010
 # sl2@tlsgd
- +4d8: 00 00 00 18             .long   0x00000018
+ +[0-9a-f]+:   00 00 00 18             .long   0x00000018
 # sh1@tlsgd
- +4dc: 00 00 00 4c             .long   0x0000004c
+ +[0-9a-f]+:   00 00 00 4c             .long   0x0000004c
 # sh2@tlsgd
- +4e0: 00 00 00 54             .long   0x00000054
+ +[0-9a-f]+:   00 00 00 54             .long   0x00000054
 # sH1@tlsgd
- +4e4: 00 00 00 28             .long   0x00000028
+ +[0-9a-f]+:   00 00 00 28             .long   0x00000028
 # sH2@tlsgd
- +4e8: 00 00 00 30             .long   0x00000030
+ +[0-9a-f]+:   00 00 00 30             .long   0x00000030
 # sl1@tlsldm
- +4ec: 00 00 00 20             .long   0x00000020
+ +[0-9a-f]+:   00 00 00 20             .long   0x00000020
 # sl1@dtpoff
- +4f0: 00 00 00 20             .long   0x00000020
+ +[0-9a-f]+:   00 00 00 20             .long   0x00000020
 # sl2@dtpoff
- +4f4: 00 00 00 24             .long   0x00000024
+ +[0-9a-f]+:   00 00 00 24             .long   0x00000024
 # sh1@tlsldm
- +4f8: 00 00 00 20             .long   0x00000020
+ +[0-9a-f]+:   00 00 00 20             .long   0x00000020
 # sh1@dtpoff
- +4fc: 00 00 00 40             .long   0x00000040
+ +[0-9a-f]+:   00 00 00 40             .long   0x00000040
 # sh2@dtpoff
- +500: 00 00 00 44             .long   0x00000044
+ +[0-9a-f]+:   00 00 00 44             .long   0x00000044
 # sH1@tlsldm
- +504: 00 00 00 20             .long   0x00000020
+ +[0-9a-f]+:   00 00 00 20             .long   0x00000020
 # sH1@dtpoff
- +508: 00 00 00 60             .long   0x00000060
+ +[0-9a-f]+:   00 00 00 60             .long   0x00000060
 # sH2@dtpoff
- +50c: 00 00 00 64             .long   0x00000064
+ +[0-9a-f]+:   00 00 00 64             .long   0x00000064
 # sg2@gotntpoff
- +510: 00 00 00 48             .long   0x00000048
+ +[0-9a-f]+:   00 00 00 48             .long   0x00000048
 # sl2@gotntpoff
- +514: 00 00 00 18             .long   0x00000018
+ +[0-9a-f]+:   00 00 00 18             .long   0x00000018
 # sh2@gotntpoff
- +518: 00 00 00 54             .long   0x00000054
+ +[0-9a-f]+:   00 00 00 54             .long   0x00000054
 # sH2@gotntpoff
- +51c: 00 00 00 30             .long   0x00000030
+ +[0-9a-f]+:   00 00 00 30             .long   0x00000030
 # function prolog
- +520: 18 ef                   lr      %r14,%r15
- +522: 58 c0 d0 00             l       %r12,0\(%r13\)
- +526: a7 fa ff a0             ahi     %r15,-96
- +52a: 41 cc d0 00             la      %r12,0\(%r12,%r13\)
- +52e: 50 e0 e0 00             st      %r14,0\(%r14\)
+ +[0-9a-f]+:   18 ef                   lr      %r14,%r15
+ +[0-9a-f]+:   58 c0 d0 00             l       %r12,0\(%r13\)
+ +[0-9a-f]+:   a7 fa ff a0             ahi     %r15,-96
+ +[0-9a-f]+:   41 cc d0 00             la      %r12,0\(%r12,%r13\)
+ +[0-9a-f]+:   50 e0 e0 00             st      %r14,0\(%r14\)
 # Extract TCB and load branch offset
- +532: b2 4f 00 90             ear     %r9,%a0
- +536: 58 70 d0 04             l       %r7,4\(%r13\)
+ +[0-9a-f]+:   b2 4f 00 90             ear     %r9,%a0
+ +[0-9a-f]+:   58 70 d0 04             l       %r7,4\(%r13\)
 # GD
- +53a: 58 20 d0 08             l       %r2,8\(%r13\)
- +53e: 4d e7 d0 00             bas     %r14,0\(%r7,%r13\)
- +542: 41 22 90 00             la      %r2,0\(%r2,%r9\)
+ +[0-9a-f]+:   58 20 d0 08             l       %r2,8\(%r13\)
+ +[0-9a-f]+:   4d e7 d0 00             bas     %r14,0\(%r7,%r13\)
+ +[0-9a-f]+:   41 22 90 00             la      %r2,0\(%r2,%r9\)
 # GD -> IE because variable is referenced through IE too
- +546: 58 20 d0 0c             l       %r2,12\(%r13\)
- +54a: 58 22 c0 00             l       %r2,0\(%r2,%r12\)
- +54e: 41 22 90 00             la      %r2,0\(%r2,%r9\)
+ +[0-9a-f]+:   58 20 d0 0c             l       %r2,12\(%r13\)
+ +[0-9a-f]+:   58 22 c0 00             l       %r2,0\(%r2,%r12\)
+ +[0-9a-f]+:   41 22 90 00             la      %r2,0\(%r2,%r9\)
 # GD against local variable
- +552: 58 20 d0 10             l       %r2,16\(%r13\)
- +556: 4d e7 d0 00             bas     %r14,0\(%r7,%r13\)
- +55a: 41 22 90 00             la      %r2,0\(%r2,%r9\)
+ +[0-9a-f]+:   58 20 d0 10             l       %r2,16\(%r13\)
+ +[0-9a-f]+:   4d e7 d0 00             bas     %r14,0\(%r7,%r13\)
+ +[0-9a-f]+:   41 22 90 00             la      %r2,0\(%r2,%r9\)
 # GD -> IE against local variable referenced through IE too
- +55e: 58 20 d0 14             l       %r2,20\(%r13\)
- +562: 58 22 c0 00             l       %r2,0\(%r2,%r12\)
- +566: 41 22 90 00             la      %r2,0\(%r2,%r9\)
+ +[0-9a-f]+:   58 20 d0 14             l       %r2,20\(%r13\)
+ +[0-9a-f]+:   58 22 c0 00             l       %r2,0\(%r2,%r12\)
+ +[0-9a-f]+:   41 22 90 00             la      %r2,0\(%r2,%r9\)
 # GD against hidden and local variable
- +56a: 58 20 d0 18             l       %r2,24\(%r13\)
- +56e: 4d e7 d0 00             bas     %r14,0\(%r7,%r13\)
- +572: 41 22 90 00             la      %r2,0\(%r2,%r9\)
+ +[0-9a-f]+:   58 20 d0 18             l       %r2,24\(%r13\)
+ +[0-9a-f]+:   4d e7 d0 00             bas     %r14,0\(%r7,%r13\)
+ +[0-9a-f]+:   41 22 90 00             la      %r2,0\(%r2,%r9\)
 # GD -> IE against hidden and local variable referenced through
 # IE too
- +576: 58 20 d0 1c             l       %r2,28\(%r13\)
- +57a: 58 22 c0 00             l       %r2,0\(%r2,%r12\)
- +57e: 41 22 90 00             la      %r2,0\(%r2,%r9\)
+ +[0-9a-f]+:   58 20 d0 1c             l       %r2,28\(%r13\)
+ +[0-9a-f]+:   58 22 c0 00             l       %r2,0\(%r2,%r12\)
+ +[0-9a-f]+:   41 22 90 00             la      %r2,0\(%r2,%r9\)
 # GD against hidden but not local variable
- +582: 58 20 d0 20             l       %r2,32\(%r13\)
- +586: 4d e7 d0 00             bas     %r14,0\(%r7,%r13\)
- +58a: 41 22 90 00             la      %r2,0\(%r2,%r9\)
+ +[0-9a-f]+:   58 20 d0 20             l       %r2,32\(%r13\)
+ +[0-9a-f]+:   4d e7 d0 00             bas     %r14,0\(%r7,%r13\)
+ +[0-9a-f]+:   41 22 90 00             la      %r2,0\(%r2,%r9\)
 # GD -> IE against hidden but not local variable referenced through
 # IE too
- +58e: 58 20 d0 24             l       %r2,36\(%r13\)
- +592: 58 22 c0 00             l       %r2,0\(%r2,%r12\)
- +596: 41 22 90 00             la      %r2,0\(%r2,%r9\)
+ +[0-9a-f]+:   58 20 d0 24             l       %r2,36\(%r13\)
+ +[0-9a-f]+:   58 22 c0 00             l       %r2,0\(%r2,%r12\)
+ +[0-9a-f]+:   41 22 90 00             la      %r2,0\(%r2,%r9\)
 # LD
- +59a: 58 20 d0 28             l       %r2,40\(%r13\)
- +59e: 4d e7 d0 00             bas     %r14,0\(%r7,%r13\)
- +5a2: 41 32 90 00             la      %r3,0\(%r2,%r9\)
- +5a6: 58 40 d0 2c             l       %r4,44\(%r13\)
- +5aa: 41 54 30 00             la      %r5,0\(%r4,%r3\)
- +5ae: 58 40 d0 30             l       %r4,48\(%r13\)
- +5b2: 41 54 30 00             la      %r5,0\(%r4,%r3\)
+ +[0-9a-f]+:   58 20 d0 28             l       %r2,40\(%r13\)
+ +[0-9a-f]+:   4d e7 d0 00             bas     %r14,0\(%r7,%r13\)
+ +[0-9a-f]+:   41 32 90 00             la      %r3,0\(%r2,%r9\)
+ +[0-9a-f]+:   58 40 d0 2c             l       %r4,44\(%r13\)
+ +[0-9a-f]+:   41 54 30 00             la      %r5,0\(%r4,%r3\)
+ +[0-9a-f]+:   58 40 d0 30             l       %r4,48\(%r13\)
+ +[0-9a-f]+:   41 54 30 00             la      %r5,0\(%r4,%r3\)
 # LD against hidden and local variables
- +5b6: 58 20 d0 34             l       %r2,52\(%r13\)
- +5ba: 4d e7 d0 00             bas     %r14,0\(%r7,%r13\)
- +5be: 41 32 90 00             la      %r3,0\(%r2,%r9\)
- +5c2: 58 40 d0 38             l       %r4,56\(%r13\)
- +5c6: 41 54 30 00             la      %r5,0\(%r4,%r3\)
- +5ca: 58 40 d0 34             l       %r4,52\(%r13\)
- +5ce: 41 55 30 00             la      %r5,0\(%r5,%r3\)
+ +[0-9a-f]+:   58 20 d0 34             l       %r2,52\(%r13\)
+ +[0-9a-f]+:   4d e7 d0 00             bas     %r14,0\(%r7,%r13\)
+ +[0-9a-f]+:   41 32 90 00             la      %r3,0\(%r2,%r9\)
+ +[0-9a-f]+:   58 40 d0 38             l       %r4,56\(%r13\)
+ +[0-9a-f]+:   41 54 30 00             la      %r5,0\(%r4,%r3\)
+ +[0-9a-f]+:   58 40 d0 34             l       %r4,52\(%r13\)
+ +[0-9a-f]+:   41 55 30 00             la      %r5,0\(%r5,%r3\)
 # LD against hidden but not local variables
- +5d2: 58 20 d0 40             l       %r2,64\(%r13\)
- +5d6: 4d e7 d0 00             bas     %r14,0\(%r7,%r13\)
- +5da: 41 32 90 00             la      %r3,0\(%r2,%r9\)
- +5de: 58 30 d0 44             l       %r3,68\(%r13\)
- +5e2: 41 54 30 00             la      %r5,0\(%r4,%r3\)
- +5e6: 58 40 d0 48             l       %r4,72\(%r13\)
- +5ea: 41 54 30 00             la      %r5,0\(%r4,%r3\)
+ +[0-9a-f]+:   58 20 d0 40             l       %r2,64\(%r13\)
+ +[0-9a-f]+:   4d e7 d0 00             bas     %r14,0\(%r7,%r13\)
+ +[0-9a-f]+:   41 32 90 00             la      %r3,0\(%r2,%r9\)
+ +[0-9a-f]+:   58 30 d0 44             l       %r3,68\(%r13\)
+ +[0-9a-f]+:   41 54 30 00             la      %r5,0\(%r4,%r3\)
+ +[0-9a-f]+:   58 40 d0 48             l       %r4,72\(%r13\)
+ +[0-9a-f]+:   41 54 30 00             la      %r5,0\(%r4,%r3\)
 # IE against global var
- +5ee: 58 30 d0 4c             l       %r3,76\(%r13\)
- +5f2: 58 33 c0 00             l       %r3,0\(%r3,%r12\)
- +5f6: 41 33 30 00             la      %r3,0\(%r3,%r3\)
+ +[0-9a-f]+:   58 30 d0 4c             l       %r3,76\(%r13\)
+ +[0-9a-f]+:   58 33 c0 00             l       %r3,0\(%r3,%r12\)
+ +[0-9a-f]+:   41 33 30 00             la      %r3,0\(%r3,%r3\)
 # IE against local var
- +5fa: 58 30 d0 50             l       %r3,80\(%r13\)
- +5fe: 58 43 c0 00             l       %r4,0\(%r3,%r12\)
- +602: 41 54 30 00             la      %r5,0\(%r4,%r3\)
+ +[0-9a-f]+:   58 30 d0 50             l       %r3,80\(%r13\)
+ +[0-9a-f]+:   58 43 c0 00             l       %r4,0\(%r3,%r12\)
+ +[0-9a-f]+:   41 54 30 00             la      %r5,0\(%r4,%r3\)
 # IE against hidden and local var
- +606: 58 30 d0 54             l       %r3,84\(%r13\)
- +60a: 58 43 c0 00             l       %r4,0\(%r3,%r12\)
- +60e: 41 54 30 00             la      %r5,0\(%r4,%r3\)
+ +[0-9a-f]+:   58 30 d0 54             l       %r3,84\(%r13\)
+ +[0-9a-f]+:   58 43 c0 00             l       %r4,0\(%r3,%r12\)
+ +[0-9a-f]+:   41 54 30 00             la      %r5,0\(%r4,%r3\)
 # IE against hidden but not local var
- +612: 58 30 d0 58             l       %r3,88\(%r13\)
- +616: 58 43 c0 00             l       %r4,0\(%r3,%r12\)
- +61a: 41 54 30 00             la      %r5,0\(%r4,%r3\)
+ +[0-9a-f]+:   58 30 d0 58             l       %r3,88\(%r13\)
+ +[0-9a-f]+:   58 43 c0 00             l       %r4,0\(%r3,%r12\)
+ +[0-9a-f]+:   41 54 30 00             la      %r5,0\(%r4,%r3\)
 # IE against global var with small got access (no optimization)
- +61e: 58 30 c0 34             l       %r3,52\(%r12\)
- +622: 41 33 90 00             la      %r3,0\(%r3,%r9\)
+ +[0-9a-f]+:   58 30 c0 34             l       %r3,52\(%r12\)
+ +[0-9a-f]+:   41 33 90 00             la      %r3,0\(%r3,%r9\)
 # IE against local var with small got access (no optimization)
- +626: 58 30 c0 1c             l       %r3,28\(%r12\)
- +62a: 41 33 90 00             la      %r3,0\(%r3,%r9\)
+ +[0-9a-f]+:   58 30 c0 1c             l       %r3,28\(%r12\)
+ +[0-9a-f]+:   41 33 90 00             la      %r3,0\(%r3,%r9\)
 # IE against hidden and local var with small got access
 # (no optimization)
- +62e: 58 30 c0 40             l       %r3,64\(%r12\)
- +632: 41 33 90 00             la      %r3,0\(%r3,%r9\)
+ +[0-9a-f]+:   58 30 c0 40             l       %r3,64\(%r12\)
+ +[0-9a-f]+:   41 33 90 00             la      %r3,0\(%r3,%r9\)
 # IE against hidden but not local var with small got access
 # (no optimization)
- +636: 58 30 c0 44             l       %r3,68\(%r12\)
- +63a: 41 33 90 00             la      %r3,0\(%r3,%r9\)
+ +[0-9a-f]+:   58 30 c0 44             l       %r3,68\(%r12\)
+ +[0-9a-f]+:   41 33 90 00             la      %r3,0\(%r3,%r9\)
 # function prolog
- +63e: 98 6e f0 78             lm      %r6,%r14,120\(%r15\)
- +642: 07 fe                   br      %r14
+ +[0-9a-f]+:   98 6e f0 78             lm      %r6,%r14,120\(%r15\)
+ +[0-9a-f]+:   07 fe                   br      %r14
+ +[0-9a-f]+:   07 07                   bcr     0,%r7
+ +[0-9a-f]+:   07 07                   bcr     0,%r7
+ +[0-9a-f]+:   07 07                   bcr     0,%r7
+ +[0-9a-f]+:   07 07                   bcr     0,%r7
+ +[0-9a-f]+:   07 07                   bcr     0,%r7
+ +[0-9a-f]+:   07 07                   bcr     0,%r7
+ +[0-9a-f]+:   07 07                   bcr     0,%r7
+ +[0-9a-f]+:   07 07                   bcr     0,%r7
+ +[0-9a-f]+:   07 07                   bcr     0,%r7
+ +[0-9a-f]+:   07 07                   bcr     0,%r7
+ +[0-9a-f]+:   07 07                   bcr     0,%r7
+ +[0-9a-f]+:   07 07                   bcr     0,%r7
+ +[0-9a-f]+:   07 07                   bcr     0,%r7
+ +[0-9a-f]+:   07 07                   bcr     0,%r7
+ +[0-9a-f]+:   07 07                   bcr     0,%r7
+ +[0-9a-f]+:   07 07                   bcr     0,%r7
+ +[0-9a-f]+:   07 07                   bcr     0,%r7
+ +[0-9a-f]+:   07 07                   bcr     0,%r7
+ +[0-9a-f]+:   07 07                   bcr     0,%r7
+ +[0-9a-f]+:   07 07                   bcr     0,%r7
+ +[0-9a-f]+:   07 07                   bcr     0,%r7
+ +[0-9a-f]+:   07 07                   bcr     0,%r7
+ +[0-9a-f]+:   07 07                   bcr     0,%r7
+ +[0-9a-f]+:   07 07                   bcr     0,%r7
+ +[0-9a-f]+:   07 07                   bcr     0,%r7
+ +[0-9a-f]+:   07 07                   bcr     0,%r7
+ +[0-9a-f]+:   07 07                   bcr     0,%r7
+ +[0-9a-f]+:   07 07                   bcr     0,%r7
index 6c7468b..4764023 100644 (file)
@@ -5,7 +5,7 @@
 #readelf: -Ssrl
 #target: s390-*-*
 
-There are 18 section headers, starting at offset 0x[0-9a-f]+:
+There are 17 section headers, starting at offset 0x[0-9a-f]+:
 
 Section Headers:
   \[Nr\] Name +Type +Addr +Off +Size +ES Flg Lk Inf Al
@@ -16,32 +16,31 @@ Section Headers:
   \[ 4\] .rela.dyn +.*
   \[ 5\] .rela.plt +.*
   \[ 6\] .plt +.*
-  \[ 7\] .text +PROGBITS +0+4bc 0+4bc 0+188 00  AX  0 +0  4
-  \[ 8\] .data +.*
-  \[ 9\] .tdata +PROGBITS +0+1644 0+644 0+60 00 WAT  0 +0  1
-  \[10\] .tbss +NOBITS +0+16a4 0+6a4 0+20 00 WAT  0 +0  1
-  \[11\] .dynamic +DYNAMIC +0+16a4 0+6a4 0+98 08  WA  3 +0  4
-  \[12\] .got +PROGBITS +0+173c 0+73c 0+58 04  WA  0 +0  4
-  \[13\] .sbss +.*
-  \[14\] .bss +.*
-  \[15\] .shstrtab +.*
-  \[16\] .symtab +.*
-  \[17\] .strtab +.*
+  \[ 7\] .text +PROGBITS +.*
+  \[ 8\] .tdata +PROGBITS +0+1600 0+600 0+60 00 WAT  0 +0 32
+  \[ 9\] .tbss +NOBITS +0+1660 0+660 0+20 00 WAT  0 +0  1
+  \[10\] .dynamic +DYNAMIC +0+1660 0+660 0+98 08  WA  3 +0  4
+  \[11\] .got +PROGBITS +0+16f8 0+6f8 0+58 04  WA  0 +0  4
+  \[12\] .data +.*
+  \[13\] .bss +.*
+  \[14\] .shstrtab +.*
+  \[15\] .symtab +.*
+  \[16\] .strtab +.*
 Key to Flags:
 .*
 .*
 .*
 
 Elf file type is DYN \(Shared object file\)
-Entry point 0x4bc
+Entry point 0x[0-9a-f]+
 There are 4 program headers, starting at offset [0-9]+
 
 Program Headers:
   Type +Offset +VirtAddr +PhysAddr +FileSiz MemSiz  Flg Align
   LOAD +0x0+ 0x0+ 0x0+ 0x[0-9a-f]+ 0x[0-9a-f]+ R E 0x1000
-  LOAD +0x0+644 0x0+1644 0x0+1644 0x00150 0x00150 RW  0x1000
-  DYNAMIC +0x0+6a4 0x0+16a4 0x0+16a4 0x0+98 0x0+98 RW  0x4
-  TLS +0x0+644 0x0+1644 0x0+1644 0x0+60 0x0+80 R +0x1
+  LOAD +0x0+600 0x0+1600 0x0+1600 0x00150 0x00150 RW  0x1000
+  DYNAMIC +0x0+660 0x0+1660 0x0+1660 0x0+98 0x0+98 RW  0x4
+  TLS +0x0+600 0x0+1600 0x0+1600 0x0+60 0x0+80 R +0x20
 
  Section to Segment mapping:
   Segment Sections...
@@ -50,7 +49,7 @@ Program Headers:
  +02 +.tbss .dynamic 
  +03 +.tdata .tbss 
 
-Relocation section '.rela.dyn' at offset 0x3c8 contains 14 entries:
+Relocation section '.rela.dyn' at offset 0x[0-9a-f]+ contains 14 entries:
  Offset +Info +Type +Sym.Value  Sym. Name \+ Addend
 [0-9a-f]+  0+36 R_390_TLS_DTPMOD +0+
 [0-9a-f]+  0+38 R_390_TLS_TPOFF +0+24
@@ -62,104 +61,94 @@ Relocation section '.rela.dyn' at offset 0x3c8 contains 14 entries:
 [0-9a-f]+  0+38 R_390_TLS_TPOFF +0+70
 [0-9a-f]+  0+36 R_390_TLS_DTPMOD +0+
 [0-9a-f]+  0+38 R_390_TLS_TPOFF +0+44
-[0-9a-f]+  0+1338 R_390_TLS_TPOFF +0+10 +sg5 \+ 0
-[0-9a-f]+  0+1536 R_390_TLS_DTPMOD  0+ +sg1 \+ 0
-[0-9a-f]+  0+1537 R_390_TLS_DTPOFF  0+ +sg1 \+ 0
-[0-9a-f]+  0+1838 R_390_TLS_TPOFF +0+4 +sg2 \+ 0
+[0-9a-f]+  0+a38 R_390_TLS_TPOFF +0+10 +sg5 \+ 0
+[0-9a-f]+  0+c36 R_390_TLS_DTPMOD  0+ +sg1 \+ 0
+[0-9a-f]+  0+c37 R_390_TLS_DTPOFF  0+ +sg1 \+ 0
+[0-9a-f]+  0+f38 R_390_TLS_TPOFF +0+4 +sg2 \+ 0
 
 Relocation section '.rela.plt' at offset 0x[0-9a-f]+ contains 1 entries:
  Offset +Info +Type +Sym.Value  Sym. Name \+ Addend
-[0-9a-f]+  0+140b R_390_JMP_SLOT +0+ +__tls_get_offset \+ 0
+[0-9a-f]+  0+b0b R_390_JMP_SLOT +0+ +__tls_get_offset \+ 0
 
-Symbol table '.dynsym' contains 30 entries:
+Symbol table '.dynsym' contains 21 entries:
  +Num: +Value  Size Type +Bind +Vis +Ndx Name
- +0: 0+ +0 NOTYPE  LOCAL  DEFAULT  UND 
- +1: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +1 
- +2: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +2 
- +3: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +3 
- +4: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +4 
- +5: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +5 
- +6: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +6 
- +7: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +7 
- +8: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +8 
- +9: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +9 
- +10: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +10 
- +11: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +11 
- +12: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +12 
- +13: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +13 
- +14: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +14 
- +15: 0+1c +0 TLS +GLOBAL DEFAULT +9 sg8
- +16: [0-9a-f]+ +0 OBJECT  GLOBAL DEFAULT  ABS _DYNAMIC
- +17: 0+8 +0 TLS +GLOBAL DEFAULT +9 sg3
- +18: 0+c +0 TLS +GLOBAL DEFAULT +9 sg4
- +19: 0+10 +0 TLS +GLOBAL DEFAULT +9 sg5
- +20: 0+ +0 NOTYPE  GLOBAL DEFAULT  UND __tls_get_offset
- +21: 0+ +0 TLS +GLOBAL DEFAULT +9 sg1
- +22: [0-9a-f]+ +0 FUNC +GLOBAL DEFAULT +7 fn1
- +23: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS __bss_start
- +24: 0+4 +0 TLS +GLOBAL DEFAULT +9 sg2
- +25: 0+14 +0 TLS +GLOBAL DEFAULT +9 sg6
- +26: 0+18 +0 TLS +GLOBAL DEFAULT +9 sg7
- +27: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS _edata
- +28: [0-9a-f]+ +0 OBJECT  GLOBAL DEFAULT  ABS _GLOBAL_OFFSET_TABLE_
- +29: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS _end
+ +[0-9]+: 0+ +0 NOTYPE  LOCAL  DEFAULT  UND 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +7 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +8 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +9 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +12 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +13 
+ +[0-9]+: 0+1c +0 TLS +GLOBAL DEFAULT +8 sg8
+ +[0-9]+: [0-9a-f]+ +0 OBJECT  GLOBAL DEFAULT  ABS _DYNAMIC
+ +[0-9]+: 0+8 +0 TLS +GLOBAL DEFAULT +8 sg3
+ +[0-9]+: 0+c +0 TLS +GLOBAL DEFAULT +8 sg4
+ +[0-9]+: 0+10 +0 TLS +GLOBAL DEFAULT +8 sg5
+ +[0-9]+: 0+ +0 NOTYPE  GLOBAL DEFAULT  UND __tls_get_offset
+ +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT +8 sg1
+ +[0-9]+: [0-9a-f]+ +0 FUNC +GLOBAL DEFAULT +7 fn1
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS __bss_start
+ +[0-9]+: 0+4 +0 TLS +GLOBAL DEFAULT +8 sg2
+ +[0-9]+: 0+14 +0 TLS +GLOBAL DEFAULT +8 sg6
+ +[0-9]+: 0+18 +0 TLS +GLOBAL DEFAULT +8 sg7
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS _edata
+ +[0-9]+: [0-9a-f]+ +0 OBJECT  GLOBAL DEFAULT  ABS _GLOBAL_OFFSET_TABLE_
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS _end
 
-Symbol table '.symtab' contains 57 entries:
+Symbol table '.symtab' contains 56 entries:
  +Num: +Value  Size Type +Bind +Vis +Ndx Name
- +0: 0+ +0 NOTYPE  LOCAL  DEFAULT  UND 
- +1: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +1 
- +2: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +2 
- +3: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +3 
- +4: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +4 
- +5: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +5 
- +6: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +6 
- +7: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +7 
- +8: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +8 
- +9: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +9 
- +10: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +10 
- +11: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +11 
- +12: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +12 
- +13: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +13 
- +14: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +14 
- +15: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +15 
- +16: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +16 
- +17: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +17 
- +18: 0+20 +0 TLS +LOCAL  DEFAULT +9 sl1
- +19: 0+24 +0 TLS +LOCAL  DEFAULT +9 sl2
- +20: 0+28 +0 TLS +LOCAL  DEFAULT +9 sl3
- +21: 0+2c +0 TLS +LOCAL  DEFAULT +9 sl4
- +22: 0+30 +0 TLS +LOCAL  DEFAULT +9 sl5
- +23: 0+34 +0 TLS +LOCAL  DEFAULT +9 sl6
- +24: 0+38 +0 TLS +LOCAL  DEFAULT +9 sl7
- +25: 0+3c +0 TLS +LOCAL  DEFAULT +9 sl8
- +26: 0+60 +0 TLS +LOCAL  HIDDEN +10 sH1
- +27: 0+48 +0 TLS +LOCAL  HIDDEN +9 sh3
- +28: 0+64 +0 TLS +LOCAL  HIDDEN +10 sH2
- +29: 0+78 +0 TLS +LOCAL  HIDDEN +10 sH7
- +30: 0+58 +0 TLS +LOCAL  HIDDEN +9 sh7
- +31: 0+5c +0 TLS +LOCAL  HIDDEN +9 sh8
- +32: 0+6c +0 TLS +LOCAL  HIDDEN +10 sH4
- +33: 0+4c +0 TLS +LOCAL  HIDDEN +9 sh4
- +34: 0+68 +0 TLS +LOCAL  HIDDEN +10 sH3
- +35: 0+50 +0 TLS +LOCAL  HIDDEN +9 sh5
- +36: 0+70 +0 TLS +LOCAL  HIDDEN +10 sH5
- +37: 0+74 +0 TLS +LOCAL  HIDDEN +10 sH6
- +38: 0+7c +0 TLS +LOCAL  HIDDEN +10 sH8
- +39: 0+40 +0 TLS +LOCAL  HIDDEN +9 sh1
- +40: 0+44 +0 TLS +LOCAL  HIDDEN +9 sh2
- +41: 0+54 +0 TLS +LOCAL  HIDDEN +9 sh6
- +42: 0+1c +0 TLS +GLOBAL DEFAULT +9 sg8
- +43: [0-9a-f]+ +0 OBJECT  GLOBAL DEFAULT  ABS _DYNAMIC
- +44: 0+8 +0 TLS +GLOBAL DEFAULT +9 sg3
- +45: 0+c +0 TLS +GLOBAL DEFAULT +9 sg4
- +46: 0+10 +0 TLS +GLOBAL DEFAULT +9 sg5
- +47: 0+ +0 NOTYPE  GLOBAL DEFAULT  UND __tls_get_offset
- +48: 0+ +0 TLS +GLOBAL DEFAULT +9 sg1
- +49: [0-9a-f]+ +0 FUNC +GLOBAL DEFAULT +7 fn1
- +50: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS __bss_start
- +51: 0+4 +0 TLS +GLOBAL DEFAULT +9 sg2
- +52: 0+14 +0 TLS +GLOBAL DEFAULT +9 sg6
- +53: 0+18 +0 TLS +GLOBAL DEFAULT +9 sg7
- +54: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS _edata
- +55: [0-9a-f]+ +0 OBJECT  GLOBAL DEFAULT  ABS _GLOBAL_OFFSET_TABLE_
- +56: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS _end
+ +[0-9]+: 0+ +0 NOTYPE  LOCAL  DEFAULT  UND 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +1 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +2 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +3 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +4 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +5 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +6 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +7 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +8 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +9 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +10 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +11 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +12 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +13 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +14 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +15 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +16 
+ +[0-9]+: 0+20 +0 TLS +LOCAL  DEFAULT +8 sl1
+ +[0-9]+: 0+24 +0 TLS +LOCAL  DEFAULT +8 sl2
+ +[0-9]+: 0+28 +0 TLS +LOCAL  DEFAULT +8 sl3
+ +[0-9]+: 0+2c +0 TLS +LOCAL  DEFAULT +8 sl4
+ +[0-9]+: 0+30 +0 TLS +LOCAL  DEFAULT +8 sl5
+ +[0-9]+: 0+34 +0 TLS +LOCAL  DEFAULT +8 sl6
+ +[0-9]+: 0+38 +0 TLS +LOCAL  DEFAULT +8 sl7
+ +[0-9]+: 0+3c +0 TLS +LOCAL  DEFAULT +8 sl8
+ +[0-9]+: 0+60 +0 TLS +LOCAL  HIDDEN +9 sH1
+ +[0-9]+: 0+48 +0 TLS +LOCAL  HIDDEN +8 sh3
+ +[0-9]+: 0+64 +0 TLS +LOCAL  HIDDEN +9 sH2
+ +[0-9]+: 0+78 +0 TLS +LOCAL  HIDDEN +9 sH7
+ +[0-9]+: 0+58 +0 TLS +LOCAL  HIDDEN +8 sh7
+ +[0-9]+: 0+5c +0 TLS +LOCAL  HIDDEN +8 sh8
+ +[0-9]+: 0+6c +0 TLS +LOCAL  HIDDEN +9 sH4
+ +[0-9]+: 0+4c +0 TLS +LOCAL  HIDDEN +8 sh4
+ +[0-9]+: 0+68 +0 TLS +LOCAL  HIDDEN +9 sH3
+ +[0-9]+: 0+50 +0 TLS +LOCAL  HIDDEN +8 sh5
+ +[0-9]+: 0+70 +0 TLS +LOCAL  HIDDEN +9 sH5
+ +[0-9]+: 0+74 +0 TLS +LOCAL  HIDDEN +9 sH6
+ +[0-9]+: 0+7c +0 TLS +LOCAL  HIDDEN +9 sH8
+ +[0-9]+: 0+40 +0 TLS +LOCAL  HIDDEN +8 sh1
+ +[0-9]+: 0+44 +0 TLS +LOCAL  HIDDEN +8 sh2
+ +[0-9]+: 0+54 +0 TLS +LOCAL  HIDDEN +8 sh6
+ +[0-9]+: 0+1c +0 TLS +GLOBAL DEFAULT +8 sg8
+ +[0-9]+: [0-9a-f]+ +0 OBJECT  GLOBAL DEFAULT  ABS _DYNAMIC
+ +[0-9]+: 0+8 +0 TLS +GLOBAL DEFAULT +8 sg3
+ +[0-9]+: 0+c +0 TLS +GLOBAL DEFAULT +8 sg4
+ +[0-9]+: 0+10 +0 TLS +GLOBAL DEFAULT +8 sg5
+ +[0-9]+: 0+ +0 NOTYPE  GLOBAL DEFAULT  UND __tls_get_offset
+ +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT +8 sg1
+ +[0-9]+: [0-9a-f]+ +0 FUNC +GLOBAL DEFAULT +7 fn1
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS __bss_start
+ +[0-9]+: 0+4 +0 TLS +GLOBAL DEFAULT +8 sg2
+ +[0-9]+: 0+14 +0 TLS +GLOBAL DEFAULT +8 sg6
+ +[0-9]+: 0+18 +0 TLS +GLOBAL DEFAULT +8 sg7
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS _edata
+ +[0-9]+: [0-9a-f]+ +0 OBJECT  GLOBAL DEFAULT  ABS _GLOBAL_OFFSET_TABLE_
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS _end
index 04763dc..6e32dea 100644 (file)
@@ -8,9 +8,9 @@
 .*: +file format elf32-s390
 
 Contents of section .got:
173c [0-9a-f]+ 00000000 00000000 [0-9a-f]+  .*
174c 00000000 00000020 00000000 00000000  .*
175c 00000000 00000000 00000000 00000060  .*
176c 00000000 00000000 00000000 00000000  .*
177c 00000000 00000000 00000000 00000000  .*
178c 00000040 00000000  +.*
[0-9a-f]+ [0-9a-f]+ 00000000 00000000 [0-9a-f]+  .*
[0-9a-f]+ 00000000 00000020 00000000 00000000  .*
[0-9a-f]+ 00000000 00000000 00000000 00000060  .*
[0-9a-f]+ 00000000 00000000 00000000 00000000  .*
[0-9a-f]+ 00000000 00000000 00000000 00000000  .*
[0-9a-f]+ 00000040 00000000  +.*
index 161de76..265dbe2 100644 (file)
@@ -8,9 +8,9 @@
 .*: +file format elf32-s390
 
 Contents of section .tdata:
1644 00000011 00000012 00000013 00000014  .*
1654 00000015 00000016 00000017 00000018  .*
1664 00000041 00000042 00000043 00000044  .*
1674 00000045 00000046 00000047 00000048  .*
1684 00000101 00000102 00000103 00000104  .*
1694 00000105 00000106 00000107 00000108  .*
[0-9a-f]+ 00000011 00000012 00000013 00000014  .*
[0-9a-f]+ 00000015 00000016 00000017 00000018  .*
[0-9a-f]+ 00000041 00000042 00000043 00000044  .*
[0-9a-f]+ 00000045 00000046 00000047 00000048  .*
[0-9a-f]+ 00000101 00000102 00000103 00000104  .*
[0-9a-f]+ 00000105 00000106 00000107 00000108  .*
index e24d129..28b9c3a 100644 (file)
@@ -1,4 +1,5 @@
        .section ".tdata", "awT", @progbits
+       .balign 32
        .globl sg1, sg2, sg3, sg4, sg5, sg6, sg7, sg8
        .globl sh1, sh2, sh3, sh4, sh5, sh6, sh7, sh8
        .hidden sh1, sh2, sh3, sh4, sh5, sh6, sh7, sh8
@@ -29,6 +30,7 @@ sh8:  .long 264
        .text
        .globl  fn1
        .type   fn1,@function
+       .balign 64
 fn1:
        /* Funtion prolog */
        stm     %r6,%r14,24(%r15)
index 350b51d..4e50008 100644 (file)
@@ -1,4 +1,5 @@
        .section ".tdata", "awT", @progbits
+       .balign 32
        .globl sg1, sg2, sg3, sg4, sg5, sg6, sg7, sg8
        .globl sh1, sh2, sh3, sh4, sh5, sh6, sh7, sh8
        .hidden sh1, sh2, sh3, sh4, sh5, sh6, sh7, sh8
@@ -29,6 +30,7 @@ sh8:  .long 264
        .text
        .globl  fn1
        .type   fn1,@function
+       .balign 64
 fn1:
        /* Funtion prolog */
        stmg    %r6,%r14,48(%r15)
index 423cdf9..fea1671 100644 (file)
 
 Disassembly of section .text:
 
-0+790 <fn1>:
+0+[0-9a-f]+ <fn1>:
 # function prolog
- +790: eb 6e f0 30 00 24       stmg    %r6,%r14,48\(%r15\)
- +796: a7 d5 00 56             bras    %r13,842 <fn1\+0xb2>
+ +[0-9a-f]+:   eb 6e f0 30 00 24       stmg    %r6,%r14,48\(%r15\)
+ +[0-9a-f]+:   a7 d5 00 56             bras    %r13,[0-9a-f]+ <fn1\+0xb2>
 # sg1@tlsgd
- +79a: 00 00 00 00             .long   0x00000000
- +79e: 00 00 00 70             .long   0x00000070
+ +[0-9a-f]+:   00 00 00 00             .long   0x00000000
+ +[0-9a-f]+:   00 00 00 70             .long   0x00000070
 # sg2@tlsgd
- +7a2: 00 00 00 00             .long   0x00000000
- +7a6: 00 00 00 90             .long   0x00000090
+ +[0-9a-f]+:   00 00 00 00             .long   0x00000000
+ +[0-9a-f]+:   00 00 00 90             .long   0x00000090
 # sl1@tlsgd
- +7aa: 00 00 00 00             .long   0x00000000
- +7ae: 00 00 00 20             .long   0x00000020
+ +[0-9a-f]+:   00 00 00 00             .long   0x00000000
+ +[0-9a-f]+:   00 00 00 20             .long   0x00000020
 # sl2@tlsgd
- +7b2: 00 00 00 00             .long   0x00000000
- +7b6: 00 00 00 30             .long   0x00000030
+ +[0-9a-f]+:   00 00 00 00             .long   0x00000000
+ +[0-9a-f]+:   00 00 00 30             .long   0x00000030
 # sh1@tlsgd
- +7ba: 00 00 00 00             .long   0x00000000
- +7be: 00 00 00 98             .long   0x00000098
+ +[0-9a-f]+:   00 00 00 00             .long   0x00000000
+ +[0-9a-f]+:   00 00 00 98             .long   0x00000098
 # sh2@tlsgd
- +7c2: 00 00 00 00             .long   0x00000000
- +7c6: 00 00 00 a8             .long   0x000000a8
+ +[0-9a-f]+:   00 00 00 00             .long   0x00000000
+ +[0-9a-f]+:   00 00 00 a8             .long   0x000000a8
 # sH1@tlsgd
- +7ca: 00 00 00 00             .long   0x00000000
- +7ce: 00 00 00 50             .long   0x00000050
+ +[0-9a-f]+:   00 00 00 00             .long   0x00000000
+ +[0-9a-f]+:   00 00 00 50             .long   0x00000050
 # sH2@tlsgd
- +7d2: 00 00 00 00             .long   0x00000000
- +7d6: 00 00 00 60             .long   0x00000060
+ +[0-9a-f]+:   00 00 00 00             .long   0x00000000
+ +[0-9a-f]+:   00 00 00 60             .long   0x00000060
 # sl1@tlsldm
- +7da: 00 00 00 00             .long   0x00000000
- +7de: 00 00 00 40             .long   0x00000040
+ +[0-9a-f]+:   00 00 00 00             .long   0x00000000
+ +[0-9a-f]+:   00 00 00 40             .long   0x00000040
 # sl1@dtpoff
- +7e2: 00 00 00 00             .long   0x00000000
- +7e6: 00 00 00 20             .long   0x00000020
+ +[0-9a-f]+:   00 00 00 00             .long   0x00000000
+ +[0-9a-f]+:   00 00 00 20             .long   0x00000020
 # sl2@dtpoff
- +7ea: 00 00 00 00             .long   0x00000000
- +7ee: 00 00 00 24             .long   0x00000024
+ +[0-9a-f]+:   00 00 00 00             .long   0x00000000
+ +[0-9a-f]+:   00 00 00 24             .long   0x00000024
 # sh1@tlsldm
- +7f2: 00 00 00 00             .long   0x00000000
- +7f6: 00 00 00 40             .long   0x00000040
+ +[0-9a-f]+:   00 00 00 00             .long   0x00000000
+ +[0-9a-f]+:   00 00 00 40             .long   0x00000040
 # sh1@dtpoff
- +7fa: 00 00 00 00             .long   0x00000000
- +7fe: 00 00 00 40             .long   0x00000040
+ +[0-9a-f]+:   00 00 00 00             .long   0x00000000
+ +[0-9a-f]+:   00 00 00 40             .long   0x00000040
 # sh2@dtpoff
- +802: 00 00 00 00             .long   0x00000000
- +806: 00 00 00 44             .long   0x00000044
+ +[0-9a-f]+:   00 00 00 00             .long   0x00000000
+ +[0-9a-f]+:   00 00 00 44             .long   0x00000044
 # sH1@tlsldm
- +80a: 00 00 00 00             .long   0x00000000
- +80e: 00 00 00 40             .long   0x00000040
+ +[0-9a-f]+:   00 00 00 00             .long   0x00000000
+ +[0-9a-f]+:   00 00 00 40             .long   0x00000040
 # sH1@dtpoff
- +812: 00 00 00 00             .long   0x00000000
- +816: 00 00 00 60             .long   0x00000060
+ +[0-9a-f]+:   00 00 00 00             .long   0x00000000
+ +[0-9a-f]+:   00 00 00 60             .long   0x00000060
 # sH2@dtpoff
- +81a: 00 00 00 00             .long   0x00000000
- +81e: 00 00 00 64             .long   0x00000064
+ +[0-9a-f]+:   00 00 00 00             .long   0x00000000
+ +[0-9a-f]+:   00 00 00 64             .long   0x00000064
 # sg2@gotntpoff
- +822: 00 00 00 00             .long   0x00000000
- +826: 00 00 00 90             .long   0x00000090
+ +[0-9a-f]+:   00 00 00 00             .long   0x00000000
+ +[0-9a-f]+:   00 00 00 90             .long   0x00000090
 # sl2@gotntpoff
- +82a: 00 00 00 00             .long   0x00000000
- +82e: 00 00 00 30             .long   0x00000030
+ +[0-9a-f]+:   00 00 00 00             .long   0x00000000
+ +[0-9a-f]+:   00 00 00 30             .long   0x00000030
 # sh2@gotntpoff
- +832: 00 00 00 00             .long   0x00000000
- +836: 00 00 00 a8             .long   0x000000a8
+ +[0-9a-f]+:   00 00 00 00             .long   0x00000000
+ +[0-9a-f]+:   00 00 00 a8             .long   0x000000a8
 # sH2@gotntpoff
- +83a: 00 00 00 00             .long   0x00000000
- +83e: 00 00 00 60             .long   0x00000060
+ +[0-9a-f]+:   00 00 00 00             .long   0x00000000
+ +[0-9a-f]+:   00 00 00 60             .long   0x00000060
 # function prolog
- +842: b9 04 00 ef             lgr     %r14,%r15
- +846: c0 c0 00 00 09 a5       larl    %r12,1b90 <_GLOBAL_OFFSET_TABLE_>
- +84c: a7 fb ff 60             aghi    %r15,-160
- +850: e3 e0 e0 00 00 24       stg     %r14,0\(%r14\)
+ +[0-9a-f]+:   b9 04 00 ef             lgr     %r14,%r15
+ +[0-9a-f]+:   c0 c0 [0-9a-f ]+        larl    %r12,[0-9a-f]+ <_GLOBAL_OFFSET_TABLE_>
+ +[0-9a-f]+:   a7 fb ff 60             aghi    %r15,-160
+ +[0-9a-f]+:   e3 e0 e0 00 00 24       stg     %r14,0\(%r14\)
 # extract TCB
- +856: b2 4f 00 90             ear     %r9,%a0
- +85a: eb 94 00 20 00 0d       sllg    %r9,%r4,32
- +860: b2 4f 00 91             ear     %r9,%a1
+ +[0-9a-f]+:   b2 4f 00 90             ear     %r9,%a0
+ +[0-9a-f]+:   eb 94 00 20 00 0d       sllg    %r9,%r4,32
+ +[0-9a-f]+:   b2 4f 00 91             ear     %r9,%a1
 # GD
- +864: e3 20 d0 00 00 04       lg      %r2,0\(%r13\)
- +86a: c0 e5 ff ff ff 83       brasl   %r14,770 <sH8\+0x6f4>
- +870: 41 22 90 00             la      %r2,0\(%r2,%r9\)
+ +[0-9a-f]+:   e3 20 d0 00 00 04       lg      %r2,0\(%r13\)
+ +[0-9a-f]+:   c0 e5 [0-9a-f ]+        brasl   %r14,[0-9a-f]+ <.*>
+ +[0-9a-f]+:   41 22 90 00             la      %r2,0\(%r2,%r9\)
 # GD -> IE because variable is referenced through IE too
- +874: e3 20 d0 08 00 04       lg      %r2,8\(%r13\)
- +87a: e3 22 c0 00 00 04       lg      %r2,0\(%r2,%r12\)
- +880: 41 22 90 00             la      %r2,0\(%r2,%r9\)
+ +[0-9a-f]+:   e3 20 d0 08 00 04       lg      %r2,8\(%r13\)
+ +[0-9a-f]+:   e3 22 c0 00 00 04       lg      %r2,0\(%r2,%r12\)
+ +[0-9a-f]+:   41 22 90 00             la      %r2,0\(%r2,%r9\)
 # GD against local variable
- +884: e3 20 d0 10 00 04       lg      %r2,16\(%r13\)
- +88a: c0 e5 ff ff ff 73       brasl   %r14,770 <sH8\+0x6f4>
- +890: 41 22 90 00             la      %r2,0\(%r2,%r9\)
+ +[0-9a-f]+:   e3 20 d0 10 00 04       lg      %r2,16\(%r13\)
+ +[0-9a-f]+:   c0 e5 [0-9a-f ]+        brasl   %r14,[0-9a-f]+ <.*>
+ +[0-9a-f]+:   41 22 90 00             la      %r2,0\(%r2,%r9\)
 # GD -> IE against local variable referenced through IE too
- +894: e3 20 d0 18 00 04       lg      %r2,24\(%r13\)
- +89a: e3 22 c0 00 00 04       lg      %r2,0\(%r2,%r12\)
- +8a0: 41 22 90 00             la      %r2,0\(%r2,%r9\)
+ +[0-9a-f]+:   e3 20 d0 18 00 04       lg      %r2,24\(%r13\)
+ +[0-9a-f]+:   e3 22 c0 00 00 04       lg      %r2,0\(%r2,%r12\)
+ +[0-9a-f]+:   41 22 90 00             la      %r2,0\(%r2,%r9\)
 # GD against hidden and local variable
- +8a4: e3 20 d0 20 00 04       lg      %r2,32\(%r13\)
- +8aa: c0 e5 ff ff ff 63       brasl   %r14,770 <sH8\+0x6f4>
- +8b0: 41 22 90 00             la      %r2,0\(%r2,%r9\)
+ +[0-9a-f]+:   e3 20 d0 20 00 04       lg      %r2,32\(%r13\)
+ +[0-9a-f]+:   c0 e5 [0-9a-f ]+        brasl   %r14,[0-9a-f]+ <.*>
+ +[0-9a-f]+:   41 22 90 00             la      %r2,0\(%r2,%r9\)
 # GD -> IE against hidden and local variable referenced through
 # IE too
- +8b4: e3 20 d0 28 00 04       lg      %r2,40\(%r13\)
- +8ba: e3 22 c0 00 00 04       lg      %r2,0\(%r2,%r12\)
- +8c0: 41 22 90 00             la      %r2,0\(%r2,%r9\)
+ +[0-9a-f]+:   e3 20 d0 28 00 04       lg      %r2,40\(%r13\)
+ +[0-9a-f]+:   e3 22 c0 00 00 04       lg      %r2,0\(%r2,%r12\)
+ +[0-9a-f]+:   41 22 90 00             la      %r2,0\(%r2,%r9\)
 # GD against hidden but not local variable
- +8c4: e3 20 d0 30 00 04       lg      %r2,48\(%r13\)
- +8ca: c0 e5 ff ff ff 53       brasl   %r14,770 <sH8\+0x6f4>
- +8d0: 41 22 90 00             la      %r2,0\(%r2,%r9\)
+ +[0-9a-f]+:   e3 20 d0 30 00 04       lg      %r2,48\(%r13\)
+ +[0-9a-f]+:   c0 e5 [0-9a-f ]+        brasl   %r14,[0-9a-f]+ <.*>
+ +[0-9a-f]+:   41 22 90 00             la      %r2,0\(%r2,%r9\)
 # GD -> IE against hidden but not local variable referenced through
 # IE too
- +8d4: e3 20 d0 38 00 04       lg      %r2,56\(%r13\)
- +8da: e3 22 c0 00 00 04       lg      %r2,0\(%r2,%r12\)
- +8e0: 41 22 90 00             la      %r2,0\(%r2,%r9\)
+ +[0-9a-f]+:   e3 20 d0 38 00 04       lg      %r2,56\(%r13\)
+ +[0-9a-f]+:   e3 22 c0 00 00 04       lg      %r2,0\(%r2,%r12\)
+ +[0-9a-f]+:   41 22 90 00             la      %r2,0\(%r2,%r9\)
 # LD
- +8e4: e3 20 d0 40 00 04       lg      %r2,64\(%r13\)
- +8ea: c0 e5 ff ff ff 43       brasl   %r14,770 <sH8\+0x6f4>
- +8f0: 41 32 90 00             la      %r3,0\(%r2,%r9\)
- +8f4: e3 40 d0 48 00 04       lg      %r4,72\(%r13\)
- +8fa: 41 54 30 00             la      %r5,0\(%r4,%r3\)
- +8fe: e3 40 d0 50 00 04       lg      %r4,80\(%r13\)
- +904: 41 54 30 00             la      %r5,0\(%r4,%r3\)
+ +[0-9a-f]+:   e3 20 d0 40 00 04       lg      %r2,64\(%r13\)
+ +[0-9a-f]+:   c0 e5 [0-9a-f ]+        brasl   %r14,[0-9a-f]+ <.*>
+ +[0-9a-f]+:   41 32 90 00             la      %r3,0\(%r2,%r9\)
+ +[0-9a-f]+:   e3 40 d0 48 00 04       lg      %r4,72\(%r13\)
+ +[0-9a-f]+:   41 54 30 00             la      %r5,0\(%r4,%r3\)
+ +[0-9a-f]+:   e3 40 d0 50 00 04       lg      %r4,80\(%r13\)
+ +[0-9a-f]+:   41 54 30 00             la      %r5,0\(%r4,%r3\)
 # LD against hidden and local variables
- +908: e3 20 d0 58 00 04       lg      %r2,88\(%r13\)
- +90e: c0 e5 ff ff ff 31       brasl   %r14,770 <sH8\+0x6f4>
- +914: 41 32 90 00             la      %r3,0\(%r2,%r9\)
- +918: e3 40 d0 60 00 04       lg      %r4,96\(%r13\)
- +91e: 41 54 30 00             la      %r5,0\(%r4,%r3\)
- +922: e3 40 d0 68 00 04       lg      %r4,104\(%r13\)
- +928: 41 54 30 00             la      %r5,0\(%r4,%r3\)
+ +[0-9a-f]+:   e3 20 d0 58 00 04       lg      %r2,88\(%r13\)
+ +[0-9a-f]+:   c0 e5 [0-9a-f ]+        brasl   %r14,[0-9a-f]+ <.*>
+ +[0-9a-f]+:   41 32 90 00             la      %r3,0\(%r2,%r9\)
+ +[0-9a-f]+:   e3 40 d0 60 00 04       lg      %r4,96\(%r13\)
+ +[0-9a-f]+:   41 54 30 00             la      %r5,0\(%r4,%r3\)
+ +[0-9a-f]+:   e3 40 d0 68 00 04       lg      %r4,104\(%r13\)
+ +[0-9a-f]+:   41 54 30 00             la      %r5,0\(%r4,%r3\)
 # LD against hidden but not local variables
- +92c: e3 20 d0 70 00 04       lg      %r2,112\(%r13\)
- +932: c0 e5 ff ff ff 1f       brasl   %r14,770 <sH8\+0x6f4>
- +938: 41 32 90 00             la      %r3,0\(%r2,%r9\)
- +93c: e3 40 d0 78 00 04       lg      %r4,120\(%r13\)
- +942: 41 54 30 00             la      %r5,0\(%r4,%r3\)
- +946: e3 40 d0 80 00 04       lg      %r4,128\(%r13\)
- +94c: 41 54 30 00             la      %r5,0\(%r4,%r3\)
+ +[0-9a-f]+:   e3 20 d0 70 00 04       lg      %r2,112\(%r13\)
+ +[0-9a-f]+:   c0 e5 [0-9a-f ]+        brasl   %r14,[0-9a-f]+ <.*>
+ +[0-9a-f]+:   41 32 90 00             la      %r3,0\(%r2,%r9\)
+ +[0-9a-f]+:   e3 40 d0 78 00 04       lg      %r4,120\(%r13\)
+ +[0-9a-f]+:   41 54 30 00             la      %r5,0\(%r4,%r3\)
+ +[0-9a-f]+:   e3 40 d0 80 00 04       lg      %r4,128\(%r13\)
+ +[0-9a-f]+:   41 54 30 00             la      %r5,0\(%r4,%r3\)
 # IE against global var
- +950: e3 30 d0 88 00 04       lg      %r3,136\(%r13\)
- +956: e3 33 c0 00 00 04       lg      %r3,0\(%r3,%r12\)
- +95c: 41 33 90 00             la      %r3,0\(%r3,%r9\)
+ +[0-9a-f]+:   e3 30 d0 88 00 04       lg      %r3,136\(%r13\)
+ +[0-9a-f]+:   e3 33 c0 00 00 04       lg      %r3,0\(%r3,%r12\)
+ +[0-9a-f]+:   41 33 90 00             la      %r3,0\(%r3,%r9\)
 # IE against local var
- +960: e3 30 d0 90 00 04       lg      %r3,144\(%r13\)
- +966: e3 43 c0 00 00 04       lg      %r4,0\(%r3,%r12\)
- +96c: 41 54 90 00             la      %r5,0\(%r4,%r9\)
+ +[0-9a-f]+:   e3 30 d0 90 00 04       lg      %r3,144\(%r13\)
+ +[0-9a-f]+:   e3 43 c0 00 00 04       lg      %r4,0\(%r3,%r12\)
+ +[0-9a-f]+:   41 54 90 00             la      %r5,0\(%r4,%r9\)
 # IE against hidden and local var
- +970: e3 30 d0 98 00 04       lg      %r3,152\(%r13\)
- +976: e3 43 c0 00 00 04       lg      %r4,0\(%r3,%r12\)
- +97c: 41 54 90 00             la      %r5,0\(%r4,%r9\)
+ +[0-9a-f]+:   e3 30 d0 98 00 04       lg      %r3,152\(%r13\)
+ +[0-9a-f]+:   e3 43 c0 00 00 04       lg      %r4,0\(%r3,%r12\)
+ +[0-9a-f]+:   41 54 90 00             la      %r5,0\(%r4,%r9\)
 # IE against hidden but not local var
- +980: e3 30 d0 a0 00 04       lg      %r3,160\(%r13\)
- +986: e3 43 c0 00 00 04       lg      %r4,0\(%r3,%r12\)
- +98c: 41 54 90 00             la      %r5,0\(%r4,%r9\)
+ +[0-9a-f]+:   e3 30 d0 a0 00 04       lg      %r3,160\(%r13\)
+ +[0-9a-f]+:   e3 43 c0 00 00 04       lg      %r4,0\(%r3,%r12\)
+ +[0-9a-f]+:   41 54 90 00             la      %r5,0\(%r4,%r9\)
 # IE against global var with larl got access
- +990: c0 30 00 00 09 34       larl    %r3,1bf8 <\_GLOBAL\_OFFSET\_TABLE\_\+0x68>
- +996: e3 33 c0 00 00 04       lg      %r3,0\(%r3,%r12\)
- +99c: 41 33 90 00             la      %r3,0\(%r3,%r9\)
+ +[0-9a-f]+:   c0 30 [0-9a-f ]+        larl    %r3,[0-9a-f]+ <\_GLOBAL\_OFFSET\_TABLE\_\+0x68>
+ +[0-9a-f]+:   e3 33 c0 00 00 04       lg      %r3,0\(%r3,%r12\)
+ +[0-9a-f]+:   41 33 90 00             la      %r3,0\(%r3,%r9\)
 # IE against local var with larl got access
- +9a0: c0 30 00 00 09 14       larl    %r3,1bc8 <\_GLOBAL\_OFFSET\_TABLE\_\+0x38>
- +9a6: e3 43 c0 00 00 04       lg      %r4,0\(%r3,%r12\)
- +9ac: 41 54 90 00             la      %r5,0\(%r4,%r9\)
+ +[0-9a-f]+:   c0 30 [0-9a-f ]+        larl    %r3,[0-9a-f]+ <\_GLOBAL\_OFFSET\_TABLE\_\+0x38>
+ +[0-9a-f]+:   e3 43 c0 00 00 04       lg      %r4,0\(%r3,%r12\)
+ +[0-9a-f]+:   41 54 90 00             la      %r5,0\(%r4,%r9\)
 # IE against hidden and local var with larl got access
- +9b0: c0 30 00 00 09 30       larl    %r3,1c10 <\_GLOBAL\_OFFSET\_TABLE\_\+0x80>
- +9b6: e3 43 c0 00 00 04       lg      %r4,0\(%r3,%r12\)
- +9bc: 41 54 90 00             la      %r5,0\(%r4,%r9\)
+ +[0-9a-f]+:   c0 30 [0-9a-f ]+        larl    %r3,[0-9a-f]+ <\_GLOBAL\_OFFSET\_TABLE\_\+0x80>
+ +[0-9a-f]+:   e3 43 c0 00 00 04       lg      %r4,0\(%r3,%r12\)
+ +[0-9a-f]+:   41 54 90 00             la      %r5,0\(%r4,%r9\)
 # IE against hidden but not local var with larl got access
- +9c0: c0 30 00 00 09 2c       larl    %r3,1c18 <\_GLOBAL\_OFFSET\_TABLE\_\+0x88>
- +9c6: e3 43 c0 00 00 04       lg      %r4,0\(%r3,%r12\)
- +9cc: 41 54 90 00             la      %r5,0\(%r4,%r9\)
+ +[0-9a-f]+:   c0 30 [0-9a-f ]+        larl    %r3,[0-9a-f]+ <\_GLOBAL\_OFFSET\_TABLE\_\+0x88>
+ +[0-9a-f]+:   e3 43 c0 00 00 04       lg      %r4,0\(%r3,%r12\)
+ +[0-9a-f]+:   41 54 90 00             la      %r5,0\(%r4,%r9\)
 # IE against global var with small got access (no optimization)
- +9d0: e3 30 c0 68 00 04       lg      %r3,104\(%r12\)
- +9d6: 41 33 90 00             la      %r3,0\(%r3,%r9\)
+ +[0-9a-f]+:   e3 30 c0 68 00 04       lg      %r3,104\(%r12\)
+ +[0-9a-f]+:   41 33 90 00             la      %r3,0\(%r3,%r9\)
 # IE against local var with small got access (no optimization)
- +9da: e3 30 c0 38 00 04       lg      %r3,56\(%r12\)
- +9e0: 41 33 90 00             la      %r3,0\(%r3,%r9\)
+ +[0-9a-f]+:   e3 30 c0 38 00 04       lg      %r3,56\(%r12\)
+ +[0-9a-f]+:   41 33 90 00             la      %r3,0\(%r3,%r9\)
 # IE against hidden and local var with small got access
 # (no optimization)
- +9e4: e3 30 c0 80 00 04       lg      %r3,128\(%r12\)
- +9ea: 41 33 90 00             la      %r3,0\(%r3,%r9\)
+ +[0-9a-f]+:   e3 30 c0 80 00 04       lg      %r3,128\(%r12\)
+ +[0-9a-f]+:   41 33 90 00             la      %r3,0\(%r3,%r9\)
 # IE against hidden but not local var with small got access
 # (no optimization)
- +9ee: e3 30 c0 88 00 04       lg      %r3,136\(%r12\)
- +9f4: 41 33 90 00             la      %r3,0\(%r3,%r9\)
+ +[0-9a-f]+:   e3 30 c0 88 00 04       lg      %r3,136\(%r12\)
+ +[0-9a-f]+:   41 33 90 00             la      %r3,0\(%r3,%r9\)
 # function epilog
- +9f8: eb 6e f0 d0 00 04       lmg     %r6,%r14,208\(%r15\)
- +9fe: 07 fe                   br      %r14
+ +[0-9a-f]+:   eb 6e f0 d0 00 04       lmg     %r6,%r14,208\(%r15\)
+ +[0-9a-f]+:   07 fe                   br      %r14
+ +[0-9a-f]+:   07 07                   bcr     0,%r7
+ +[0-9a-f]+:   07 07                   bcr     0,%r7
+ +[0-9a-f]+:   07 07                   bcr     0,%r7
+ +[0-9a-f]+:   07 07                   bcr     0,%r7
+ +[0-9a-f]+:   07 07                   bcr     0,%r7
+ +[0-9a-f]+:   07 07                   bcr     0,%r7
+ +[0-9a-f]+:   07 07                   bcr     0,%r7
+ +[0-9a-f]+:   07 07                   bcr     0,%r7
index e37a62a..144903d 100644 (file)
@@ -5,7 +5,7 @@
 #readelf: -WSsrl
 #target: s390x-*-*
 
-There are 18 section headers, starting at offset 0x[0-9a-f]+:
+There are 17 section headers, starting at offset 0x[0-9a-f]+:
 
 Section Headers:
   \[Nr\] Name +Type +Address +Off +Size +ES Flg Lk Inf Al
@@ -16,32 +16,31 @@ Section Headers:
   \[ 4\] .rela.dyn +.*
   \[ 5\] .rela.plt +.*
   \[ 6\] .plt +.*
-  \[ 7\] .text +PROGBITS +0+790 0+790 0+270 00 +AX +0 +0 +4
-  \[ 8\] .data +.*
-  \[ 9\] .tdata +PROGBITS +0+1a00 0+a00 0+60 00 WAT +0 +0 +1
-  \[10\] .tbss +NOBITS +0+1a60 0+a60 0+20 00 WAT +0 +0 +1
-  \[11\] .dynamic +DYNAMIC +0+1a60 0+a60 0+130 10 +WA +3 +0 +8
-  \[12\] .got +PROGBITS +0+1b90 0+b90 0+b0 08 +WA +0 +0 +8
-  \[13\] .sbss +.*
-  \[14\] .bss +.*
-  \[15\] .shstrtab +.*
-  \[16\] .symtab +.*
-  \[17\] .strtab +.*
+  \[ 7\] .text +PROGBITS +.*
+  \[ 8\] .tdata +PROGBITS +0+1900 0+900 0+60 00 WAT +0 +0 +32
+  \[ 9\] .tbss +NOBITS +0+1960 0+960 0+20 00 WAT +0 +0 +1
+  \[10\] .dynamic +DYNAMIC +0+1960 0+960 0+130 10 +WA +3 +0 +8
+  \[11\] .got +PROGBITS +0+1a90 0+a90 0+b0 08 +WA +0 +0 +8
+  \[12\] .data +.*
+  \[13\] .bss +.*
+  \[14\] .shstrtab +.*
+  \[15\] .symtab +.*
+  \[16\] .strtab +.*
 Key to Flags:
 .*
 .*
 .*
 
 Elf file type is DYN \(Shared object file\)
-Entry point 0x790
+Entry point 0x[0-9a-f]+
 There are 4 program headers, starting at offset [0-9]+
 
 Program Headers:
   Type +Offset +VirtAddr +PhysAddr +FileSiz +MemSiz +Flg Align
   LOAD +0x0+ 0x0+ 0x0+ 0x[0-9a-f]+ 0x[0-9a-f]+ R E 0x1000
-  LOAD +0x0+a00 0x0+1a00 0x0+1a00 0x0+240 0x0+240 RW +0x1000
-  DYNAMIC +0x0+a60 0x0+1a60 0x0+1a60 0x0+130 0x0+130 RW +0x8
-  TLS +0x0+a00 0x0+1a00 0x0+1a00 0x0+60 0x0+80 R +0x1
+  LOAD +0x0+900 0x0+1900 0x0+1900 0x0+240 0x0+240 RW +0x1000
+  DYNAMIC +0x0+960 0x0+1960 0x0+1960 0x0+130 0x0+130 RW +0x8
+  TLS +0x0+900 0x0+1900 0x0+1900 0x0+60 0x0+80 R +0x20
 
  Section to Segment mapping:
   Segment Sections...
@@ -52,114 +51,104 @@ Program Headers:
 
 Relocation section '.rela.dyn' at offset 0x[0-9a-f]+ contains 14 entries:
  +Offset +Info +Type +Symbol's Value  Symbol's Name \+ Addend
-[0-9a-z]+  0+36 R_390_TLS_DTPMOD +0+
-[0-9a-z]+  0+38 R_390_TLS_TPOFF +0+24
-[0-9a-z]+  0+38 R_390_TLS_TPOFF +0+30
-[0-9a-z]+  0+36 R_390_TLS_DTPMOD +0+
-[0-9a-z]+  0+36 R_390_TLS_DTPMOD +0+
-[0-9a-z]+  0+38 R_390_TLS_TPOFF +0+64
-[0-9a-z]+  0+38 R_390_TLS_TPOFF +0+50
-[0-9a-z]+  0+38 R_390_TLS_TPOFF +0+70
-[0-9a-z]+  0+36 R_390_TLS_DTPMOD +0+
-[0-9a-z]+  0+38 R_390_TLS_TPOFF +0+44
-[0-9a-z]+  0+130+38 R_390_TLS_TPOFF +0+10 sg5 \+ 0
-[0-9a-z]+  0+150+36 R_390_TLS_DTPMOD +0+ sg1 \+ 0
-[0-9a-z]+  0+150+37 R_390_TLS_DTPOFF +0+ sg1 \+ 0
-[0-9a-z]+  0+180+38 R_390_TLS_TPOFF +0+4 sg2 \+ 0
+[0-9a-f]+  0+36 R_390_TLS_DTPMOD +0+
+[0-9a-f]+  0+38 R_390_TLS_TPOFF +0+24
+[0-9a-f]+  0+38 R_390_TLS_TPOFF +0+30
+[0-9a-f]+  0+36 R_390_TLS_DTPMOD +0+
+[0-9a-f]+  0+36 R_390_TLS_DTPMOD +0+
+[0-9a-f]+  0+38 R_390_TLS_TPOFF +0+64
+[0-9a-f]+  0+38 R_390_TLS_TPOFF +0+50
+[0-9a-f]+  0+38 R_390_TLS_TPOFF +0+70
+[0-9a-f]+  0+36 R_390_TLS_DTPMOD +0+
+[0-9a-f]+  0+38 R_390_TLS_TPOFF +0+44
+[0-9a-f]+  0+a0+38 R_390_TLS_TPOFF +0+10 sg5 \+ 0
+[0-9a-f]+  0+c0+36 R_390_TLS_DTPMOD +0+ sg1 \+ 0
+[0-9a-f]+  0+c0+37 R_390_TLS_DTPOFF +0+ sg1 \+ 0
+[0-9a-f]+  0+f0+38 R_390_TLS_TPOFF +0+4 sg2 \+ 0
 
-Relocation section '.rela.plt' at offset 0x738 contains 1 entries:
+Relocation section '.rela.plt' at offset 0x[0-9a-f]+ contains 1 entries:
  +Offset +Info +Type +Symbol's Value  Symbol's Name \+ Addend
-0+1ba8  0+140+b R_390_JMP_SLOT +0+ __tls_get_offset \+ 0
+[0-9a-f]+  0+b0+b R_390_JMP_SLOT +0+ __tls_get_offset \+ 0
 
-Symbol table '.dynsym' contains 30 entries:
+Symbol table '.dynsym' contains 21 entries:
  +Num: +Value +Size Type +Bind +Vis +Ndx Name
- +0: 0+ +0 NOTYPE  LOCAL  DEFAULT  UND 
- +1: [0-9a-z]+ +0 SECTION LOCAL  DEFAULT +1 
- +2: [0-9a-z]+ +0 SECTION LOCAL  DEFAULT +2 
- +3: [0-9a-z]+ +0 SECTION LOCAL  DEFAULT +3 
- +4: [0-9a-z]+ +0 SECTION LOCAL  DEFAULT +4 
- +5: [0-9a-z]+ +0 SECTION LOCAL  DEFAULT +5 
- +6: [0-9a-z]+ +0 SECTION LOCAL  DEFAULT +6 
- +7: [0-9a-z]+ +0 SECTION LOCAL  DEFAULT +7 
- +8: [0-9a-z]+ +0 SECTION LOCAL  DEFAULT +8 
- +9: [0-9a-z]+ +0 SECTION LOCAL  DEFAULT +9 
- +10: [0-9a-z]+ +0 SECTION LOCAL  DEFAULT +10 
- +11: [0-9a-z]+ +0 SECTION LOCAL  DEFAULT +11 
- +12: [0-9a-z]+ +0 SECTION LOCAL  DEFAULT +12 
- +13: [0-9a-z]+ +0 SECTION LOCAL  DEFAULT +13 
- +14: [0-9a-z]+ +0 SECTION LOCAL  DEFAULT +14 
- +15: 0+1c +0 TLS +GLOBAL DEFAULT +9 sg8
- +16: [0-9a-z]+ +0 OBJECT  GLOBAL DEFAULT  ABS _DYNAMIC
- +17: 0+8 +0 TLS +GLOBAL DEFAULT +9 sg3
- +18: 0+c +0 TLS +GLOBAL DEFAULT +9 sg4
- +19: 0+10 +0 TLS +GLOBAL DEFAULT +9 sg5
- +20: 0+ +0 NOTYPE  GLOBAL DEFAULT  UND __tls_get_offset
- +21: 0+ +0 TLS +GLOBAL DEFAULT +9 sg1
- +22: [0-9a-z]+ +0 FUNC +GLOBAL DEFAULT +7 fn1
- +23: [0-9a-z]+ +0 NOTYPE  GLOBAL DEFAULT  ABS __bss_start
- +24: 0+4 +0 TLS +GLOBAL DEFAULT +9 sg2
- +25: 0+14 +0 TLS +GLOBAL DEFAULT +9 sg6
- +26: 0+18 +0 TLS +GLOBAL DEFAULT +9 sg7
- +27: [0-9a-z]+ +0 NOTYPE  GLOBAL DEFAULT  ABS _edata
- +28: [0-9a-z]+ +0 OBJECT  GLOBAL DEFAULT  ABS _GLOBAL_OFFSET_TABLE_
- +29: 0+1c40 +0 NOTYPE  GLOBAL DEFAULT  ABS _end
+ +[0-9]+: 0+ +0 NOTYPE  LOCAL  DEFAULT  UND 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +7 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +8 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +9 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +12 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +13 
+ +[0-9]+: 0+1c +0 TLS +GLOBAL DEFAULT +8 sg8
+ +[0-9]+: [0-9a-f]+ +0 OBJECT  GLOBAL DEFAULT  ABS _DYNAMIC
+ +[0-9]+: 0+8 +0 TLS +GLOBAL DEFAULT +8 sg3
+ +[0-9]+: 0+c +0 TLS +GLOBAL DEFAULT +8 sg4
+ +[0-9]+: 0+10 +0 TLS +GLOBAL DEFAULT +8 sg5
+ +[0-9]+: 0+ +0 NOTYPE  GLOBAL DEFAULT  UND __tls_get_offset
+ +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT +8 sg1
+ +[0-9]+: [0-9a-f]+ +0 FUNC +GLOBAL DEFAULT +7 fn1
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS __bss_start
+ +[0-9]+: 0+4 +0 TLS +GLOBAL DEFAULT +8 sg2
+ +[0-9]+: 0+14 +0 TLS +GLOBAL DEFAULT +8 sg6
+ +[0-9]+: 0+18 +0 TLS +GLOBAL DEFAULT +8 sg7
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS _edata
+ +[0-9]+: [0-9a-f]+ +0 OBJECT  GLOBAL DEFAULT  ABS _GLOBAL_OFFSET_TABLE_
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS _end
 
-Symbol table '.symtab' contains 57 entries:
+Symbol table '.symtab' contains 56 entries:
  +Num: +Value +Size Type +Bind +Vis +Ndx Name
- +0: 0+ +0 NOTYPE  LOCAL  DEFAULT  UND 
- +1: [0-9a-z]+ +0 SECTION LOCAL  DEFAULT +1 
- +2: [0-9a-z]+ +0 SECTION LOCAL  DEFAULT +2 
- +3: [0-9a-z]+ +0 SECTION LOCAL  DEFAULT +3 
- +4: [0-9a-z]+ +0 SECTION LOCAL  DEFAULT +4 
- +5: [0-9a-z]+ +0 SECTION LOCAL  DEFAULT +5 
- +6: [0-9a-z]+ +0 SECTION LOCAL  DEFAULT +6 
- +7: [0-9a-z]+ +0 SECTION LOCAL  DEFAULT +7 
- +8: [0-9a-z]+ +0 SECTION LOCAL  DEFAULT +8 
- +9: [0-9a-z]+ +0 SECTION LOCAL  DEFAULT +9 
- +10: [0-9a-z]+ +0 SECTION LOCAL  DEFAULT +10 
- +11: [0-9a-z]+ +0 SECTION LOCAL  DEFAULT +11 
- +12: [0-9a-z]+ +0 SECTION LOCAL  DEFAULT +12 
- +13: [0-9a-z]+ +0 SECTION LOCAL  DEFAULT +13 
- +14: [0-9a-z]+ +0 SECTION LOCAL  DEFAULT +14 
- +15: [0-9a-z]+ +0 SECTION LOCAL  DEFAULT +15 
- +16: [0-9a-z]+ +0 SECTION LOCAL  DEFAULT +16 
- +17: [0-9a-z]+ +0 SECTION LOCAL  DEFAULT +17 
- +18: 0+20 +0 TLS +LOCAL  DEFAULT +9 sl1
- +19: 0+24 +0 TLS +LOCAL  DEFAULT +9 sl2
- +20: 0+28 +0 TLS +LOCAL  DEFAULT +9 sl3
- +21: 0+2c +0 TLS +LOCAL  DEFAULT +9 sl4
- +22: 0+30 +0 TLS +LOCAL  DEFAULT +9 sl5
- +23: 0+34 +0 TLS +LOCAL  DEFAULT +9 sl6
- +24: 0+38 +0 TLS +LOCAL  DEFAULT +9 sl7
- +25: 0+3c +0 TLS +LOCAL  DEFAULT +9 sl8
- +26: 0+60 +0 TLS +LOCAL  HIDDEN +10 sH1
- +27: 0+48 +0 TLS +LOCAL  HIDDEN +9 sh3
- +28: 0+64 +0 TLS +LOCAL  HIDDEN +10 sH2
- +29: 0+78 +0 TLS +LOCAL  HIDDEN +10 sH7
- +30: 0+58 +0 TLS +LOCAL  HIDDEN +9 sh7
- +31: 0+5c +0 TLS +LOCAL  HIDDEN +9 sh8
- +32: 0+6c +0 TLS +LOCAL  HIDDEN +10 sH4
- +33: 0+4c +0 TLS +LOCAL  HIDDEN +9 sh4
- +34: 0+68 +0 TLS +LOCAL  HIDDEN +10 sH3
- +35: 0+50 +0 TLS +LOCAL  HIDDEN +9 sh5
- +36: 0+70 +0 TLS +LOCAL  HIDDEN +10 sH5
- +37: 0+74 +0 TLS +LOCAL  HIDDEN +10 sH6
- +38: 0+7c +0 TLS +LOCAL  HIDDEN +10 sH8
- +39: 0+40 +0 TLS +LOCAL  HIDDEN +9 sh1
- +40: 0+44 +0 TLS +LOCAL  HIDDEN +9 sh2
- +41: 0+54 +0 TLS +LOCAL  HIDDEN +9 sh6
- +42: 0+1c +0 TLS +GLOBAL DEFAULT +9 sg8
- +43: [0-9a-z]+ +0 OBJECT  GLOBAL DEFAULT  ABS _DYNAMIC
- +44: 0+8 +0 TLS +GLOBAL DEFAULT +9 sg3
- +45: 0+c +0 TLS +GLOBAL DEFAULT +9 sg4
- +46: 0+10 +0 TLS +GLOBAL DEFAULT +9 sg5
- +47: 0+ +0 NOTYPE  GLOBAL DEFAULT  UND __tls_get_offset
- +48: 0+ +0 TLS +GLOBAL DEFAULT +9 sg1
- +49: [0-9a-z]+ +0 FUNC +GLOBAL DEFAULT +7 fn1
- +50: [0-9a-z]+ +0 NOTYPE  GLOBAL DEFAULT  ABS __bss_start
- +51: 0+4 +0 TLS +GLOBAL DEFAULT +9 sg2
- +52: 0+14 +0 TLS +GLOBAL DEFAULT +9 sg6
- +53: 0+18 +0 TLS +GLOBAL DEFAULT +9 sg7
- +54: [0-9a-z]+ +0 NOTYPE  GLOBAL DEFAULT  ABS _edata
- +55: [0-9a-z]+ +0 OBJECT  GLOBAL DEFAULT  ABS _GLOBAL_OFFSET_TABLE_
- +56: [0-9a-z]+ +0 NOTYPE  GLOBAL DEFAULT  ABS _end
+ +[0-9]+: 0+ +0 NOTYPE  LOCAL  DEFAULT  UND 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +1 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +2 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +3 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +4 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +5 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +6 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +7 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +8 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +9 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +10 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +11 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +12 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +13 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +14 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +15 
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +16 
+ +[0-9]+: 0+20 +0 TLS +LOCAL  DEFAULT +8 sl1
+ +[0-9]+: 0+24 +0 TLS +LOCAL  DEFAULT +8 sl2
+ +[0-9]+: 0+28 +0 TLS +LOCAL  DEFAULT +8 sl3
+ +[0-9]+: 0+2c +0 TLS +LOCAL  DEFAULT +8 sl4
+ +[0-9]+: 0+30 +0 TLS +LOCAL  DEFAULT +8 sl5
+ +[0-9]+: 0+34 +0 TLS +LOCAL  DEFAULT +8 sl6
+ +[0-9]+: 0+38 +0 TLS +LOCAL  DEFAULT +8 sl7
+ +[0-9]+: 0+3c +0 TLS +LOCAL  DEFAULT +8 sl8
+ +[0-9]+: 0+60 +0 TLS +LOCAL  HIDDEN +9 sH1
+ +[0-9]+: 0+48 +0 TLS +LOCAL  HIDDEN +8 sh3
+ +[0-9]+: 0+64 +0 TLS +LOCAL  HIDDEN +9 sH2
+ +[0-9]+: 0+78 +0 TLS +LOCAL  HIDDEN +9 sH7
+ +[0-9]+: 0+58 +0 TLS +LOCAL  HIDDEN +8 sh7
+ +[0-9]+: 0+5c +0 TLS +LOCAL  HIDDEN +8 sh8
+ +[0-9]+: 0+6c +0 TLS +LOCAL  HIDDEN +9 sH4
+ +[0-9]+: 0+4c +0 TLS +LOCAL  HIDDEN +8 sh4
+ +[0-9]+: 0+68 +0 TLS +LOCAL  HIDDEN +9 sH3
+ +[0-9]+: 0+50 +0 TLS +LOCAL  HIDDEN +8 sh5
+ +[0-9]+: 0+70 +0 TLS +LOCAL  HIDDEN +9 sH5
+ +[0-9]+: 0+74 +0 TLS +LOCAL  HIDDEN +9 sH6
+ +[0-9]+: 0+7c +0 TLS +LOCAL  HIDDEN +9 sH8
+ +[0-9]+: 0+40 +0 TLS +LOCAL  HIDDEN +8 sh1
+ +[0-9]+: 0+44 +0 TLS +LOCAL  HIDDEN +8 sh2
+ +[0-9]+: 0+54 +0 TLS +LOCAL  HIDDEN +8 sh6
+ +[0-9]+: 0+1c +0 TLS +GLOBAL DEFAULT +8 sg8
+ +[0-9]+: [0-9a-f]+ +0 OBJECT  GLOBAL DEFAULT  ABS _DYNAMIC
+ +[0-9]+: 0+8 +0 TLS +GLOBAL DEFAULT +8 sg3
+ +[0-9]+: 0+c +0 TLS +GLOBAL DEFAULT +8 sg4
+ +[0-9]+: 0+10 +0 TLS +GLOBAL DEFAULT +8 sg5
+ +[0-9]+: 0+ +0 NOTYPE  GLOBAL DEFAULT  UND __tls_get_offset
+ +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT +8 sg1
+ +[0-9]+: [0-9a-f]+ +0 FUNC +GLOBAL DEFAULT +7 fn1
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS __bss_start
+ +[0-9]+: 0+4 +0 TLS +GLOBAL DEFAULT +8 sg2
+ +[0-9]+: 0+14 +0 TLS +GLOBAL DEFAULT +8 sg6
+ +[0-9]+: 0+18 +0 TLS +GLOBAL DEFAULT +8 sg7
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS _edata
+ +[0-9]+: [0-9a-f]+ +0 OBJECT  GLOBAL DEFAULT  ABS _GLOBAL_OFFSET_TABLE_
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS _end
index 4e1672d..267416e 100644 (file)
@@ -8,14 +8,14 @@
 .*: +file format elf64-s390
 
 Contents of section .got:
1b90 [0-9a-f]+ [0-9a-f]+ 00000000 00000000  .*
1ba0 00000000 00000000 [0-9a-f]+ [0-9a-f]+  .*
1bb0 00000000 00000000 00000000 00000020  .*
1bc0 00000000 00000000 00000000 00000000  .*
1bd0 00000000 00000000 00000000 00000000  .*
1be0 00000000 00000000 00000000 00000060  .*
1bf0 00000000 00000000 00000000 00000000  .*
1c00 00000000 00000000 00000000 00000000  .*
1c10 00000000 00000000 00000000 00000000  .*
1c20 00000000 00000000 00000000 00000000  .*
1c30 00000000 00000040 00000000 00000000  .*
[0-9a-f]+ [0-9a-f]+ [0-9a-f]+ 00000000 00000000  .*
[0-9a-f]+ 00000000 00000000 [0-9a-f]+ [0-9a-f]+  .*
[0-9a-f]+ 00000000 00000000 00000000 00000020  .*
[0-9a-f]+ 00000000 00000000 00000000 00000000  .*
[0-9a-f]+ 00000000 00000000 00000000 00000000  .*
[0-9a-f]+ 00000000 00000000 00000000 00000060  .*
[0-9a-f]+ 00000000 00000000 00000000 00000000  .*
[0-9a-f]+ 00000000 00000000 00000000 00000000  .*
[0-9a-f]+ 00000000 00000000 00000000 00000000  .*
[0-9a-f]+ 00000000 00000000 00000000 00000000  .*
[0-9a-f]+ 00000000 00000040 00000000 00000000  .*
index ba2b934..36623bb 100644 (file)
@@ -8,9 +8,9 @@
 .*: +file format elf64-s390
 
 Contents of section .tdata:
1a00 00000011 00000012 00000013 00000014  .*
1a10 00000015 00000016 00000017 00000018  .*
1a20 00000041 00000042 00000043 00000044  .*
1a30 00000045 00000046 00000047 00000048  .*
1a40 00000101 00000102 00000103 00000104  .*
1a50 00000105 00000106 00000107 00000108  .*
[0-9a-f]+ 00000011 00000012 00000013 00000014  .*
[0-9a-f]+ 00000015 00000016 00000017 00000018  .*
[0-9a-f]+ 00000041 00000042 00000043 00000044  .*
[0-9a-f]+ 00000045 00000046 00000047 00000048  .*
[0-9a-f]+ 00000101 00000102 00000103 00000104  .*
[0-9a-f]+ 00000105 00000106 00000107 00000108  .*
index a88cd1c..7950bad 100644 (file)
@@ -227,6 +227,7 @@ if ![ld_compile "$CC $CFLAGS $SHCFLAG" $srcdir/$subdir/main.c $tmpdir/mainnp.o]
            setup_xfail "sparc*-*-linux*"
        }
        setup_xfail "x86_64-*-linux*"
+       setup_xfail "s390x-*-linux*"
        shared_test shnp "shared (non PIC, load offset)" \
                mainnp.o sh1np.o sh2np.o shared \
                "-T $srcdir/$subdir/elf-offset.ld"
index c6aef68..58bb553 100644 (file)
@@ -24,7 +24,7 @@ Disassembly of section .text:
 #  GD -> IE because variable is not defined in executable
   401004:      64 48 8b 04 25 00 00[   ]+mov    %fs:0x0,%rax
   40100b:      00 00 *
-  40100d:      48 03 05 c4 11 10 00[   ]+add    1053124\(%rip\),%rax +# 5021d8 <_GLOBAL_OFFSET_TABLE_\+0x38>
+  40100d:      48 03 05 d4 03 10 00[   ]+add    1049556\(%rip\),%rax +# 5013e8 <.*>
 #                              -> R_X86_64_TPOFF64     sG1
   401014:      90[     ]+nop *
   401015:      90[     ]+nop *
@@ -34,7 +34,7 @@ Disassembly of section .text:
 #  the variable is referenced through IE too
   401018:      64 48 8b 04 25 00 00[   ]+mov    %fs:0x0,%rax
   40101f:      00 00 *
-  401021:      48 03 05 a0 11 10 00[   ]+add    1053088\(%rip\),%rax +# 5021c8 <_GLOBAL_OFFSET_TABLE_\+0x28>
+  401021:      48 03 05 b0 03 10 00[   ]+add    1049520\(%rip\),%rax +# 5013d8 <.*>
 #                              -> R_X86_64_TPOFF64     sG2
   401028:      90[     ]+nop *
   401029:      90[     ]+nop *
@@ -102,7 +102,7 @@ Disassembly of section .text:
   4010b3:      00 00 *
   4010b5:      90[     ]+nop *
   4010b6:      90[     ]+nop *
-  4010b7:      4c 03 0d 0a 11 10 00[   ]+add    1052938\(%rip\),%r9 +# 5021c8 <_GLOBAL_OFFSET_TABLE_\+0x28>
+  4010b7:      4c 03 0d 1a 03 10 00[   ]+add    1049370\(%rip\),%r9 +# 5013d8 <.*>
 #                              -> R_X86_64_TPOFF64     sG2
   4010be:      90[     ]+nop *
   4010bf:      90[     ]+nop *
@@ -143,7 +143,7 @@ Disassembly of section .text:
   401103:      90[     ]+nop *
 #  Direct access through %fs
 #  IE against global var
-  401104:      48 8b 0d b5 10 10 00[   ]+mov    1052853\(%rip\),%rcx +# 5021c0 <_GLOBAL_OFFSET_TABLE_\+0x20>
+  401104:      48 8b 0d c5 02 10 00[   ]+mov    1049285\(%rip\),%rcx +# 5013d0 <.*>
 #                              -> R_X86_64_TPOFF64     sG5
   40110b:      90[     ]+nop *
   40110c:      90[     ]+nop *
@@ -186,7 +186,7 @@ Disassembly of section .text:
   401147:      00 00 *
   401149:      90[     ]+nop *
   40114a:      90[     ]+nop *
-  40114b:      4c 03 1d 7e 10 10 00[   ]+add    1052798\(%rip\),%r11 +# 5021d0 <_GLOBAL_OFFSET_TABLE_\+0x30>
+  40114b:      4c 03 1d 8e 02 10 00[   ]+add    1049230\(%rip\),%r11 +# 5013e0 <.*>
 #                              -> R_X86_64_TPOFF64     sG6
   401152:      90[     ]+nop *
   401153:      90[     ]+nop *
index 9f163d9..490010f 100644 (file)
@@ -5,7 +5,7 @@
 #readelf: -WSsrl
 #target: x86_64-*-*
 
-There are 18 section headers, starting at offset 0x[0-9a-f]+:
+There are 19 section headers, starting at offset 0x[0-9a-f]+:
 
 Section Headers:
   \[Nr\] Name +Type +Address +Off +Size +ES Flg Lk Inf Al
@@ -18,15 +18,16 @@ Section Headers:
   \[ 6\] .rela.plt +.*
   \[ 7\] .plt +.*
   \[ 8\] .text +PROGBITS +0+401000 0+1000 0+22a 00 +AX +0 +0 +4096
-  \[ 9\] .data +.*
-  \[10\] .tdata +PROGBITS +0+502000 0+2000 0+60 00 WAT +0 +0 +1
-  \[11\] .tbss +NOBITS +0+502060 0+2060 0+40 00 WAT +0 +0 +1
-  \[12\] .dynamic +DYNAMIC +0+502060 0+2060 0+140 10 +WA +4 +0 +8
-  \[13\] .got +PROGBITS +0+5021a0 0+21a0 0+40 08 +WA +0 +0 +8
-  \[14\] .bss +.*
-  \[15\] .shstrtab +.*
-  \[16\] .symtab +.*
-  \[17\] .strtab +.*
+  \[ 9\] .tdata +PROGBITS +0+50122a 0+122a 0+60 00 WAT +0 +0 +1
+  \[10\] .tbss +NOBITS +0+50128a 0+128a 0+40 00 WAT +0 +0 +1
+  \[11\] .dynamic +DYNAMIC +0+501290 0+1290 0+140 10 +WA +4 +0 +8
+  \[12\] .got +PROGBITS +0+5013d0 0+13d0 0+20 08 +WA +0 +0 +8
+  \[13\] .got.plt +PROGBITS +0+5013f0 0+13f0 0+20 08 +WA +0 +0 +8
+  \[14\] .data +.*
+  \[15\] .bss +.*
+  \[16\] .shstrtab +.*
+  \[17\] .symtab +.*
+  \[18\] .strtab +.*
 Key to Flags:
 .*
 .*
@@ -42,25 +43,25 @@ Program Headers:
   INTERP +0x0+190 0x0+400190 0x0+400190 0x0+f 0x0+f R +0x1
 .*Requesting program interpreter.*
   LOAD +0x0+ 0x0+400000 0x0+400000 0x0+122a 0x0+122a R E 0x100000
-  LOAD +0x0+2000 0x0+502000 0x0+502000 0x0+1e0 0x0+1e0 RW  0x100000
-  DYNAMIC +0x0+2060 0x0+502060 0x0+502060 0x0+140 0x0+140 RW  0x8
-  TLS +0x0+2000 0x0+502000 0x0+502000 0x0+60 0x0+a0 R +0x1
+  LOAD +0x0+122a 0x0+50122a 0x0+50122a 0x0+dd6 0x0+dd6 RW  0x100000
+  DYNAMIC +0x0+1290 0x0+501290 0x0+501290 0x0+140 0x0+140 RW  0x8
+  TLS +0x0+122a 0x0+50122a 0x0+50122a 0x0+60 0x0+a0 R +0x1
 
  Section to Segment mapping:
   Segment Sections...
    00 *
    01 +.interp *
    02 +.interp .hash .dynsym .dynstr .rela.dyn .rela.plt .plt .text *
-   03 +.tdata .tbss .dynamic .got *
-   04 +.tbss .dynamic *
+   03 +.tdata .tbss .dynamic .got .got.plt *
+   04 +.dynamic *
    05 +.tdata .tbss *
 
 Relocation section '.rela.dyn' at offset 0x358 contains 4 entries:
  +Offset +Info +Type +Symbol's Value  Symbol's Name \+ Addend
-0+5021c0  0+100000012 R_X86_64_TPOFF64 +0+ sG5 \+ 0
-0+5021c8  0+300000012 R_X86_64_TPOFF64 +0+ sG2 \+ 0
-0+5021d0  0+600000012 R_X86_64_TPOFF64 +0+ sG6 \+ 0
-0+5021d8  0+700000012 R_X86_64_TPOFF64 +0+ sG1 \+ 0
+0+5013d0  0+100000012 R_X86_64_TPOFF64 +0+ sG5 \+ 0
+0+5013d8  0+300000012 R_X86_64_TPOFF64 +0+ sG2 \+ 0
+0+5013e0  0+600000012 R_X86_64_TPOFF64 +0+ sG6 \+ 0
+0+5013e8  0+700000012 R_X86_64_TPOFF64 +0+ sG1 \+ 0
 
 Relocation section '.rela.plt' at offset 0x3b8 contains 1 entries:
  +Offset +Info +Type +Symbol's Value  Symbol's Name \+ Addend
@@ -68,87 +69,88 @@ Relocation section '.rela.plt' at offset 0x3b8 contains 1 entries:
 
 Symbol table '.dynsym' contains 11 entries:
  +Num: +Value +Size Type +Bind +Vis +Ndx Name
- +0: 0+ +0 NOTYPE  LOCAL  DEFAULT  UND *
- +1: 0+ +0 TLS +GLOBAL DEFAULT  UND sG5
- +2: 0+502060 +0 OBJECT  GLOBAL DEFAULT  ABS _DYNAMIC
- +3: 0+ +0 TLS +GLOBAL DEFAULT  UND sG2
- +4: 0+[0-9a-f]+ +0 FUNC +GLOBAL DEFAULT  UND __tls_get_addr
- +5: 0+[0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS __bss_start
- +6: 0+ +0 TLS +GLOBAL DEFAULT  UND sG6
- +7: 0+ +0 TLS +GLOBAL DEFAULT  UND sG1
- +8: 0+[0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS _edata
- +9: 0+5021a0 +0 OBJECT  GLOBAL DEFAULT  ABS _GLOBAL_OFFSET_TABLE_
- +10: 0+[0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS _end
+ +[0-9]+: 0+ +0 NOTYPE  LOCAL  DEFAULT  UND *
+ +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT  UND sG5
+ +[0-9]+: 0+501290 +0 OBJECT  GLOBAL DEFAULT  ABS _DYNAMIC
+ +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT  UND sG2
+ +[0-9]+: 0+[0-9a-f]+ +0 FUNC +GLOBAL DEFAULT  UND __tls_get_addr
+ +[0-9]+: 0+[0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS __bss_start
+ +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT  UND sG6
+ +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT  UND sG1
+ +[0-9]+: 0+[0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS _edata
+ +[0-9]+: 0+5013f0 +0 OBJECT  GLOBAL DEFAULT  ABS _GLOBAL_OFFSET_TABLE_
+ +[0-9]+: 0+[0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS _end
 
-Symbol table '.symtab' contains 70 entries:
+Symbol table '.symtab' contains 71 entries:
  +Num: +Value +Size Type +Bind +Vis +Ndx Name
- +0: 0+ +0 NOTYPE  LOCAL  DEFAULT  UND *
- +1: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +1 *
- +2: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +2 *
- +3: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +3 *
- +4: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +4 *
- +5: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +5 *
- +6: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +6 *
- +7: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +7 *
- +8: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +8 *
- +9: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +9 *
- +10: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +10 *
- +11: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +11 *
- +12: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +12 *
- +13: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +13 *
- +14: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +14 *
- +15: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +15 *
- +16: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +16 *
- +17: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +17 *
- +18: 0+20 +0 TLS +LOCAL  DEFAULT +10 sl1
- +19: 0+24 +0 TLS +LOCAL  DEFAULT +10 sl2
- +20: 0+28 +0 TLS +LOCAL  DEFAULT +10 sl3
- +21: 0+2c +0 TLS +LOCAL  DEFAULT +10 sl4
- +22: 0+30 +0 TLS +LOCAL  DEFAULT +10 sl5
- +23: 0+34 +0 TLS +LOCAL  DEFAULT +10 sl6
- +24: 0+38 +0 TLS +LOCAL  DEFAULT +10 sl7
- +25: 0+3c +0 TLS +LOCAL  DEFAULT +10 sl8
- +26: 0+80 +0 TLS +LOCAL  DEFAULT +11 bl1
- +27: 0+84 +0 TLS +LOCAL  DEFAULT +11 bl2
- +28: 0+88 +0 TLS +LOCAL  DEFAULT +11 bl3
- +29: 0+8c +0 TLS +LOCAL  DEFAULT +11 bl4
- +30: 0+90 +0 TLS +LOCAL  DEFAULT +11 bl5
- +31: 0+94 +0 TLS +LOCAL  DEFAULT +11 bl6
- +32: 0+98 +0 TLS +LOCAL  DEFAULT +11 bl7
- +33: 0+9c +0 TLS +LOCAL  DEFAULT +11 bl8
- +34: 0+1c +0 TLS +GLOBAL DEFAULT +10 sg8
- +35: 0+7c +0 TLS +GLOBAL DEFAULT +11 bg8
- +36: 0+74 +0 TLS +GLOBAL DEFAULT +11 bg6
- +37: 0+ +0 TLS +GLOBAL DEFAULT  UND sG5
- +38: 0+68 +0 TLS +GLOBAL DEFAULT +11 bg3
- +39: 0+502060 +0 OBJECT  GLOBAL DEFAULT  ABS _DYNAMIC
- +40: 0+8 +0 TLS +GLOBAL DEFAULT +10 sg3
- +41: 0+48 +0 TLS +GLOBAL HIDDEN +10 sh3
- +42: 0+ +0 TLS +GLOBAL DEFAULT  UND sG2
- +43: 0+c +0 TLS +GLOBAL DEFAULT +10 sg4
- +44: 0+10 +0 TLS +GLOBAL DEFAULT +10 sg5
- +45: 0+70 +0 TLS +GLOBAL DEFAULT +11 bg5
- +46: [0-9a-f]+ +0 FUNC +GLOBAL DEFAULT  UND __tls_get_addr
- +47: 0+58 +0 TLS +GLOBAL HIDDEN +10 sh7
- +48: 0+5c +0 TLS +GLOBAL HIDDEN +10 sh8
- +49: 0+ +0 TLS +GLOBAL DEFAULT +10 sg1
- +50: 0+40113c +0 FUNC +GLOBAL DEFAULT +8 _start
- +51: 0+4c +0 TLS +GLOBAL HIDDEN +10 sh4
- +52: 0+78 +0 TLS +GLOBAL DEFAULT +11 bg7
- +53: 0+50 +0 TLS +GLOBAL HIDDEN +10 sh5
- +54: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS __bss_start
- +55: 0+ +0 TLS +GLOBAL DEFAULT  UND sG6
- +56: 0+401000 +0 FUNC +GLOBAL DEFAULT +8 fn2
- +57: 0+4 +0 TLS +GLOBAL DEFAULT +10 sg2
- +58: 0+ +0 TLS +GLOBAL DEFAULT  UND sG1
- +59: 0+40 +0 TLS +GLOBAL HIDDEN +10 sh1
- +60: 0+14 +0 TLS +GLOBAL DEFAULT +10 sg6
- +61: 0+18 +0 TLS +GLOBAL DEFAULT +10 sg7
- +62: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS _edata
- +63: 0+5021a0 +0 OBJECT  GLOBAL DEFAULT  ABS _GLOBAL_OFFSET_TABLE_
- +64: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS _end
- +65: 0+44 +0 TLS +GLOBAL HIDDEN +10 sh2
- +66: 0+54 +0 TLS +GLOBAL HIDDEN +10 sh6
- +67: 0+64 +0 TLS +GLOBAL DEFAULT +11 bg2
- +68: 0+60 +0 TLS +GLOBAL DEFAULT +11 bg1
- +69: 0+6c +0 TLS +GLOBAL DEFAULT +11 bg4
+ +[0-9]+: 0+ +0 NOTYPE  LOCAL  DEFAULT  UND *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +1 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +2 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +3 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +4 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +5 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +6 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +7 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +8 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +9 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +10 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +11 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +12 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +13 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +14 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +15 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +16 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +17 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +18 *
+ +[0-9]+: 0+20 +0 TLS +LOCAL  DEFAULT +9 sl1
+ +[0-9]+: 0+24 +0 TLS +LOCAL  DEFAULT +9 sl2
+ +[0-9]+: 0+28 +0 TLS +LOCAL  DEFAULT +9 sl3
+ +[0-9]+: 0+2c +0 TLS +LOCAL  DEFAULT +9 sl4
+ +[0-9]+: 0+30 +0 TLS +LOCAL  DEFAULT +9 sl5
+ +[0-9]+: 0+34 +0 TLS +LOCAL  DEFAULT +9 sl6
+ +[0-9]+: 0+38 +0 TLS +LOCAL  DEFAULT +9 sl7
+ +[0-9]+: 0+3c +0 TLS +LOCAL  DEFAULT +9 sl8
+ +[0-9]+: 0+80 +0 TLS +LOCAL  DEFAULT +10 bl1
+ +[0-9]+: 0+84 +0 TLS +LOCAL  DEFAULT +10 bl2
+ +[0-9]+: 0+88 +0 TLS +LOCAL  DEFAULT +10 bl3
+ +[0-9]+: 0+8c +0 TLS +LOCAL  DEFAULT +10 bl4
+ +[0-9]+: 0+90 +0 TLS +LOCAL  DEFAULT +10 bl5
+ +[0-9]+: 0+94 +0 TLS +LOCAL  DEFAULT +10 bl6
+ +[0-9]+: 0+98 +0 TLS +LOCAL  DEFAULT +10 bl7
+ +[0-9]+: 0+9c +0 TLS +LOCAL  DEFAULT +10 bl8
+ +[0-9]+: 0+1c +0 TLS +GLOBAL DEFAULT +9 sg8
+ +[0-9]+: 0+7c +0 TLS +GLOBAL DEFAULT +10 bg8
+ +[0-9]+: 0+74 +0 TLS +GLOBAL DEFAULT +10 bg6
+ +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT  UND sG5
+ +[0-9]+: 0+68 +0 TLS +GLOBAL DEFAULT +10 bg3
+ +[0-9]+: 0+501290 +0 OBJECT  GLOBAL DEFAULT  ABS _DYNAMIC
+ +[0-9]+: 0+8 +0 TLS +GLOBAL DEFAULT +9 sg3
+ +[0-9]+: 0+48 +0 TLS +GLOBAL HIDDEN +9 sh3
+ +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT  UND sG2
+ +[0-9]+: 0+c +0 TLS +GLOBAL DEFAULT +9 sg4
+ +[0-9]+: 0+10 +0 TLS +GLOBAL DEFAULT +9 sg5
+ +[0-9]+: 0+70 +0 TLS +GLOBAL DEFAULT +10 bg5
+ +[0-9]+: [0-9a-f]+ +0 FUNC +GLOBAL DEFAULT  UND __tls_get_addr
+ +[0-9]+: 0+58 +0 TLS +GLOBAL HIDDEN +9 sh7
+ +[0-9]+: 0+5c +0 TLS +GLOBAL HIDDEN +9 sh8
+ +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT +9 sg1
+ +[0-9]+: 0+40113c +0 FUNC +GLOBAL DEFAULT +8 _start
+ +[0-9]+: 0+4c +0 TLS +GLOBAL HIDDEN +9 sh4
+ +[0-9]+: 0+78 +0 TLS +GLOBAL DEFAULT +10 bg7
+ +[0-9]+: 0+50 +0 TLS +GLOBAL HIDDEN +9 sh5
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS __bss_start
+ +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT  UND sG6
+ +[0-9]+: 0+401000 +0 FUNC +GLOBAL DEFAULT +8 fn2
+ +[0-9]+: 0+4 +0 TLS +GLOBAL DEFAULT +9 sg2
+ +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT  UND sG1
+ +[0-9]+: 0+40 +0 TLS +GLOBAL HIDDEN +9 sh1
+ +[0-9]+: 0+14 +0 TLS +GLOBAL DEFAULT +9 sg6
+ +[0-9]+: 0+18 +0 TLS +GLOBAL DEFAULT +9 sg7
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS _edata
+ +[0-9]+: 0+5013f0 +0 OBJECT  GLOBAL DEFAULT  ABS _GLOBAL_OFFSET_TABLE_
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS _end
+ +[0-9]+: 0+44 +0 TLS +GLOBAL HIDDEN +9 sh2
+ +[0-9]+: 0+54 +0 TLS +GLOBAL HIDDEN +9 sh6
+ +[0-9]+: 0+64 +0 TLS +GLOBAL DEFAULT +10 bg2
+ +[0-9]+: 0+60 +0 TLS +GLOBAL DEFAULT +10 bg1
+ +[0-9]+: 0+6c +0 TLS +GLOBAL DEFAULT +10 bg4
index d378325..8095b59 100644 (file)
@@ -8,7 +8,5 @@
 .*: +file format elf64-x86-64
 
 Contents of section .got:
- 5021a0 [0-9a-f]+ [0-9a-f]+ 00000000 00000000  .*
- 5021b0 00000000 00000000 [0-9a-f]+ [0-9a-f]+  .*
- 5021c0 00000000 00000000 00000000 00000000  .*
- 5021d0 00000000 00000000 00000000 00000000  .*
+ 5013d0 00000000 00000000 00000000 00000000  .*
+ 5013e0 00000000 00000000 00000000 00000000  .*
index f2ba1b4..e0d7598 100644 (file)
@@ -8,9 +8,9 @@
 .*: +file format elf64-x86-64
 
 Contents of section .tdata:
- 502000 11000000 12000000 13000000 14000000  .*
- 502010 15000000 16000000 17000000 18000000  .*
- 502020 41000000 42000000 43000000 44000000  .*
- 502030 45000000 46000000 47000000 48000000  .*
- 502040 01010000 02010000 03010000 04010000  .*
- 502050 05010000 06010000 07010000 08010000  .*
+ 50122a 11000000 12000000 13000000 14000000  .*
+ 50123a 15000000 16000000 17000000 18000000  .*
+ 50124a 41000000 42000000 43000000 44000000  .*
+ 50125a 45000000 46000000 47000000 48000000  .*
+ 50126a 01010000 02010000 03010000 04010000  .*
+ 50127a 05010000 06010000 07010000 08010000  .*
index 69ccdfd..f5139dc 100644 (file)
@@ -17,12 +17,12 @@ Disassembly of section .text:
  +1006:        90[     ]+nop *
  +1007:        90[     ]+nop *
 #  GD
- +1008:        66 48 8d 3d f0 11 10[   ]+lea    1053168\(%rip\),%rdi +# 102200 <_GLOBAL_OFFSET_TABLE_\+0x70>
+ +1008:        66 48 8d 3d 80 03 10[   ]+lea    1049472\(%rip\),%rdi +# 101390 <.*>
  +100f:        00 *
 #                              -> R_X86_64_DTPMOD64    sg1
  +1010:        66[     ]+data16
  +1011:        66[     ]+data16
- +1012:        48 e8 68 f6 ff ff[      ]+rex64 callq  [0-9a-f]+ <.*>
+ +1012:        48 e8 88 f5 ff ff[      ]+rex64 callq  [0-9a-f]+ <.*>
 #                              -> R_X86_64_JUMP_SLOT   __tls_get_addr
  +1018:        90[     ]+nop *
  +1019:        90[     ]+nop *
@@ -31,19 +31,19 @@ Disassembly of section .text:
 #  GD -> IE because variable is referenced through IE too
  +101c:        64 48 8b 04 25 00 00[   ]+mov    %fs:0x0,%rax
  +1023:        00 00 *
- +1025:        48 03 05 f4 11 10 00[   ]+add    1053172\(%rip\),%rax +# 102220 <_GLOBAL_OFFSET_TABLE_\+0x90>
+ +1025:        48 03 05 84 03 10 00[   ]+add    1049476\(%rip\),%rax +# 1013b0 <.*>
 #                              -> R_X86_64_TPOFF64     sg2
  +102c:        90[     ]+nop *
  +102d:        90[     ]+nop *
  +102e:        90[     ]+nop *
  +102f:        90[     ]+nop *
 #  GD against local variable
- +1030:        66 48 8d 3d 78 11 10[   ]+lea    1053048\(%rip\),%rdi +# 1021b0 <_GLOBAL_OFFSET_TABLE_\+0x20>
+ +1030:        66 48 8d 3d 08 03 10[   ]+lea    1049352\(%rip\),%rdi +# 101340 <.*>
  +1037:        00 *
 #                              -> R_X86_64_DTPMOD64    [0 0x2000000000000000]
  +1038:        66[     ]+data16
  +1039:        66[     ]+data16
- +103a:        48 e8 40 f6 ff ff[      ]+rex64 callq  [0-9a-f]+ <.*>
+ +103a:        48 e8 60 f5 ff ff[      ]+rex64 callq  [0-9a-f]+ <.*>
 #                              -> R_X86_64_JUMP_SLOT   __tls_get_addr
  +1040:        90[     ]+nop *
  +1041:        90[     ]+nop *
@@ -52,19 +52,19 @@ Disassembly of section .text:
 #  GD -> IE against local variable referenced through IE too
  +1044:        64 48 8b 04 25 00 00[   ]+mov    %fs:0x0,%rax
  +104b:        00 00 *
- +104d:        48 03 05 6c 11 10 00[   ]+add    1053036\(%rip\),%rax +# 1021c0 <_GLOBAL_OFFSET_TABLE_\+0x30>
+ +104d:        48 03 05 fc 02 10 00[   ]+add    1049340\(%rip\),%rax +# 101350 <.*>
 #                              -> R_X86_64_TPOFF64     *ABS*+0x24
  +1054:        90[     ]+nop *
  +1055:        90[     ]+nop *
  +1056:        90[     ]+nop *
  +1057:        90[     ]+nop *
 #  GD against hidden and local variable
- +1058:        66 48 8d 3d c8 11 10[   ]+lea    1053128\(%rip\),%rdi +# 102228 <_GLOBAL_OFFSET_TABLE_\+0x98>
+ +1058:        66 48 8d 3d 58 03 10[   ]+lea    1049432\(%rip\),%rdi +# 1013b8 <.*>
  +105f:        00 *
 #                              -> R_X86_64_DTPMOD64    [0 0x4000000000000000]
  +1060:        66[     ]+data16
  +1061:        66[     ]+data16
- +1062:        48 e8 18 f6 ff ff[      ]+rex64 callq  [0-9a-f]+ <.*>
+ +1062:        48 e8 38 f5 ff ff[      ]+rex64 callq  [0-9a-f]+ <.*>
 #                              -> R_X86_64_JUMP_SLOT   __tls_get_addr
  +1068:        90[     ]+nop *
  +1069:        90[     ]+nop *
@@ -73,19 +73,19 @@ Disassembly of section .text:
 #  GD -> IE against hidden and local variable referenced through IE too
  +106c:        64 48 8b 04 25 00 00[   ]+mov    %fs:0x0,%rax
  +1073:        00 00 *
- +1075:        48 03 05 bc 11 10 00[   ]+add    1053116\(%rip\),%rax +# 102238 <_GLOBAL_OFFSET_TABLE_\+0xa8>
+ +1075:        48 03 05 4c 03 10 00[   ]+add    1049420\(%rip\),%rax +# 1013c8 <.*>
 #                              -> R_X86_64_TPOFF64     *ABS*+0x44
  +107c:        90[     ]+nop *
  +107d:        90[     ]+nop *
  +107e:        90[     ]+nop *
  +107f:        90[     ]+nop *
 #  GD against hidden but not local variable
- +1080:        66 48 8d 3d 58 11 10[   ]+lea    1053016\(%rip\),%rdi +# 1021e0 <_GLOBAL_OFFSET_TABLE_\+0x50>
+ +1080:        66 48 8d 3d e8 02 10[   ]+lea    1049320\(%rip\),%rdi +# 101370 <.*>
  +1087:        00 *
 #                              -> R_X86_64_DTPMOD64    [0 0x6000000000000000]
  +1088:        66[     ]+data16
  +1089:        66[     ]+data16
- +108a:        48 e8 f0 f5 ff ff[      ]+rex64 callq  [0-9a-f]+ <.*>
+ +108a:        48 e8 10 f5 ff ff[      ]+rex64 callq  [0-9a-f]+ <.*>
 #                              -> R_X86_64_JUMP_SLOT   __tls_get_addr
  +1090:        90[     ]+nop *
  +1091:        90[     ]+nop *
@@ -94,16 +94,16 @@ Disassembly of section .text:
 #  GD -> IE against hidden but not local variable referenced through IE too
  +1094:        64 48 8b 04 25 00 00[   ]+mov    %fs:0x0,%rax
  +109b:        00 00 *
- +109d:        48 03 05 4c 11 10 00[   ]+add    1053004\(%rip\),%rax +# 1021f0 <_GLOBAL_OFFSET_TABLE_\+0x60>
+ +109d:        48 03 05 dc 02 10 00[   ]+add    1049308\(%rip\),%rax +# 101380 <.*>
 #                              -> R_X86_64_TPOFF64     *ABS*+0x64
  +10a4:        90[     ]+nop *
  +10a5:        90[     ]+nop *
  +10a6:        90[     ]+nop *
  +10a7:        90[     ]+nop *
 #  LD
- +10a8:        48 8d 3d 21 11 10 00[   ]+lea    1052961\(%rip\),%rdi +# 1021d0 <_GLOBAL_OFFSET_TABLE_\+0x40>
+ +10a8:        48 8d 3d b1 02 10 00[   ]+lea    1049265\(%rip\),%rdi +# 101360 <.*>
 #                              -> R_X86_64_DTPMOD64    [0 0x000000000000000]
- +10af:        e8 cc f5 ff ff[         ]+callq  [0-9a-f]+ <.*>
+ +10af:        e8 ec f4 ff ff[         ]+callq  [0-9a-f]+ <.*>
 #                              -> R_X86_64_JUMP_SLOT   __tls_get_addr
  +10b4:        90[     ]+nop *
  +10b5:        90[     ]+nop *
@@ -116,9 +116,9 @@ Disassembly of section .text:
  +10c8:        90[     ]+nop *
  +10c9:        90[     ]+nop *
 #  LD against hidden and local variables
- +10ca:        48 8d 3d ff 10 10 00[   ]+lea    1052927\(%rip\),%rdi +# 1021d0 <_GLOBAL_OFFSET_TABLE_\+0x40>
+ +10ca:        48 8d 3d 8f 02 10 00[   ]+lea    1049231\(%rip\),%rdi +# 101360 <.*>
 #                              -> R_X86_64_DTPMOD64    [0 0x000000000000000]
- +10d1:        e8 aa f5 ff ff[         ]+callq  [0-9a-f]+ <.*>
+ +10d1:        e8 ca f4 ff ff[         ]+callq  [0-9a-f]+ <.*>
 #                              -> R_X86_64_JUMP_SLOT   __tls_get_addr
  +10d6:        90[     ]+nop *
  +10d7:        90[     ]+nop *
@@ -131,9 +131,9 @@ Disassembly of section .text:
  +10ea:        90[     ]+nop *
  +10eb:        90[     ]+nop *
 #  LD against hidden but not local variables
- +10ec:        48 8d 3d dd 10 10 00[   ]+lea    1052893\(%rip\),%rdi +# 1021d0 <_GLOBAL_OFFSET_TABLE_\+0x40>
+ +10ec:        48 8d 3d 6d 02 10 00[   ]+lea    1049197\(%rip\),%rdi +# 101360 <.*>
 #                              -> R_X86_64_DTPMOD64    [0 0x000000000000000]
- +10f3:        e8 88 f5 ff ff[         ]+callq  [0-9a-f]+ <.*>
+ +10f3:        e8 a8 f4 ff ff[         ]+callq  [0-9a-f]+ <.*>
 #                              -> R_X86_64_JUMP_SLOT   __tls_get_addr
  +10f8:        90[     ]+nop *
  +10f9:        90[     ]+nop *
@@ -148,7 +148,7 @@ Disassembly of section .text:
  +1113:        00 00 *
  +1115:        90[     ]+nop *
  +1116:        90[     ]+nop *
- +1117:        48 03 0d 02 11 10 00[   ]+add    1052930\(%rip\),%rcx +# 102220 <_GLOBAL_OFFSET_TABLE_\+0x90>
+ +1117:        48 03 0d 92 02 10 00[   ]+add    1049234\(%rip\),%rcx +# 1013b0 <.*>
 #                              -> R_X86_64_TPOFF64     sg2
  +111e:        90[     ]+nop *
  +111f:        90[     ]+nop *
@@ -159,7 +159,7 @@ Disassembly of section .text:
  +1129:        00 00 *
  +112b:        90[     ]+nop *
  +112c:        90[     ]+nop *
- +112d:        4c 03 35 8c 10 10 00[   ]+add    1052812\(%rip\),%r14 +# 1021c0 <_GLOBAL_OFFSET_TABLE_\+0x30>
+ +112d:        4c 03 35 1c 02 10 00[   ]+add    1049116\(%rip\),%r14 +# 101350 <.*>
 #                              -> R_X86_64_TPOFF64     *ABS*+0x24
  +1134:        90[     ]+nop *
  +1135:        90[     ]+nop *
@@ -170,7 +170,7 @@ Disassembly of section .text:
  +113f:        00 00 *
  +1141:        90[     ]+nop *
  +1142:        90[     ]+nop *
- +1143:        48 03 0d ee 10 10 00[   ]+add    1052910\(%rip\),%rcx +# 102238 <_GLOBAL_OFFSET_TABLE_\+0xa8>
+ +1143:        48 03 0d 7e 02 10 00[   ]+add    1049214\(%rip\),%rcx +# 1013c8 <.*>
 #                              -> R_X86_64_TPOFF64     *ABS*+0x44
  +114a:        90[     ]+nop *
  +114b:        90[     ]+nop *
@@ -181,7 +181,7 @@ Disassembly of section .text:
  +1155:        00 00 *
  +1157:        90[     ]+nop *
  +1158:        90[     ]+nop *
- +1159:        48 03 0d 90 10 10 00[   ]+add    1052816\(%rip\),%rcx +# 1021f0 <_GLOBAL_OFFSET_TABLE_\+0x60>
+ +1159:        48 03 0d 20 02 10 00[   ]+add    1049120\(%rip\),%rcx +# 101380 <.*>
 #                              -> R_X86_64_TPOFF64     *ABS*+0x64
  +1160:        90[     ]+nop *
  +1161:        90[     ]+nop *
@@ -189,7 +189,7 @@ Disassembly of section .text:
  +1163:        90[     ]+nop *
 #  Direct access through %fs
 #  IE against global var
- +1164:        48 8b 0d 8d 10 10 00[   ]+mov    1052813\(%rip\),%rcx +# 1021f8 <_GLOBAL_OFFSET_TABLE_\+0x68>
+ +1164:        48 8b 0d 1d 02 10 00[   ]+mov    1049117\(%rip\),%rcx +# 101388 <.*>
 #                              -> R_X86_64_TPOFF64     sg5
  +116b:        90[     ]+nop *
  +116c:        90[     ]+nop *
@@ -199,7 +199,7 @@ Disassembly of section .text:
  +1173:        90[     ]+nop *
  +1174:        90[     ]+nop *
 #  IE against local var
- +1175:        4c 8b 15 4c 10 10 00[   ]+mov    1052748\(%rip\),%r10 +# 1021c8 <_GLOBAL_OFFSET_TABLE_\+0x38>
+ +1175:        4c 8b 15 dc 01 10 00[   ]+mov    1049052\(%rip\),%r10 +# 101358 <.*>
 #                              -> R_X86_64_TPOFF64     *ABS*+0x30
  +117c:        90[     ]+nop *
  +117d:        90[     ]+nop *
@@ -209,7 +209,7 @@ Disassembly of section .text:
  +1184:        90[     ]+nop *
  +1185:        90[     ]+nop *
 #  IE against hidden and local var
- +1186:        48 8b 15 83 10 10 00[   ]+mov    1052803\(%rip\),%rdx +# 102210 <_GLOBAL_OFFSET_TABLE_\+0x80>
+ +1186:        48 8b 15 13 02 10 00[   ]+mov    1049107\(%rip\),%rdx +# 1013a0 <.*>
 #                              -> R_X86_64_TPOFF64     *ABS*+0x50
  +118d:        90[     ]+nop *
  +118e:        90[     ]+nop *
@@ -219,7 +219,7 @@ Disassembly of section .text:
  +1195:        90[     ]+nop *
  +1196:        90[     ]+nop *
 #  IE against hidden but not local var
- +1197:        48 8b 0d 7a 10 10 00[   ]+mov    1052794\(%rip\),%rcx +# 102218 <_GLOBAL_OFFSET_TABLE_\+0x88>
+ +1197:        48 8b 0d 0a 02 10 00[   ]+mov    1049098\(%rip\),%rcx +# 1013a8 <.*>
 #                              -> R_X86_64_TPOFF64     *ABS*+0x70
  +119e:        90[     ]+nop *
  +119f:        90[     ]+nop *
index d8190db..029fa68 100644 (file)
@@ -5,7 +5,7 @@
 #readelf: -WSsrl
 #target: x86_64-*-*
 
-There are 17 section headers, starting at offset 0x[0-9a-f]+:
+There are 18 section headers, starting at offset 0x[0-9a-f]+:
 
 Section Headers:
   \[Nr\] Name +Type +Address +Off +Size +ES Flg Lk Inf Al
@@ -17,15 +17,16 @@ Section Headers:
   \[ 5\] .rela.plt +.*
   \[ 6\] .plt +.*
   \[ 7\] .text +PROGBITS +0+1000 0+1000 0+1ac 00 +AX +0 +0 4096
-  \[ 8\] .data +.*
-  \[ 9\] .tdata +PROGBITS +0+102000 0+2000 0+60 00 WAT +0 +0 +1
-  \[10\] .tbss +NOBITS +0+102060 0+2060 0+20 00 WAT +0 +0 +1
-  \[11\] .dynamic +DYNAMIC +0+102060 0+2060 0+130 10 +WA +3 +0 +8
-  \[12\] .got +PROGBITS +0+102190 0+2190 0+b0 08 +WA +0 +0 +8
-  \[13\] .bss +.*
-  \[14\] .shstrtab +.*
-  \[15\] .symtab +.*
-  \[16\] .strtab +.*
+  \[ 8\] .tdata +PROGBITS +0+1011ac 0+11ac 0+60 00 WAT +0 +0 +1
+  \[ 9\] .tbss +NOBITS +0+10120c 0+120c 0+20 00 WAT +0 +0 +1
+  \[10\] .dynamic +DYNAMIC +0+101210 0+1210 0+130 10 +WA +3 +0 +8
+  \[11\] .got +PROGBITS +0+101340 0+1340 0+90 08 +WA +0 +0 +8
+  \[12\] .got.plt +PROGBITS +0+1013d0 0+13d0 0+20 08 +WA +0 +0 +8
+  \[13\] .data +.*
+  \[14\] .bss +.*
+  \[15\] .shstrtab +.*
+  \[16\] .symtab +.*
+  \[17\] .strtab +.*
 Key to Flags:
 .*
 .*
@@ -38,125 +39,118 @@ There are 4 program headers, starting at offset [0-9]+
 Program Headers:
   Type +Offset +VirtAddr +PhysAddr +FileSiz +MemSiz +Flg Align
   LOAD +0x0+ 0x0+ 0x0+ 0x[0-9a-f]+ 0x[0-9a-f]+ R E 0x100000
-  LOAD +0x0+2000 0x0+102000 0x0+102000 0x0+240 0x0+240 RW +0x100000
-  DYNAMIC +0x0+2060 0x0+102060 0x0+102060 0x0+130 0x0+130 RW +0x8
-  TLS +0x0+2000 0x0+102000 0x0+102000 0x0+60 0x0+80 R +0x1
+  LOAD +0x0+11ac 0x0+1011ac 0x0+1011ac 0x0+e54 0x0+e54 RW +0x100000
+  DYNAMIC +0x0+1210 0x0+101210 0x0+101210 0x0+130 0x0+130 RW +0x8
+  TLS +0x0+11ac 0x0+1011ac 0x0+1011ac 0x0+60 0x0+80 R +0x1
 
  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 .tbss .dynamic .got .got.plt *
+   02 +.dynamic *
    03 +.tdata .tbss *
 
 Relocation section '.rela.dyn' at offset 0x[0-9a-f]+ contains 14 entries:
  +Offset +Info +Type +Symbol's Value +Symbol's Name \+ Addend
-0+1021b0  0+10 R_X86_64_DTPMOD64 +0+
-0+1021c0  0+12 R_X86_64_TPOFF64 +0+24
-0+1021c8  0+12 R_X86_64_TPOFF64 +0+30
-0+1021d0  0+10 R_X86_64_DTPMOD64 +0+
-0+1021e0  0+10 R_X86_64_DTPMOD64 +0+
-0+1021f0  0+12 R_X86_64_TPOFF64 +0+64
-0+102210  0+12 R_X86_64_TPOFF64 +0+50
-0+102218  0+12 R_X86_64_TPOFF64 +0+70
-0+102228  0+10 R_X86_64_DTPMOD64 +0+
-0+102238  0+12 R_X86_64_TPOFF64 +0+44
-0+1021f8  0+1200000012 R_X86_64_TPOFF64 +0+10 sg5 \+ 0
-0+102200  0+1400000010 R_X86_64_DTPMOD64 +0+ sg1 \+ 0
-0+102208  0+1400000011 R_X86_64_DTPOFF64 +0+ sg1 \+ 0
-0+102220  0+1700000012 R_X86_64_TPOFF64 +0+4 sg2 \+ 0
+0+101340  0+10 R_X86_64_DTPMOD64 +0+
+0+101350  0+12 R_X86_64_TPOFF64 +0+24
+0+101358  0+12 R_X86_64_TPOFF64 +0+30
+0+101360  0+10 R_X86_64_DTPMOD64 +0+
+0+101370  0+10 R_X86_64_DTPMOD64 +0+
+0+101380  0+12 R_X86_64_TPOFF64 +0+64
+0+1013a0  0+12 R_X86_64_TPOFF64 +0+50
+0+1013a8  0+12 R_X86_64_TPOFF64 +0+70
+0+1013b8  0+10 R_X86_64_DTPMOD64 +0+
+0+1013c8  0+12 R_X86_64_TPOFF64 +0+44
+0+101388  0+a00000012 R_X86_64_TPOFF64 +0+10 sg5 \+ 0
+0+101390  0+c00000010 R_X86_64_DTPMOD64 +0+ sg1 \+ 0
+0+101398  0+c00000011 R_X86_64_DTPOFF64 +0+ sg1 \+ 0
+0+1013b0  0+f00000012 R_X86_64_TPOFF64 +0+4 sg2 \+ 0
 
-Relocation section '.rela.plt' at offset 0x658 contains 1 entries:
+Relocation section '.rela.plt' at offset 0x[0-9a-f]+ contains 1 entries:
  +Offset +Info +Type +Symbol's Value  Symbol's Name \+ Addend
-0+[0-9a-f]+  0+1300000007 R_X86_64_JUMP_SLOT +0+ __tls_get_addr \+ 0
+0+[0-9a-f]+  0+b00000007 R_X86_64_JUMP_SLOT +0+ __tls_get_addr \+ 0
 
-Symbol table '.dynsym' contains 29 entries:
+Symbol table '.dynsym' contains 21 entries:
  +Num: +Value +Size Type +Bind +Vis +Ndx Name
- +0: 0+ +0 NOTYPE  LOCAL  DEFAULT  UND *
- +1: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +1 *
- +2: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +2 *
- +3: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +3 *
- +4: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +4 *
- +5: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +5 *
- +6: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +6 *
- +7: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +7 *
- +8: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +8 *
- +9: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +9 *
- +10: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +10 *
- +11: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +11 *
- +12: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +12 *
- +13: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +13 *
- +14: 0+1c +0 TLS +GLOBAL DEFAULT +9 sg8
- +15: 0+102060 +0 OBJECT  GLOBAL DEFAULT  ABS _DYNAMIC
- +16: 0+8 +0 TLS +GLOBAL DEFAULT +9 sg3
- +17: 0+c +0 TLS +GLOBAL DEFAULT +9 sg4
- +18: 0+10 +0 TLS +GLOBAL DEFAULT +9 sg5
- +19: 0+ +0 NOTYPE  GLOBAL DEFAULT  UND __tls_get_addr
- +20: 0+ +0 TLS +GLOBAL DEFAULT +9 sg1
- +21: 0+1000 +0 FUNC +GLOBAL DEFAULT +7 fn1
- +22: 0+102240 +0 NOTYPE  GLOBAL DEFAULT  ABS __bss_start
- +23: 0+4 +0 TLS +GLOBAL DEFAULT +9 sg2
- +24: 0+14 +0 TLS +GLOBAL DEFAULT +9 sg6
- +25: 0+18 +0 TLS +GLOBAL DEFAULT +9 sg7
- +26: 0+102240 +0 NOTYPE  GLOBAL DEFAULT  ABS _edata
- +27: 0+102190 +0 OBJECT  GLOBAL DEFAULT  ABS _GLOBAL_OFFSET_TABLE_
- +28: 0+102240 +0 NOTYPE  GLOBAL DEFAULT  ABS _end
+ +[0-9]+: 0+ +0 NOTYPE  LOCAL  DEFAULT  UND *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +7 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +8 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +9 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +13 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +14 *
+ +[0-9]+: 0+1c +0 TLS +GLOBAL DEFAULT +8 sg8
+ +[0-9]+: 0+101210 +0 OBJECT  GLOBAL DEFAULT  ABS _DYNAMIC
+ +[0-9]+: 0+8 +0 TLS +GLOBAL DEFAULT +8 sg3
+ +[0-9]+: 0+c +0 TLS +GLOBAL DEFAULT +8 sg4
+ +[0-9]+: 0+10 +0 TLS +GLOBAL DEFAULT +8 sg5
+ +[0-9]+: 0+ +0 NOTYPE  GLOBAL DEFAULT  UND __tls_get_addr
+ +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT +8 sg1
+ +[0-9]+: 0+1000 +0 FUNC +GLOBAL DEFAULT +7 fn1
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS __bss_start
+ +[0-9]+: 0+4 +0 TLS +GLOBAL DEFAULT +8 sg2
+ +[0-9]+: 0+14 +0 TLS +GLOBAL DEFAULT +8 sg6
+ +[0-9]+: 0+18 +0 TLS +GLOBAL DEFAULT +8 sg7
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS _edata
+ +[0-9]+: 0+1013d0 +0 OBJECT  GLOBAL DEFAULT  ABS _GLOBAL_OFFSET_TABLE_
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS _end
 
-Symbol table '.symtab' contains 56 entries:
+Symbol table '.symtab' contains 57 entries:
  +Num: +Value +Size Type +Bind +Vis +Ndx Name
- +0: 0+ +0 NOTYPE  LOCAL  DEFAULT  UND *
- +1: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +1 *
- +2: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +2 *
- +3: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +3 *
- +4: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +4 *
- +5: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +5 *
- +6: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +6 *
- +7: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +7 *
- +8: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +8 *
- +9: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +9 *
- +10: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +10 *
- +11: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +11 *
- +12: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +12 *
- +13: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +13 *
- +14: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +14 *
- +15: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +15 *
- +16: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +16 *
- +17: 0+20 +0 TLS +LOCAL  DEFAULT +9 sl1
- +18: 0+24 +0 TLS +LOCAL  DEFAULT +9 sl2
- +19: 0+28 +0 TLS +LOCAL  DEFAULT +9 sl3
- +20: 0+2c +0 TLS +LOCAL  DEFAULT +9 sl4
- +21: 0+30 +0 TLS +LOCAL  DEFAULT +9 sl5
- +22: 0+34 +0 TLS +LOCAL  DEFAULT +9 sl6
- +23: 0+38 +0 TLS +LOCAL  DEFAULT +9 sl7
- +24: 0+3c +0 TLS +LOCAL  DEFAULT +9 sl8
- +25: 0+60 +0 TLS +LOCAL  HIDDEN +10 sH1
- +26: 0+48 +0 TLS +LOCAL  HIDDEN +9 sh3
- +27: 0+64 +0 TLS +LOCAL  HIDDEN +10 sH2
- +28: 0+78 +0 TLS +LOCAL  HIDDEN +10 sH7
- +29: 0+58 +0 TLS +LOCAL  HIDDEN +9 sh7
- +30: 0+5c +0 TLS +LOCAL  HIDDEN +9 sh8
- +31: 0+6c +0 TLS +LOCAL  HIDDEN +10 sH4
- +32: 0+4c +0 TLS +LOCAL  HIDDEN +9 sh4
- +33: 0+68 +0 TLS +LOCAL  HIDDEN +10 sH3
- +34: 0+50 +0 TLS +LOCAL  HIDDEN +9 sh5
- +35: 0+70 +0 TLS +LOCAL  HIDDEN +10 sH5
- +36: 0+74 +0 TLS +LOCAL  HIDDEN +10 sH6
- +37: 0+7c +0 TLS +LOCAL  HIDDEN +10 sH8
- +38: 0+40 +0 TLS +LOCAL  HIDDEN +9 sh1
- +39: 0+44 +0 TLS +LOCAL  HIDDEN +9 sh2
- +40: 0+54 +0 TLS +LOCAL  HIDDEN +9 sh6
- +41: 0+1c +0 TLS +GLOBAL DEFAULT +9 sg8
- +42: 0+102060 +0 OBJECT  GLOBAL DEFAULT  ABS _DYNAMIC
- +43: 0+8 +0 TLS +GLOBAL DEFAULT +9 sg3
- +44: 0+c +0 TLS +GLOBAL DEFAULT +9 sg4
- +45: 0+10 +0 TLS +GLOBAL DEFAULT +9 sg5
- +46: 0+ +0 NOTYPE  GLOBAL DEFAULT  UND __tls_get_addr
- +47: 0+ +0 TLS +GLOBAL DEFAULT +9 sg1
- +48: 0+1000 +0 FUNC +GLOBAL DEFAULT +7 fn1
- +49: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS __bss_start
- +50: 0+4 +0 TLS +GLOBAL DEFAULT +9 sg2
- +51: 0+14 +0 TLS +GLOBAL DEFAULT +9 sg6
- +52: 0+18 +0 TLS +GLOBAL DEFAULT +9 sg7
- +53: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS _edata
- +54: 0+102190 +0 OBJECT  GLOBAL DEFAULT  ABS _GLOBAL_OFFSET_TABLE_
- +55: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS _end
+ +[0-9]+: 0+ +0 NOTYPE  LOCAL  DEFAULT  UND *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +1 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +2 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +3 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +4 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +5 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +6 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +7 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +8 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +9 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +10 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +11 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +12 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +13 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +14 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +15 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +16 *
+ +[0-9]+: [0-9a-f]+ +0 SECTION LOCAL  DEFAULT +17 *
+ +[0-9]+: 0+20 +0 TLS +LOCAL  DEFAULT +8 sl1
+ +[0-9]+: 0+24 +0 TLS +LOCAL  DEFAULT +8 sl2
+ +[0-9]+: 0+28 +0 TLS +LOCAL  DEFAULT +8 sl3
+ +[0-9]+: 0+2c +0 TLS +LOCAL  DEFAULT +8 sl4
+ +[0-9]+: 0+30 +0 TLS +LOCAL  DEFAULT +8 sl5
+ +[0-9]+: 0+34 +0 TLS +LOCAL  DEFAULT +8 sl6
+ +[0-9]+: 0+38 +0 TLS +LOCAL  DEFAULT +8 sl7
+ +[0-9]+: 0+3c +0 TLS +LOCAL  DEFAULT +8 sl8
+ +[0-9]+: 0+60 +0 TLS +LOCAL  HIDDEN +9 sH1
+ +[0-9]+: 0+48 +0 TLS +LOCAL  HIDDEN +8 sh3
+ +[0-9]+: 0+64 +0 TLS +LOCAL  HIDDEN +9 sH2
+ +[0-9]+: 0+78 +0 TLS +LOCAL  HIDDEN +9 sH7
+ +[0-9]+: 0+58 +0 TLS +LOCAL  HIDDEN +8 sh7
+ +[0-9]+: 0+5c +0 TLS +LOCAL  HIDDEN +8 sh8
+ +[0-9]+: 0+6c +0 TLS +LOCAL  HIDDEN +9 sH4
+ +[0-9]+: 0+4c +0 TLS +LOCAL  HIDDEN +8 sh4
+ +[0-9]+: 0+68 +0 TLS +LOCAL  HIDDEN +9 sH3
+ +[0-9]+: 0+50 +0 TLS +LOCAL  HIDDEN +8 sh5
+ +[0-9]+: 0+70 +0 TLS +LOCAL  HIDDEN +9 sH5
+ +[0-9]+: 0+74 +0 TLS +LOCAL  HIDDEN +9 sH6
+ +[0-9]+: 0+7c +0 TLS +LOCAL  HIDDEN +9 sH8
+ +[0-9]+: 0+40 +0 TLS +LOCAL  HIDDEN +8 sh1
+ +[0-9]+: 0+44 +0 TLS +LOCAL  HIDDEN +8 sh2
+ +[0-9]+: 0+54 +0 TLS +LOCAL  HIDDEN +8 sh6
+ +[0-9]+: 0+1c +0 TLS +GLOBAL DEFAULT +8 sg8
+ +[0-9]+: 0+101210 +0 OBJECT  GLOBAL DEFAULT  ABS _DYNAMIC
+ +[0-9]+: 0+8 +0 TLS +GLOBAL DEFAULT +8 sg3
+ +[0-9]+: 0+c +0 TLS +GLOBAL DEFAULT +8 sg4
+ +[0-9]+: 0+10 +0 TLS +GLOBAL DEFAULT +8 sg5
+ +[0-9]+: 0+ +0 NOTYPE  GLOBAL DEFAULT  UND __tls_get_addr
+ +[0-9]+: 0+ +0 TLS +GLOBAL DEFAULT +8 sg1
+ +[0-9]+: 0+1000 +0 FUNC +GLOBAL DEFAULT +7 fn1
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS __bss_start
+ +[0-9]+: 0+4 +0 TLS +GLOBAL DEFAULT +8 sg2
+ +[0-9]+: 0+14 +0 TLS +GLOBAL DEFAULT +8 sg6
+ +[0-9]+: 0+18 +0 TLS +GLOBAL DEFAULT +8 sg7
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS _edata
+ +[0-9]+: 0+1013d0 +0 OBJECT  GLOBAL DEFAULT  ABS _GLOBAL_OFFSET_TABLE_
+ +[0-9]+: [0-9a-f]+ +0 NOTYPE  GLOBAL DEFAULT  ABS _end
index a79ebad..831f0e5 100644 (file)
@@ -8,14 +8,12 @@
 .*: +file format elf64-x86-64
 
 Contents of section .got:
- 102190 [0-9a-f]+ [0-9a-f]+ 00000000 00000000  .*
- 1021a0 00000000 00000000 [0-9a-f]+ [0-9a-f]+  .*
- 1021b0 00000000 00000000 20000000 00000000  .*
- 1021c0 00000000 00000000 00000000 00000000  .*
- 1021d0 00000000 00000000 00000000 00000000  .*
- 1021e0 00000000 00000000 60000000 00000000  .*
- 1021f0 00000000 00000000 00000000 00000000  .*
- 102200 00000000 00000000 00000000 00000000  .*
- 102210 00000000 00000000 00000000 00000000  .*
- 102220 00000000 00000000 00000000 00000000  .*
- 102230 40000000 00000000 00000000 00000000  .*
+ 101340 00000000 00000000 20000000 00000000  .*
+ 101350 00000000 00000000 00000000 00000000  .*
+ 101360 00000000 00000000 00000000 00000000  .*
+ 101370 00000000 00000000 60000000 00000000  .*
+ 101380 00000000 00000000 00000000 00000000  .*
+ 101390 00000000 00000000 00000000 00000000  .*
+ 1013a0 00000000 00000000 00000000 00000000  .*
+ 1013b0 00000000 00000000 00000000 00000000  .*
+ 1013c0 40000000 00000000 00000000 00000000  .*
index 18ec846..d3df20c 100644 (file)
@@ -8,9 +8,9 @@
 .*: +file format elf64-x86-64
 
 Contents of section .tdata:
- 102000 11000000 12000000 13000000 14000000  .*
- 102010 15000000 16000000 17000000 18000000  .*
- 102020 41000000 42000000 43000000 44000000  .*
- 102030 45000000 46000000 47000000 48000000  .*
- 102040 01010000 02010000 03010000 04010000  .*
- 102050 05010000 06010000 07010000 08010000  .*
+ 1011ac 11000000 12000000 13000000 14000000  .*
+ 1011bc 15000000 16000000 17000000 18000000  .*
+ 1011cc 41000000 42000000 43000000 44000000  .*
+ 1011dc 45000000 46000000 47000000 48000000  .*
+ 1011ec 01010000 02010000 03010000 04010000  .*
+ 1011fc 05010000 06010000 07010000 08010000  .*