1 #! /bin/sh 2 # Copyright (C) 2014 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 # See run-addr2line-test.sh run-addr2line-i-test.sh run-addr2line-i-lex-test.sh 21 # Output/files/lines matched should equal what is done through addr2line 22 # which uses dwfl_module_getsrc. This test uses dwarf_addrdie and 23 # dwarf_getsrc_die 24 testfiles testfile testfile-inlines testfile-lex-inlines 25 26 testrun_compare ${abs_top_builddir}/tests/getsrc_die testfile 0x08048468 0x0804845c <<\EOF 27 /home/drepper/gnu/new-bu/build/ttt/f.c:3 28 /home/drepper/gnu/new-bu/build/ttt/b.c:4 29 EOF 30 31 testrun_compare ${abs_top_builddir}/tests/getsrc_die testfile-inlines 0x00000000000005a0 0x00000000000005a1 0x00000000000005b0 0x00000000000005b1 0x00000000000005c0 0x00000000000005d0 0x00000000000005e0 0x00000000000005e1 0x00000000000005f1 0x00000000000005f2 <<\EOF 32 /tmp/x.cpp:5 33 /tmp/x.cpp:6 34 /tmp/x.cpp:10 35 /tmp/x.cpp:11 36 /tmp/x.cpp:5 37 /tmp/x.cpp:10 38 /tmp/x.cpp:5 39 /tmp/x.cpp:10 40 /tmp/x.cpp:10 41 /tmp/x.cpp:5 42 EOF 43 44 testrun_compare ${abs_top_builddir}/tests/getsrc_die testfile-lex-inlines 0x0000000000000680 0x0000000000000681 0x0000000000000690 0x0000000000000691 <<\EOF 45 /tmp/x.cpp:5 46 /tmp/x.cpp:5 47 /tmp/x.cpp:5 48 /tmp/x.cpp:5 49 EOF 50 51 exit 0 52