Home | History | Annotate | Download | only in tests
      1 #! /bin/sh
      2 # Copyright (C) 2013 Red Hat, Inc.
      3 # This file is part of elfutils.
      4 #
      5 # This file is free software; you can redistribute it and/or modify
      6 # it under the terms of the GNU General Public License as published by
      7 # the Free Software Foundation; either version 3 of the License, or
      8 # (at your option) any later version.
      9 #
     10 # elfutils is distributed in the hope that it will be useful, but
     11 # WITHOUT ANY WARRANTY; without even the implied warranty of
     12 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
     13 # GNU General Public License for more details.
     14 #
     15 # You should have received a copy of the GNU General Public License
     16 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
     17 
     18 . $srcdir/test-subr.sh
     19 
     20 testfiles testfile-dwfl-report-elf-align-shlib.so
     21 
     22 # /proc/PID/maps when the process was running:
     23 # 7f3560c92000-7f3560c93000 r-xp 00000000 fd:02 25037063 testfile-dwfl-report-elf-align-shlib.so
     24 # 7f3560c93000-7f3560e92000 ---p 00001000 fd:02 25037063 testfile-dwfl-report-elf-align-shlib.so
     25 # 7f3560e92000-7f3560e93000 rw-p 00000000 fd:02 25037063 testfile-dwfl-report-elf-align-shlib.so
     26 # testfile-dwfl-report-elf-align-shlib.so:
     27 # Program Headers:
     28 #   Type           Offset   VirtAddr           PhysAddr           FileSiz  MemSiz   Flg Align
     29 #   LOAD           0x000000 0x0000000000000000 0x0000000000000000 0x00065c 0x00065c R E 0x200000
     30 #   LOAD           0x000660 0x0000000000200660 0x0000000000200660 0x0001f0 0x000200 RW  0x200000
     31 # Symbol table '.dynsym' contains 12 entries:
     32 #    Num:    Value          Size Type    Bind   Vis      Ndx Name
     33 #      8: 000000000000057c    11 FUNC    GLOBAL DEFAULT   11 shlib
     34 # GDB output showing proper relocation:
     35 # #1  0x00007f3560c92585 in shlib () from ./testfile-dwfl-report-elf-align-shlib.so
     36 #
     37 # 0x7f3560c92000 is VMA address of first byte of testfile-dwfl-report-elf-align-shlib.so.
     38 # 0x7f3560c92585 = 0x7f3560c92000 + 0x585
     39 # where 0x585 is any address inside the shlib function: 0x57c .. 0x57c + 11 -1
     40 
     41 testrun ${abs_builddir}/dwfl-report-elf-align ./testfile-dwfl-report-elf-align-shlib.so \
     42 				0x7f3560c92000 0x7f3560c92585 shlib
     43 
     44 exit 0
     45