]> git.ipfire.org Git - thirdparty/gcc.git/commit
Output CodeView function information
authorMark Harmstone <mark@harmstone.com>
Thu, 27 Jun 2024 23:36:14 +0000 (00:36 +0100)
committerMark Harmstone <mark@harmstone.com>
Sat, 20 Jul 2024 16:27:16 +0000 (17:27 +0100)
commit493c55578fe00f5f4a7534b8f5cb5213f86f4d01
tree1d11143fc401b0616ccca1b8509a9c8e8c56f84b
parent7357ba20af44698fea9d8ad5573973dd9ec74778
Output CodeView function information

Translate DW_TAG_subprogram DIEs into CodeView LF_FUNC_ID types and
S_GPROC32_ID / S_LPROC32_ID symbols.  ld will then transform these into
S_GPROC32 / S_LPROC32 symbols, which map addresses to unmangled function
names.

gcc/
* dwarf2codeview.cc (enum cv_sym_type): Add new values.
(struct codeview_symbol): Add function to union.
(struct codeview_custom_type): Add lf_func_id to union.
(write_function): New function.
(write_codeview_symbols): Call write_function.
(write_lf_func_id): New function.
(write_custom_types): Call write_lf_func_id.
(add_function): New function.
(codeview_debug_early_finish): Call add_function.
gcc/dwarf2codeview.cc