Blame tests/run-readelf-zdebug.sh

Packit 032894
#! /bin/sh
Packit 032894
# Copyright (C) 2014 Red Hat, Inc.
Packit 032894
# This file is part of elfutils.
Packit 032894
#
Packit 032894
# This file is free software; you can redistribute it and/or modify
Packit 032894
# it under the terms of the GNU General Public License as published by
Packit 032894
# the Free Software Foundation; either version 3 of the License, or
Packit 032894
# (at your option) any later version.
Packit 032894
#
Packit 032894
# elfutils is distributed in the hope that it will be useful, but
Packit 032894
# WITHOUT ANY WARRANTY; without even the implied warranty of
Packit 032894
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
Packit 032894
# GNU General Public License for more details.
Packit 032894
#
Packit 032894
# You should have received a copy of the GNU General Public License
Packit 032894
# along with this program.  If not, see <http://www.gnu.org/licenses/>.
Packit 032894
Packit 032894
. $srcdir/test-subr.sh
Packit 032894
Packit 032894
# - testfile-zdebug.c
Packit 032894
# #define UINT64_MAX 18446744073709551615UL
Packit 032894
#
Packit 032894
# int
Packit 032894
# main (int argc, char **argv)
Packit 032894
# {
Packit 032894
#   unsigned long a = UINT64_MAX - 8;
Packit 032894
#   unsigned long b = 42 + argc;
Packit 032894
#
Packit 032894
#   if ( a + b < b )
Packit 032894
#     argc = a + argc;
Packit 032894
#   else
Packit 032894
#      b--;
Packit 032894
#
Packit 032894
#   return a - b;
Packit 032894
# }
Packit 032894
#
Packit 032894
# gcc -g3 -O3 -fuse-ld=gold -Xlinker --compress-debug-sections=none \
Packit 032894
#     -fno-asynchronous-unwind-tables -o testfile-debug testfile-zdebug.c
Packit 032894
# gcc -g3 -O3 -fuse-ld=gold -Xlinker --compress-debug-sections=zlib \
Packit 032894
#     -fno-asynchronous-unwind-tables -o testfile-zdebug testfile-zdebug.c
Packit 032894
Packit 032894
testfiles testfile-debug testfile-zdebug
Packit 032894
tempfiles readelf.out
Packit 032894
tempfiles loc.out aranges.out ranges.out macro.out line.out frame.out
Packit 032894
Packit 032894
cat > loc.out << \EOF
Packit 032894
Packit 032894
DWARF section [30] '.debug_loc' at offset 0xa17:
Packit 032894
Packit 032894
 CU [     b] base: 000000000000000000
Packit 032894
 [     0] range 4003c0, 4003c3
Packit 032894
           [ 0] reg5
Packit 032894
          range 4003c3, 4003d6
Packit 032894
           [ 0] breg5 -42
Packit 032894
           [ 2] stack_value
Packit 032894
          range 4003d6, 4003d9
Packit 032894
           [ 0] GNU_entry_value:
Packit 032894
                [ 0] reg5
Packit 032894
           [ 3] stack_value
Packit 032894
EOF
Packit 032894
Packit 032894
cat loc.out | testrun_compare ${abs_top_builddir}/src/readelf -U --debug-dump=loc testfile-debug
Packit 032894
Packit 032894
cat loc.out | sed -e "s/.debug_loc' at offset 0xa17/.zdebug_loc' at offset 0x1a27/" | testrun_compare ${abs_top_builddir}/src/readelf -U --debug-dump=loc testfile-zdebug
Packit 032894
Packit 032894
cat > aranges.out << \EOF
Packit 032894
Packit 032894
DWARF section [31] '.debug_aranges' at offset 0xa65:
Packit 032894
Packit 032894
Table at offset 0:
Packit 032894
Packit 032894
 Length:            44
Packit 032894
 DWARF version:      2
Packit 032894
 CU offset:          0
Packit 032894
 Address size:       8
Packit 032894
 Segment size:       0
Packit 032894
Packit 032894
   0x00000000004003c0..0x0000000000000019
Packit 032894
EOF
Packit 032894
Packit 032894
cat aranges.out | testrun_compare ${abs_top_builddir}/src/readelf -U --debug-dump=aranges testfile-debug
Packit 032894
Packit 032894
cat aranges.out | sed -e "s/.debug_aranges' at offset 0xa65/.zdebug_aranges' at offset 0x1a5f/" | testrun_compare ${abs_top_builddir}/src/readelf -U --debug-dump=aranges testfile-zdebug
Packit 032894
Packit 032894
cat > ranges.out << \EOF
Packit 032894
Packit 032894
DWARF section [32] '.debug_ranges' at offset 0xa95:
Packit 032894
Packit 032894
 CU [     b] base: 000000000000000000
Packit 032894
 [     0] range 4003c0, 4003d9
Packit 032894
EOF
Packit 032894
Packit 032894
cat ranges.out | testrun_compare ${abs_top_builddir}/src/readelf -U --debug-dump=ranges testfile-debug
Packit 032894
Packit 032894
cat ranges.out | sed -e "s/.debug_ranges' at offset 0xa95/.zdebug_ranges' at offset 0x1a87/" | testrun_compare ${abs_top_builddir}/src/readelf -U --debug-dump=ranges testfile-zdebug
Packit 032894
Packit 032894
cat > macro.out << \EOF
Packit 032894
Packit 032894
DWARF section [33] '.debug_macro' at offset 0xab5:
Packit 032894
Packit 032894
 Offset:             0x0
Packit 032894
 Version:            4
Packit 032894
 Flag:               0x2 (debug_line_offset)
Packit 032894
 Offset length:      4
Packit 032894
 .debug_line offset: 0x0
Packit 032894
Packit 032894
 #include offset 0x17
Packit 032894
 start_file 0, [1] /tmp/testfile-zdebug.c
Packit 032894
  #define UINT64_MAX 18446744073709551615UL, line 1 (indirect)
Packit 032894
 end_file
Packit 032894
Packit 032894
 Offset:             0x17
Packit 032894
 Version:            4
Packit 032894
 Flag:               0x0
Packit 032894
 Offset length:      4
Packit 032894
Packit 032894
 #define __STDC__ 1, line 1 (indirect)
Packit 032894
 #define __STDC_HOSTED__ 1, line 1 (indirect)
Packit 032894
 #define __GNUC__ 4, line 1 (indirect)
Packit 032894
 #define __GNUC_MINOR__ 8, line 1 (indirect)
Packit 032894
 #define __GNUC_PATCHLEVEL__ 2, line 1 (indirect)
Packit 032894
 #define __VERSION__ "4.8.2 20140120 (Red Hat 4.8.2-15)", line 1 (indirect)
Packit 032894
 #define __GNUC_RH_RELEASE__ 15, line 1 (indirect)
Packit 032894
 #define __ATOMIC_RELAXED 0, line 1 (indirect)
Packit 032894
 #define __ATOMIC_SEQ_CST 5, line 1 (indirect)
Packit 032894
 #define __ATOMIC_ACQUIRE 2, line 1 (indirect)
Packit 032894
 #define __ATOMIC_RELEASE 3, line 1 (indirect)
Packit 032894
 #define __ATOMIC_ACQ_REL 4, line 1 (indirect)
Packit 032894
 #define __ATOMIC_CONSUME 1, line 1 (indirect)
Packit 032894
 #define __OPTIMIZE__ 1, line 1 (indirect)
Packit 032894
 #define __FINITE_MATH_ONLY__ 0, line 1 (indirect)
Packit 032894
 #define _LP64 1, line 1 (indirect)
Packit 032894
 #define __LP64__ 1, line 1 (indirect)
Packit 032894
 #define __SIZEOF_INT__ 4, line 1 (indirect)
Packit 032894
 #define __SIZEOF_LONG__ 8, line 1 (indirect)
Packit 032894
 #define __SIZEOF_LONG_LONG__ 8, line 1 (indirect)
Packit 032894
 #define __SIZEOF_SHORT__ 2, line 1 (indirect)
Packit 032894
 #define __SIZEOF_FLOAT__ 4, line 1 (indirect)
Packit 032894
 #define __SIZEOF_DOUBLE__ 8, line 1 (indirect)
Packit 032894
 #define __SIZEOF_LONG_DOUBLE__ 16, line 1 (indirect)
Packit 032894
 #define __SIZEOF_SIZE_T__ 8, line 1 (indirect)
Packit 032894
 #define __CHAR_BIT__ 8, line 1 (indirect)
Packit 032894
 #define __BIGGEST_ALIGNMENT__ 16, line 1 (indirect)
Packit 032894
 #define __ORDER_LITTLE_ENDIAN__ 1234, line 1 (indirect)
Packit 032894
 #define __ORDER_BIG_ENDIAN__ 4321, line 1 (indirect)
Packit 032894
 #define __ORDER_PDP_ENDIAN__ 3412, line 1 (indirect)
Packit 032894
 #define __BYTE_ORDER__ __ORDER_LITTLE_ENDIAN__, line 1 (indirect)
Packit 032894
 #define __FLOAT_WORD_ORDER__ __ORDER_LITTLE_ENDIAN__, line 1 (indirect)
Packit 032894
 #define __SIZEOF_POINTER__ 8, line 1 (indirect)
Packit 032894
 #define __SIZE_TYPE__ long unsigned int, line 1 (indirect)
Packit 032894
 #define __PTRDIFF_TYPE__ long int, line 1 (indirect)
Packit 032894
 #define __WCHAR_TYPE__ int, line 1 (indirect)
Packit 032894
 #define __WINT_TYPE__ unsigned int, line 1 (indirect)
Packit 032894
 #define __INTMAX_TYPE__ long int, line 1 (indirect)
Packit 032894
 #define __UINTMAX_TYPE__ long unsigned int, line 1 (indirect)
Packit 032894
 #define __CHAR16_TYPE__ short unsigned int, line 1 (indirect)
Packit 032894
 #define __CHAR32_TYPE__ unsigned int, line 1 (indirect)
Packit 032894
 #define __SIG_ATOMIC_TYPE__ int, line 1 (indirect)
Packit 032894
 #define __INT8_TYPE__ signed char, line 1 (indirect)
Packit 032894
 #define __INT16_TYPE__ short int, line 1 (indirect)
Packit 032894
 #define __INT32_TYPE__ int, line 1 (indirect)
Packit 032894
 #define __INT64_TYPE__ long int, line 1 (indirect)
Packit 032894
 #define __UINT8_TYPE__ unsigned char, line 1 (indirect)
Packit 032894
 #define __UINT16_TYPE__ short unsigned int, line 1 (indirect)
Packit 032894
 #define __UINT32_TYPE__ unsigned int, line 1 (indirect)
Packit 032894
 #define __UINT64_TYPE__ long unsigned int, line 1 (indirect)
Packit 032894
 #define __INT_LEAST8_TYPE__ signed char, line 1 (indirect)
Packit 032894
 #define __INT_LEAST16_TYPE__ short int, line 1 (indirect)
Packit 032894
 #define __INT_LEAST32_TYPE__ int, line 1 (indirect)
Packit 032894
 #define __INT_LEAST64_TYPE__ long int, line 1 (indirect)
Packit 032894
 #define __UINT_LEAST8_TYPE__ unsigned char, line 1 (indirect)
Packit 032894
 #define __UINT_LEAST16_TYPE__ short unsigned int, line 1 (indirect)
Packit 032894
 #define __UINT_LEAST32_TYPE__ unsigned int, line 1 (indirect)
Packit 032894
 #define __UINT_LEAST64_TYPE__ long unsigned int, line 1 (indirect)
Packit 032894
 #define __INT_FAST8_TYPE__ signed char, line 1 (indirect)
Packit 032894
 #define __INT_FAST16_TYPE__ long int, line 1 (indirect)
Packit 032894
 #define __INT_FAST32_TYPE__ long int, line 1 (indirect)
Packit 032894
 #define __INT_FAST64_TYPE__ long int, line 1 (indirect)
Packit 032894
 #define __UINT_FAST8_TYPE__ unsigned char, line 1 (indirect)
Packit 032894
 #define __UINT_FAST16_TYPE__ long unsigned int, line 1 (indirect)
Packit 032894
 #define __UINT_FAST32_TYPE__ long unsigned int, line 1 (indirect)
Packit 032894
 #define __UINT_FAST64_TYPE__ long unsigned int, line 1 (indirect)
Packit 032894
 #define __INTPTR_TYPE__ long int, line 1 (indirect)
Packit 032894
 #define __UINTPTR_TYPE__ long unsigned int, line 1 (indirect)
Packit 032894
 #define __GXX_ABI_VERSION 1002, line 1 (indirect)
Packit 032894
 #define __SCHAR_MAX__ 127, line 1 (indirect)
Packit 032894
 #define __SHRT_MAX__ 32767, line 1 (indirect)
Packit 032894
 #define __INT_MAX__ 2147483647, line 1 (indirect)
Packit 032894
 #define __LONG_MAX__ 9223372036854775807L, line 1 (indirect)
Packit 032894
 #define __LONG_LONG_MAX__ 9223372036854775807LL, line 1 (indirect)
Packit 032894
 #define __WCHAR_MAX__ 2147483647, line 1 (indirect)
Packit 032894
 #define __WCHAR_MIN__ (-__WCHAR_MAX__ - 1), line 1 (indirect)
Packit 032894
 #define __WINT_MAX__ 4294967295U, line 1 (indirect)
Packit 032894
 #define __WINT_MIN__ 0U, line 1 (indirect)
Packit 032894
 #define __PTRDIFF_MAX__ 9223372036854775807L, line 1 (indirect)
Packit 032894
 #define __SIZE_MAX__ 18446744073709551615UL, line 1 (indirect)
Packit 032894
 #define __INTMAX_MAX__ 9223372036854775807L, line 1 (indirect)
Packit 032894
 #define __INTMAX_C(c) c ## L, line 1 (indirect)
Packit 032894
 #define __UINTMAX_MAX__ 18446744073709551615UL, line 1 (indirect)
Packit 032894
 #define __UINTMAX_C(c) c ## UL, line 1 (indirect)
Packit 032894
 #define __SIG_ATOMIC_MAX__ 2147483647, line 1 (indirect)
Packit 032894
 #define __SIG_ATOMIC_MIN__ (-__SIG_ATOMIC_MAX__ - 1), line 1 (indirect)
Packit 032894
 #define __INT8_MAX__ 127, line 1 (indirect)
Packit 032894
 #define __INT16_MAX__ 32767, line 1 (indirect)
Packit 032894
 #define __INT32_MAX__ 2147483647, line 1 (indirect)
Packit 032894
 #define __INT64_MAX__ 9223372036854775807L, line 1 (indirect)
Packit 032894
 #define __UINT8_MAX__ 255, line 1 (indirect)
Packit 032894
 #define __UINT16_MAX__ 65535, line 1 (indirect)
Packit 032894
 #define __UINT32_MAX__ 4294967295U, line 1 (indirect)
Packit 032894
 #define __UINT64_MAX__ 18446744073709551615UL, line 1 (indirect)
Packit 032894
 #define __INT_LEAST8_MAX__ 127, line 1 (indirect)
Packit 032894
 #define __INT8_C(c) c, line 1 (indirect)
Packit 032894
 #define __INT_LEAST16_MAX__ 32767, line 1 (indirect)
Packit 032894
 #define __INT16_C(c) c, line 1 (indirect)
Packit 032894
 #define __INT_LEAST32_MAX__ 2147483647, line 1 (indirect)
Packit 032894
 #define __INT32_C(c) c, line 1 (indirect)
Packit 032894
 #define __INT_LEAST64_MAX__ 9223372036854775807L, line 1 (indirect)
Packit 032894
 #define __INT64_C(c) c ## L, line 1 (indirect)
Packit 032894
 #define __UINT_LEAST8_MAX__ 255, line 1 (indirect)
Packit 032894
 #define __UINT8_C(c) c, line 1 (indirect)
Packit 032894
 #define __UINT_LEAST16_MAX__ 65535, line 1 (indirect)
Packit 032894
 #define __UINT16_C(c) c, line 1 (indirect)
Packit 032894
 #define __UINT_LEAST32_MAX__ 4294967295U, line 1 (indirect)
Packit 032894
 #define __UINT32_C(c) c ## U, line 1 (indirect)
Packit 032894
 #define __UINT_LEAST64_MAX__ 18446744073709551615UL, line 1 (indirect)
Packit 032894
 #define __UINT64_C(c) c ## UL, line 1 (indirect)
Packit 032894
 #define __INT_FAST8_MAX__ 127, line 1 (indirect)
Packit 032894
 #define __INT_FAST16_MAX__ 9223372036854775807L, line 1 (indirect)
Packit 032894
 #define __INT_FAST32_MAX__ 9223372036854775807L, line 1 (indirect)
Packit 032894
 #define __INT_FAST64_MAX__ 9223372036854775807L, line 1 (indirect)
Packit 032894
 #define __UINT_FAST8_MAX__ 255, line 1 (indirect)
Packit 032894
 #define __UINT_FAST16_MAX__ 18446744073709551615UL, line 1 (indirect)
Packit 032894
 #define __UINT_FAST32_MAX__ 18446744073709551615UL, line 1 (indirect)
Packit 032894
 #define __UINT_FAST64_MAX__ 18446744073709551615UL, line 1 (indirect)
Packit 032894
 #define __INTPTR_MAX__ 9223372036854775807L, line 1 (indirect)
Packit 032894
 #define __UINTPTR_MAX__ 18446744073709551615UL, line 1 (indirect)
Packit 032894
 #define __FLT_EVAL_METHOD__ 0, line 1 (indirect)
Packit 032894
 #define __DEC_EVAL_METHOD__ 2, line 1 (indirect)
Packit 032894
 #define __FLT_RADIX__ 2, line 1 (indirect)
Packit 032894
 #define __FLT_MANT_DIG__ 24, line 1 (indirect)
Packit 032894
 #define __FLT_DIG__ 6, line 1 (indirect)
Packit 032894
 #define __FLT_MIN_EXP__ (-125), line 1 (indirect)
Packit 032894
 #define __FLT_MIN_10_EXP__ (-37), line 1 (indirect)
Packit 032894
 #define __FLT_MAX_EXP__ 128, line 1 (indirect)
Packit 032894
 #define __FLT_MAX_10_EXP__ 38, line 1 (indirect)
Packit 032894
 #define __FLT_DECIMAL_DIG__ 9, line 1 (indirect)
Packit 032894
 #define __FLT_MAX__ 3.40282346638528859812e+38F, line 1 (indirect)
Packit 032894
 #define __FLT_MIN__ 1.17549435082228750797e-38F, line 1 (indirect)
Packit 032894
 #define __FLT_EPSILON__ 1.19209289550781250000e-7F, line 1 (indirect)
Packit 032894
 #define __FLT_DENORM_MIN__ 1.40129846432481707092e-45F, line 1 (indirect)
Packit 032894
 #define __FLT_HAS_DENORM__ 1, line 1 (indirect)
Packit 032894
 #define __FLT_HAS_INFINITY__ 1, line 1 (indirect)
Packit 032894
 #define __FLT_HAS_QUIET_NAN__ 1, line 1 (indirect)
Packit 032894
 #define __DBL_MANT_DIG__ 53, line 1 (indirect)
Packit 032894
 #define __DBL_DIG__ 15, line 1 (indirect)
Packit 032894
 #define __DBL_MIN_EXP__ (-1021), line 1 (indirect)
Packit 032894
 #define __DBL_MIN_10_EXP__ (-307), line 1 (indirect)
Packit 032894
 #define __DBL_MAX_EXP__ 1024, line 1 (indirect)
Packit 032894
 #define __DBL_MAX_10_EXP__ 308, line 1 (indirect)
Packit 032894
 #define __DBL_DECIMAL_DIG__ 17, line 1 (indirect)
Packit 032894
 #define __DBL_MAX__ ((double)1.79769313486231570815e+308L), line 1 (indirect)
Packit 032894
 #define __DBL_MIN__ ((double)2.22507385850720138309e-308L), line 1 (indirect)
Packit 032894
 #define __DBL_EPSILON__ ((double)2.22044604925031308085e-16L), line 1 (indirect)
Packit 032894
 #define __DBL_DENORM_MIN__ ((double)4.94065645841246544177e-324L), line 1 (indirect)
Packit 032894
 #define __DBL_HAS_DENORM__ 1, line 1 (indirect)
Packit 032894
 #define __DBL_HAS_INFINITY__ 1, line 1 (indirect)
Packit 032894
 #define __DBL_HAS_QUIET_NAN__ 1, line 1 (indirect)
Packit 032894
 #define __LDBL_MANT_DIG__ 64, line 1 (indirect)
Packit 032894
 #define __LDBL_DIG__ 18, line 1 (indirect)
Packit 032894
 #define __LDBL_MIN_EXP__ (-16381), line 1 (indirect)
Packit 032894
 #define __LDBL_MIN_10_EXP__ (-4931), line 1 (indirect)
Packit 032894
 #define __LDBL_MAX_EXP__ 16384, line 1 (indirect)
Packit 032894
 #define __LDBL_MAX_10_EXP__ 4932, line 1 (indirect)
Packit 032894
 #define __DECIMAL_DIG__ 21, line 1 (indirect)
Packit 032894
 #define __LDBL_MAX__ 1.18973149535723176502e+4932L, line 1 (indirect)
Packit 032894
 #define __LDBL_MIN__ 3.36210314311209350626e-4932L, line 1 (indirect)
Packit 032894
 #define __LDBL_EPSILON__ 1.08420217248550443401e-19L, line 1 (indirect)
Packit 032894
 #define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L, line 1 (indirect)
Packit 032894
 #define __LDBL_HAS_DENORM__ 1, line 1 (indirect)
Packit 032894
 #define __LDBL_HAS_INFINITY__ 1, line 1 (indirect)
Packit 032894
 #define __LDBL_HAS_QUIET_NAN__ 1, line 1 (indirect)
Packit 032894
 #define __DEC32_MANT_DIG__ 7, line 1 (indirect)
Packit 032894
 #define __DEC32_MIN_EXP__ (-94), line 1 (indirect)
Packit 032894
 #define __DEC32_MAX_EXP__ 97, line 1 (indirect)
Packit 032894
 #define __DEC32_MIN__ 1E-95DF, line 1 (indirect)
Packit 032894
 #define __DEC32_MAX__ 9.999999E96DF, line 1 (indirect)
Packit 032894
 #define __DEC32_EPSILON__ 1E-6DF, line 1 (indirect)
Packit 032894
 #define __DEC32_SUBNORMAL_MIN__ 0.000001E-95DF, line 1 (indirect)
Packit 032894
 #define __DEC64_MANT_DIG__ 16, line 1 (indirect)
Packit 032894
 #define __DEC64_MIN_EXP__ (-382), line 1 (indirect)
Packit 032894
 #define __DEC64_MAX_EXP__ 385, line 1 (indirect)
Packit 032894
 #define __DEC64_MIN__ 1E-383DD, line 1 (indirect)
Packit 032894
 #define __DEC64_MAX__ 9.999999999999999E384DD, line 1 (indirect)
Packit 032894
 #define __DEC64_EPSILON__ 1E-15DD, line 1 (indirect)
Packit 032894
 #define __DEC64_SUBNORMAL_MIN__ 0.000000000000001E-383DD, line 1 (indirect)
Packit 032894
 #define __DEC128_MANT_DIG__ 34, line 1 (indirect)
Packit 032894
 #define __DEC128_MIN_EXP__ (-6142), line 1 (indirect)
Packit 032894
 #define __DEC128_MAX_EXP__ 6145, line 1 (indirect)
Packit 032894
 #define __DEC128_MIN__ 1E-6143DL, line 1 (indirect)
Packit 032894
 #define __DEC128_MAX__ 9.999999999999999999999999999999999E6144DL, line 1 (indirect)
Packit 032894
 #define __DEC128_EPSILON__ 1E-33DL, line 1 (indirect)
Packit 032894
 #define __DEC128_SUBNORMAL_MIN__ 0.000000000000000000000000000000001E-6143DL, line 1 (indirect)
Packit 032894
 #define __REGISTER_PREFIX__ , line 1 (indirect)
Packit 032894
 #define __USER_LABEL_PREFIX__ , line 1 (indirect)
Packit 032894
 #define __GNUC_GNU_INLINE__ 1, line 1 (indirect)
Packit 032894
 #define __GCC_HAVE_SYNC_COMPARE_AND_SWAP_1 1, line 1 (indirect)
Packit 032894
 #define __GCC_HAVE_SYNC_COMPARE_AND_SWAP_2 1, line 1 (indirect)
Packit 032894
 #define __GCC_HAVE_SYNC_COMPARE_AND_SWAP_4 1, line 1 (indirect)
Packit 032894
 #define __GCC_HAVE_SYNC_COMPARE_AND_SWAP_8 1, line 1 (indirect)
Packit 032894
 #define __GCC_ATOMIC_BOOL_LOCK_FREE 2, line 1 (indirect)
Packit 032894
 #define __GCC_ATOMIC_CHAR_LOCK_FREE 2, line 1 (indirect)
Packit 032894
 #define __GCC_ATOMIC_CHAR16_T_LOCK_FREE 2, line 1 (indirect)
Packit 032894
 #define __GCC_ATOMIC_CHAR32_T_LOCK_FREE 2, line 1 (indirect)
Packit 032894
 #define __GCC_ATOMIC_WCHAR_T_LOCK_FREE 2, line 1 (indirect)
Packit 032894
 #define __GCC_ATOMIC_SHORT_LOCK_FREE 2, line 1 (indirect)
Packit 032894
 #define __GCC_ATOMIC_INT_LOCK_FREE 2, line 1 (indirect)
Packit 032894
 #define __GCC_ATOMIC_LONG_LOCK_FREE 2, line 1 (indirect)
Packit 032894
 #define __GCC_ATOMIC_LLONG_LOCK_FREE 2, line 1 (indirect)
Packit 032894
 #define __GCC_ATOMIC_TEST_AND_SET_TRUEVAL 1, line 1 (indirect)
Packit 032894
 #define __GCC_ATOMIC_POINTER_LOCK_FREE 2, line 1 (indirect)
Packit 032894
 #define __GCC_HAVE_DWARF2_CFI_ASM 1, line 1 (indirect)
Packit 032894
 #define __PRAGMA_REDEFINE_EXTNAME 1, line 1 (indirect)
Packit 032894
 #define __SIZEOF_INT128__ 16, line 1 (indirect)
Packit 032894
 #define __SIZEOF_WCHAR_T__ 4, line 1 (indirect)
Packit 032894
 #define __SIZEOF_WINT_T__ 4, line 1 (indirect)
Packit 032894
 #define __SIZEOF_PTRDIFF_T__ 8, line 1 (indirect)
Packit 032894
 #define __amd64 1, line 1 (indirect)
Packit 032894
 #define __amd64__ 1, line 1 (indirect)
Packit 032894
 #define __x86_64 1, line 1 (indirect)
Packit 032894
 #define __x86_64__ 1, line 1 (indirect)
Packit 032894
 #define __ATOMIC_HLE_ACQUIRE 65536, line 1 (indirect)
Packit 032894
 #define __ATOMIC_HLE_RELEASE 131072, line 1 (indirect)
Packit 032894
 #define __k8 1, line 1 (indirect)
Packit 032894
 #define __k8__ 1, line 1 (indirect)
Packit 032894
 #define __code_model_small__ 1, line 1 (indirect)
Packit 032894
 #define __MMX__ 1, line 1 (indirect)
Packit 032894
 #define __SSE__ 1, line 1 (indirect)
Packit 032894
 #define __SSE2__ 1, line 1 (indirect)
Packit 032894
 #define __FXSR__ 1, line 1 (indirect)
Packit 032894
 #define __SSE_MATH__ 1, line 1 (indirect)
Packit 032894
 #define __SSE2_MATH__ 1, line 1 (indirect)
Packit 032894
 #define __gnu_linux__ 1, line 1 (indirect)
Packit 032894
 #define __linux 1, line 1 (indirect)
Packit 032894
 #define __linux__ 1, line 1 (indirect)
Packit 032894
 #define linux 1, line 1 (indirect)
Packit 032894
 #define __unix 1, line 1 (indirect)
Packit 032894
 #define __unix__ 1, line 1 (indirect)
Packit 032894
 #define unix 1, line 1 (indirect)
Packit 032894
 #define __ELF__ 1, line 1 (indirect)
Packit 032894
 #define __DECIMAL_BID_FORMAT__ 1, line 1 (indirect)
Packit 032894
Packit 032894
EOF
Packit 032894
Packit 032894
cat macro.out | testrun_compare ${abs_top_builddir}/src/readelf -U --debug-dump=macro testfile-debug
Packit 032894
Packit 032894
cat macro.out | sed -e "s/.debug_macro' at offset 0xab5/.zdebug_macro' at offset 0x1aa7/" | testrun_compare ${abs_top_builddir}/src/readelf -U --debug-dump=macro testfile-zdebug
Packit 032894
Packit 032894
cat > line.out << \EOF
Packit 032894
Packit 032894
DWARF section [34] '.debug_line' at offset 0x104c:
Packit 032894
Packit 032894
Table at offset 0:
Packit 032894
Packit 032894
 Length:                         70
Packit 032894
 DWARF version:                  2
Packit 032894
 Prologue length:                40
Packit 032894
 Address size:                   8
Packit 032894
 Segment selector size:          0
Packit 032894
 Min instruction length:         1
Packit 032894
 Max operations per instruction: 1
Packit 032894
 Initial value if 'is_stmt':     1
Packit 032894
 Line base:                      -5
Packit 032894
 Line range:                     14
Packit 032894
 Opcode base:                    13
Packit 032894
Packit 032894
Opcodes:
Packit 032894
  [ 1]  0 arguments
Packit 032894
  [ 2]  1 argument
Packit 032894
  [ 3]  1 argument
Packit 032894
  [ 4]  1 argument
Packit 032894
  [ 5]  1 argument
Packit 032894
  [ 6]  0 arguments
Packit 032894
  [ 7]  0 arguments
Packit 032894
  [ 8]  0 arguments
Packit 032894
  [ 9]  1 argument
Packit 032894
  [10]  0 arguments
Packit 032894
  [11]  0 arguments
Packit 032894
  [12]  1 argument
Packit 032894
Packit 032894
Directory table:
Packit 032894
Packit 032894
File name table:
Packit 032894
 Entry Dir   Time      Size      Name
Packit 032894
 1     0     0         0         testfile-zdebug.c
Packit 032894
Packit 032894
Line number statements:
Packit 032894
 [    32] extended opcode 2:  set address to 0x4003c0
Packit 032894
 [    3d] special opcode 22: address+0 = 0x4003c0, line+4 = 5
Packit 032894
 [    3e] special opcode 20: address+0 = 0x4003c0, line+2 = 7
Packit 032894
 [    3f] special opcode 104: address+6 = 0x4003c6, line+2 = 9
Packit 032894
 [    40] special opcode 77: address+4 = 0x4003ca, line+3 = 12
Packit 032894
 [    41] special opcode 62: address+3 = 0x4003cd, line+2 = 14
Packit 032894
 [    42] special opcode 86: address+5 = 0x4003d2, line-2 = 12
Packit 032894
 [    43] special opcode 76: address+4 = 0x4003d6, line+2 = 14
Packit 032894
 [    44] special opcode 47: address+2 = 0x4003d8, line+1 = 15
Packit 032894
 [    45] advance address by 1 to 0x4003d9
Packit 032894
 [    47] extended opcode 1:  end of sequence
Packit 032894
EOF
Packit 032894
Packit 032894
cat line.out | testrun_compare ${abs_top_builddir}/src/readelf -U --debug-dump=line testfile-debug
Packit 032894
Packit 032894
cat line.out | sed -e "s/.debug_line' at offset 0x104c/.zdebug_line' at offset 0x1d53/" | testrun_compare ${abs_top_builddir}/src/readelf -U --debug-dump=line testfile-zdebug
Packit 032894
Packit 032894
Packit 032894
cat > frame.out << \EOF
Packit 032894
Packit 032894
Call frame information section [16] '.eh_frame' at offset 0x5b8:
Packit 032894
Packit 032894
 [     0] CIE length=20
Packit 032894
   CIE_id:                   0
Packit 032894
   version:                  1
Packit 032894
   augmentation:             "zR"
Packit 032894
   code_alignment_factor:    1
Packit 032894
   data_alignment_factor:    -8
Packit 032894
   return_address_register:  16
Packit 032894
   Augmentation data:        0x1b (FDE address encoding: sdata4 pcrel)
Packit 032894
Packit 032894
   Program:
Packit 032894
     def_cfa r7 (rsp) at offset 8
Packit 032894
     offset r16 (rip) at cfa-8
Packit 032894
     nop
Packit 032894
     nop
Packit 032894
Packit 032894
 [    18] FDE length=20 cie=[     0]
Packit 032894
   CIE_pointer:              28
Packit 032894
   initial_location:         0x00000000ffffff08 (offset: 0x4e0)
Packit 032894
   address_range:            0x2 (end offset: 0x4e2)
Packit 032894
Packit 032894
   Program:
Packit 032894
     nop
Packit 032894
     nop
Packit 032894
     nop
Packit 032894
     nop
Packit 032894
     nop
Packit 032894
     nop
Packit 032894
     nop
Packit 032894
Packit 032894
 [    30] FDE length=44 cie=[     0]
Packit 032894
   CIE_pointer:              52
Packit 032894
   initial_location:         0x00000000ffffff00 (offset: 0x4f0)
Packit 032894
   address_range:            0x89 (end offset: 0x579)
Packit 032894
Packit 032894
   Program:
Packit 032894
     advance_loc 17 to 0x501
Packit 032894
     offset r12 (r12) at cfa-40
Packit 032894
     offset r6 (rbp) at cfa-48
Packit 032894
     advance_loc 31 to 0x520
Packit 032894
     def_cfa_offset 64
Packit 032894
     offset r3 (rbx) at cfa-56
Packit 032894
     offset r15 (r15) at cfa-16
Packit 032894
     offset r14 (r14) at cfa-24
Packit 032894
     offset r13 (r13) at cfa-32
Packit 032894
     advance_loc1 88 to 0x578
Packit 032894
     def_cfa_offset 8
Packit 032894
     nop
Packit 032894
     nop
Packit 032894
     nop
Packit 032894
     nop
Packit 032894
     nop
Packit 032894
     nop
Packit 032894
     nop
Packit 032894
     nop
Packit 032894
     nop
Packit 032894
     nop
Packit 032894
     nop
Packit 032894
Packit 032894
 [    60] FDE length=36 cie=[     0]
Packit 032894
   CIE_pointer:              100
Packit 032894
   initial_location:         0x00000000fffffd80 (offset: 0x3a0)
Packit 032894
   address_range:            0x20 (end offset: 0x3c0)
Packit 032894
Packit 032894
   Program:
Packit 032894
     def_cfa_offset 16
Packit 032894
     advance_loc 6 to 0x3a6
Packit 032894
     def_cfa_offset 24
Packit 032894
     advance_loc 10 to 0x3b0
Packit 032894
     def_cfa_expression 11
Packit 032894
          [ 0] breg7 8
Packit 032894
          [ 2] breg16 0
Packit 032894
          [ 4] lit15
Packit 032894
          [ 5] and
Packit 032894
          [ 6] lit11
Packit 032894
          [ 7] ge
Packit 032894
          [ 8] lit3
Packit 032894
          [ 9] shl
Packit 032894
          [10] plus
Packit 032894
     nop
Packit 032894
     nop
Packit 032894
     nop
Packit 032894
     nop
Packit 032894
Packit 032894
 [    88] Zero terminator
Packit 032894
Packit 032894
Call frame search table section [17] '.eh_frame_hdr':
Packit 032894
 version:          1
Packit 032894
 eh_frame_ptr_enc: 0x1b (sdata4 pcrel)
Packit 032894
 fde_count_enc:    0x3 (udata4)
Packit 032894
 table_enc:        0x3b (sdata4 datarel)
Packit 032894
 eh_frame_ptr:     0xffffffffffffff70 (offset: 0x5b8)
Packit 032894
 fde_count:        3
Packit 032894
 Table:
Packit 032894
  0xfffffd5c (offset:  0x3a0) -> 0xffffffd4 fde=[    60]
Packit 032894
  0xfffffe9c (offset:  0x4e0) -> 0xffffff8c fde=[    18]
Packit 032894
  0xfffffeac (offset:  0x4f0) -> 0xffffffa4 fde=[    30]
Packit 032894
Packit 032894
DWARF section [36] '.debug_frame' at offset 0x29b8:
Packit 032894
Packit 032894
 [     0] CIE length=20
Packit 032894
   CIE_id:                   18446744073709551615
Packit 032894
   version:                  1
Packit 032894
   augmentation:             ""
Packit 032894
   code_alignment_factor:    1
Packit 032894
   data_alignment_factor:    -8
Packit 032894
   return_address_register:  16
Packit 032894
Packit 032894
   Program:
Packit 032894
     def_cfa r7 (rsp) at offset 8
Packit 032894
     offset r16 (rip) at cfa-8
Packit 032894
     nop
Packit 032894
     nop
Packit 032894
     nop
Packit 032894
     nop
Packit 032894
     nop
Packit 032894
     nop
Packit 032894
Packit 032894
 [    18] FDE length=20 cie=[     0]
Packit 032894
   CIE_pointer:              0
Packit 032894
   initial_location:         0x00000000004003c0
Packit 032894
   address_range:            0x19
Packit 032894
Packit 032894
   Program:
Packit 032894
EOF
Packit 032894
Packit 032894
cat frame.out | testrun_compare ${abs_top_builddir}/src/readelf -U --debug-dump=frame testfile-debug
Packit 032894
Packit 032894
cat frame.out | sed -e "s/.debug_frame' at offset 0x29b8/.zdebug_frame' at offset 0x2728/" | testrun_compare ${abs_top_builddir}/src/readelf -U --debug-dump=frame testfile-zdebug
Packit 032894
Packit 032894