]> git.ipfire.org Git - thirdparty/gcc.git/commit
[PATCH 06/11] Handle enums for CodeView
authorMark Harmstone <mark@harmstone.com>
Mon, 24 Jun 2024 03:48:22 +0000 (21:48 -0600)
committerJeff Law <jlaw@ventanamicro.com>
Mon, 24 Jun 2024 03:48:22 +0000 (21:48 -0600)
commitd820db38870155d941ffcad5846389e0de059534
treee167734f89497d9518066f27c1a65cc51c89c54f
parent29fec9ee74c3219bce714f2e5b6381a48049e01e
[PATCH 06/11] Handle enums for CodeView

Translates DW_TAG_enumeration_type DIEs into LF_ENUM symbols.

gcc/
* dwarf2codeview.cc (MAX_FIELDLIST_SIZE): Define.
(struct codeview_integer): New structure.
(struct codeview_subtype): Likewise
(struct codeview_custom_type): Add lf_fieldlist and lf_enum to union.
(write_cv_integer, cv_integer_len): New functions.
(write_lf_fieldlist, write_lf_enum): Likewise.
(write_custom_types): Call write_lf_fieldlist and write_lf_enum.
(add_enum_forward_def): New function.
(get_type_num_enumeration_type): Likewise.
(get_type_num): Handle DW_TAG_enumeration_type DIEs.
* dwarf2codeview.h (LF_FIELDLIST, LF_INDEX, LF_ENUMERATE): Define.
(LF_ENUM, LF_CHAR, LF_SHORT, LF_USHORT, LF_LONG): Likewise.
(LF_ULONG, LF_QUADWORD, LF_UQUADWORD): Likewise.
(CV_ACCESS_PRIVATE, CV_ACCESS_PROTECTED): Likewise.
(CV_ACCESS_PUBLIC, CV_PROP_FWDREF): Likewise.
gcc/dwarf2codeview.cc
gcc/dwarf2codeview.h