Improve the DWARF decoder's ability to describe the DW_AT_discr_list attribute.
authorNick Clifton <nickc@redhat.com>
Tue, 27 Aug 2019 15:28:55 +0000 (16:28 +0100)
committerNick Clifton <nickc@redhat.com>
Tue, 27 Aug 2019 15:28:55 +0000 (16:28 +0100)
commitec1b0fbb8dffc09f64f65b6459b786c35218803a
tree26c032d1dfbf17df520724cc95435346f4cdf8fa
parent4acfdd20c9ef3c0368868b4221554f0abef04196
Improve the DWARF decoder's ability to describe the DW_AT_discr_list attribute.

PR 24510
* dwarf.c (MAX_CU_NESTING): New constant.
(level_type_signed): New static array.
(skip_attr_bytes): New function.
(get_type_signedness): New function.
(read_and_print_leb128): New function.
(display_discr_list): New function.
(read_and_display_attr_value): Add start parameter.
Use new functions when handling DW_AT_type and DW_AT_discr_list.
(read_and_display_attr): Add start parameter.  Pass to
read_and_display_attr_value.
(process_debug_info): Update call to read_and_display_attr.
(display_formatted_table): Likewise.
(display_debug_lines_decoded): Likewise.  Also add start
parameter.
(display_debug_lines): Likewise.
* testsuite/binutils-all/dwarf-attributes.S: Update discrimination
lists.
* testsuite/binutils-all/dwarf-attributes.W: Update expected
output.
binutils/ChangeLog
binutils/dwarf.c
binutils/testsuite/binutils-all/dwarf-attributes.S
binutils/testsuite/binutils-all/dwarf-attributes.W