]> gcc.gnu.org Git - gcc.git/commit
[PATCH v2 3/4] Output line numbers in CodeView section
authorMark Harmstone <mark@harmstone.com>
Sat, 11 May 2024 14:19:53 +0000 (08:19 -0600)
committerJeff Law <jlaw@ventanamicro.com>
Sat, 11 May 2024 14:19:53 +0000 (08:19 -0600)
commit1f129e5e2b74c20a757f2809792af229b551b09b
treef3ec2ce24e98514508281a6127d147fdb5b96db1
parented6690a0ca911138abd4d707510fd03ef188a28b
[PATCH v2 3/4] Output line numbers in CodeView section

Outputs the DEBUG_S_LINES block in the CodeView .debug$S section, which
maps between line numbers and addresses.

You'll need a fairly recent version of GAS for the .secidx directive to
be recognized.

gcc/
* dwarf2codeview.cc (DEBUG_S_LINES, LINE_LABEL): Define.
(END_FUNC_LABEL): Likewise.
(struct codeview_line, codeview_line_block): New structures.
(codeview_function): Likewise.
(line_label_num, func_label_num, funcs, last_func): New variables.
(last_filename, last_file_id): Likewise.
(codeview_source_line, write_line_numbers): New functions.
(codeview_switch_text_section, codeview_end_epilogue): Likewise.
(codeview_debug_finish): Call write_line_numbers.
* dwarf2codeview.h (codeview_source_line): Prototype.
(codeview_switch_text_secction, codeview_end_epilogue): Likewise.
* dwarf2out.cc (dwarf2_end_epilogue): Add codeview support.
(dwarf2out_switch_text_section): Likewise.
(dwarf2out_source_line): Likewise.
* opts.cc (finish_options): Handle codeview debugging symbols.
gcc/dwarf2codeview.cc
gcc/dwarf2codeview.h
gcc/dwarf2out.cc
gcc/opts.cc
This page took 0.06602 seconds and 6 git commands to generate.