| #! /bin/sh |
| # Copyright (C) 2018 Red Hat, Inc. |
| # This file is part of elfutils. |
| # |
| # This file is free software; you can redistribute it and/or modify |
| # it under the terms of the GNU General Public License as published by |
| # the Free Software Foundation; either version 3 of the License, or |
| # (at your option) any later version. |
| # |
| # elfutils is distributed in the hope that it will be useful, but |
| # WITHOUT ANY WARRANTY; without even the implied warranty of |
| # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
| # GNU General Public License for more details. |
| # |
| # You should have received a copy of the GNU General Public License |
| # along with this program. If not, see <http://www.gnu.org/licenses/>. |
| |
| . $srcdir/test-subr.sh |
| |
| # See tests/testfile-dwarf-45.source |
| testfiles testfile-splitdwarf-4 testfile-splitdwarf-5 |
| testfiles testfile-hello4.dwo testfile-hello5.dwo |
| testfiles testfile-world4.dwo testfile-world5.dwo |
| |
| # DWARF4 GNU DebugFission No real table header. |
| # We don't really need the skeleton, but we don't want any Warnings. |
| testrun_compare ${abs_top_builddir}/src/readelf --dwarf-skeleton testfile-splitdwarf-4 --debug-dump=str testfile-hello4.dwo testfile-world4.dwo<<\EOF |
| |
| testfile-hello4.dwo: |
| |
| |
| DWARF section [ 5] '.debug_str_offsets.dwo' at offset 0x335: |
| Table at offset 0 |
| Offsets start at 0x0: |
| [ 0] [ 0] "long long int" |
| [ 1] [ e] "frob" |
| [ 2] [ 13] "long unsigned int" |
| [ 3] [ 25] "/home/mark/src/elfutils/tests" |
| [ 4] [ 43] "wchar_t" |
| [ 5] [ 4b] "main" |
| [ 6] [ 50] "long int" |
| [ 7] [ 59] "GNU C17 9.0.0 20180515 (experimental) -mtune=generic -march=x86-64 -gdwarf-4 -gsplit-dwarf -gno-as-loc-support -gno-variable-location-views -O2" |
| [ 8] [ e9] "long double" |
| [ 9] [ f5] "hello.c" |
| |
| |
| DWARF section [ 6] '.debug_str.dwo' at offset 0x35d: |
| Offset String |
| [ 0] "long long int" |
| [ e] "frob" |
| [ 13] "long unsigned int" |
| [ 25] "/home/mark/src/elfutils/tests" |
| [ 43] "wchar_t" |
| [ 4b] "main" |
| [ 50] "long int" |
| [ 59] "GNU C17 9.0.0 20180515 (experimental) -mtune=generic -march=x86-64 -gdwarf-4 -gsplit-dwarf -gno-as-loc-support -gno-variable-location-views -O2" |
| [ e9] "long double" |
| [ f5] "hello.c" |
| |
| testfile-world4.dwo: |
| |
| |
| DWARF section [ 5] '.debug_str_offsets.dwo' at offset 0x2e7: |
| Table at offset 0 |
| Offsets start at 0x0: |
| [ 0] [ 0] "long long unsigned int" |
| [ 1] [ 17] "/home/mark/src/elfutils/tests" |
| [ 2] [ 35] "long long int" |
| [ 3] [ 43] "signed char" |
| [ 4] [ 4f] "long int" |
| [ 5] [ 58] "world.c" |
| [ 6] [ 60] "unsigned int" |
| [ 7] [ 6d] "long unsigned int" |
| [ 8] [ 7f] "short unsigned int" |
| [ 9] [ 92] "frob" |
| [10] [ 97] "calc" |
| [11] [ 9c] "unsigned char" |
| [12] [ aa] "short int" |
| [13] [ b4] "exit" |
| [14] [ b9] "GNU C17 9.0.0 20180515 (experimental) -mtune=generic -march=x86-64 -gdwarf-4 -gsplit-dwarf -gno-as-loc-support -gno-variable-location-views -O2" |
| [15] [ 149] "char" |
| [16] [ 14e] "word" |
| [17] [ 153] "argv" |
| [18] [ 158] "argc" |
| [19] [ 15d] "main" |
| |
| |
| DWARF section [ 6] '.debug_str.dwo' at offset 0x337: |
| Offset String |
| [ 0] "long long unsigned int" |
| [ 17] "/home/mark/src/elfutils/tests" |
| [ 35] "long long int" |
| [ 43] "signed char" |
| [ 4f] "long int" |
| [ 58] "world.c" |
| [ 60] "unsigned int" |
| [ 6d] "long unsigned int" |
| [ 7f] "short unsigned int" |
| [ 92] "frob" |
| [ 97] "calc" |
| [ 9c] "unsigned char" |
| [ aa] "short int" |
| [ b4] "exit" |
| [ b9] "GNU C17 9.0.0 20180515 (experimental) -mtune=generic -march=x86-64 -gdwarf-4 -gsplit-dwarf -gno-as-loc-support -gno-variable-location-views -O2" |
| [ 149] "char" |
| [ 14e] "word" |
| [ 153] "argv" |
| [ 158] "argc" |
| [ 15d] "main" |
| EOF |
| |
| # DWARF5 Real table header. |
| # We don't really need the skeleton, but we don't want any Warnings. |
| testrun_compare ${abs_top_builddir}/src/readelf --dwarf-skeleton testfile-splitdwarf-5 --debug-dump=str testfile-hello5.dwo testfile-world5.dwo<<\EOF |
| |
| testfile-hello5.dwo: |
| |
| |
| DWARF section [ 5] '.debug_str_offsets.dwo' at offset 0x353: |
| Table at offset 0 |
| |
| Length: 44 |
| Offset size: 4 |
| DWARF version: 5 |
| Padding: 0 |
| |
| Offsets start at 0x8: |
| [ 0] [ 0] "long long int" |
| [ 1] [ e] "frob" |
| [ 2] [ 13] "long unsigned int" |
| [ 3] [ 25] "/home/mark/src/elfutils/tests" |
| [ 4] [ 43] "wchar_t" |
| [ 5] [ 4b] "main" |
| [ 6] [ 50] "long int" |
| [ 7] [ 59] "GNU C17 9.0.0 20180515 (experimental) -mtune=generic -march=x86-64 -gdwarf-5 -gsplit-dwarf -gno-as-loc-support -gno-variable-location-views -O2" |
| [ 8] [ e9] "long double" |
| [ 9] [ f5] "hello.c" |
| |
| |
| DWARF section [ 6] '.debug_str.dwo' at offset 0x383: |
| Offset String |
| [ 0] "long long int" |
| [ e] "frob" |
| [ 13] "long unsigned int" |
| [ 25] "/home/mark/src/elfutils/tests" |
| [ 43] "wchar_t" |
| [ 4b] "main" |
| [ 50] "long int" |
| [ 59] "GNU C17 9.0.0 20180515 (experimental) -mtune=generic -march=x86-64 -gdwarf-5 -gsplit-dwarf -gno-as-loc-support -gno-variable-location-views -O2" |
| [ e9] "long double" |
| [ f5] "hello.c" |
| |
| testfile-world5.dwo: |
| |
| |
| DWARF section [ 5] '.debug_str_offsets.dwo' at offset 0x313: |
| Table at offset 0 |
| |
| Length: 84 |
| Offset size: 4 |
| DWARF version: 5 |
| Padding: 0 |
| |
| Offsets start at 0x8: |
| [ 0] [ 0] "long long unsigned int" |
| [ 1] [ 17] "GNU C17 9.0.0 20180515 (experimental) -mtune=generic -march=x86-64 -gdwarf-5 -gsplit-dwarf -gno-as-loc-support -gno-variable-location-views -O2" |
| [ 2] [ a7] "/home/mark/src/elfutils/tests" |
| [ 3] [ c5] "long long int" |
| [ 4] [ d3] "signed char" |
| [ 5] [ df] "long int" |
| [ 6] [ e8] "world.c" |
| [ 7] [ f0] "unsigned int" |
| [ 8] [ fd] "long unsigned int" |
| [ 9] [ 10f] "short unsigned int" |
| [10] [ 122] "frob" |
| [11] [ 127] "calc" |
| [12] [ 12c] "unsigned char" |
| [13] [ 13a] "short int" |
| [14] [ 144] "exit" |
| [15] [ 149] "char" |
| [16] [ 14e] "word" |
| [17] [ 153] "argv" |
| [18] [ 158] "argc" |
| [19] [ 15d] "main" |
| |
| |
| DWARF section [ 6] '.debug_str.dwo' at offset 0x36b: |
| Offset String |
| [ 0] "long long unsigned int" |
| [ 17] "GNU C17 9.0.0 20180515 (experimental) -mtune=generic -march=x86-64 -gdwarf-5 -gsplit-dwarf -gno-as-loc-support -gno-variable-location-views -O2" |
| [ a7] "/home/mark/src/elfutils/tests" |
| [ c5] "long long int" |
| [ d3] "signed char" |
| [ df] "long int" |
| [ e8] "world.c" |
| [ f0] "unsigned int" |
| [ fd] "long unsigned int" |
| [ 10f] "short unsigned int" |
| [ 122] "frob" |
| [ 127] "calc" |
| [ 12c] "unsigned char" |
| [ 13a] "short int" |
| [ 144] "exit" |
| [ 149] "char" |
| [ 14e] "word" |
| [ 153] "argv" |
| [ 158] "argc" |
| [ 15d] "main" |
| EOF |
| |
| exit 0 |