mirror of
https://github.com/espressif/binutils-gdb.git
synced 2025-06-25 21:41:47 +08:00
Add support for generating DWARF-5 format directory and file name tables from the assembler.
PR 25611 PR 25614 * dwarf.h (DWARF2_Internal_LineInfo): Add li_address_size and li_segment_size fields. * dwarf.c (read_debug_line_header): Record the address size and segment selector size values (if present) in the lineinfo structure. (display_formatted_table): Warn if the format count is empty but the table itself is not empty. Display the format count and entry count at the start of the table dump. (display_debug_lines_raw): Display the address size and segement selector size fields, if present. * testsuite/binutils-all/dw5.W: Update expected output. gas * dwarf2dbg.c (DWARF2_FILE_TIME_NAME): Default to -1. (DWARF2_FILE_SIZE_NAME): Default to -1. (DWARF2_LINE_VERSION): Default to the current dwarf level or 3, whichever is higher. (DWARF2_LINE_MAX_OPS_PER_INSN): Provide a default value of 1. (NUM_MD5_BYTES): Define. (struct file entry): Add md5 field. (get_filenum): Delete and replace with... (get_basename): New function. (get_directory_table_entry): New function. (allocate_filenum): New function. (allocate_filename_to_slot): New function. (dwarf2_where): Use new functions. (dwarf2_directive_filename): Add support for extended .file pseudo-op. (dwarf2_directive_loc): Allow the use of file number zero with DWARF 5 or higher. (out_file_list): Rename to... (out_dir_and_file_list): Add DWARF 5 support. (out_debug_line): Emit extra values into the section header for DWARF 5. (out_debug_str): Allow for file 0 to be used with DWARF 5. * doc/as.texi (.file): Update the description of this pseudo-op. * testsuite/gas/elf-dwarf-5-file0.s: Add more lines. * testsuite/gas/elf-dwarf-5-file0.d: Update expected dump output. * testsuite/gas/lns/lns-diag-1.l: Update expected error message. * NEWS: Mention the new feature.
This commit is contained in:
@ -291,6 +291,8 @@ Raw dump of debug contents of section .debug_line:
|
||||
Offset: 0x0
|
||||
Length: 144
|
||||
DWARF Version: 5
|
||||
Address size \(bytes\): 8
|
||||
Segment selector \(bytes\): 0
|
||||
Prologue Length: 60
|
||||
Minimum Instruction Length: 1
|
||||
Maximum Ops per Instruction: 1
|
||||
@ -313,13 +315,13 @@ Raw dump of debug contents of section .debug_line:
|
||||
Opcode 11 has 0 args
|
||||
Opcode 12 has 1 arg
|
||||
|
||||
The Directory Table \(offset 0x22\):
|
||||
The Directory Table \(offset 0x22, lines 3, columns 1\):
|
||||
Entry Name
|
||||
0 \(indirect line string, offset: 0x0\):
|
||||
1 \(indirect line string, offset: 0x1\):
|
||||
2 \(indirect line string, offset: 0x22\): /usr/include
|
||||
|
||||
The File Name Table \(offset 0x34\):
|
||||
The File Name Table \(offset 0x34, lines 4, columns 2\):
|
||||
Entry Dir Name
|
||||
0 0 \(indirect line string, offset: 0x14\): main.c
|
||||
1 1 \(indirect line string, offset: 0x1b\): main.c
|
||||
|
Reference in New Issue
Block a user