On 11/6/24 9:39 PM, Mark Harmstone wrote:
When outputting the .debug$S CodeView section, also write an S_INLINEELINES subsection, which records the filename and line number of the start of each inlined function. gcc/ * dwarf2codeview.cc (DEBUG_S_INLINEELINES): Define. (CV_INLINEE_SOURCE_LINE_SIGNATURE): Define. (struct codeview_inlinee_lines): Define. (struct inlinee_lines_hasher): Define. (func_htab, inlinee_lines_htab): New global variables. (get_file_id): New function. (codeview_source_line): Move file_id logic to get_file_id. (write_inlinee_lines_entry): New function. (write_inlinee_lines): New function. (codeview_debug_finish): Call write_inlinee_lines, and free func_htab and inlinee_lines_htab. (get_func_id): New function. (add_function): Move func_id logic to get_func_id. (codeview_abstract_function): New function. * dwarf2codeview.h (codeview_abstract_function): Add declaration. * dwarf2out.cc (dwarf2out_abstract_function): Call codeview_abstract_function if outputting CodeView debug info.
OK jeff