diff options
author | Mark Harmstone <mark@harmstone.com> | 2024-06-24 23:39:46 -0600 |
---|---|---|
committer | Jeff Law <jlaw@ventanamicro.com> | 2024-06-24 23:39:46 -0600 |
commit | 4f86d2a5c0246a90d8d20fb325572a97f3ce7080 (patch) | |
tree | 1b7abd4c700dda04ee4a84a6f82e7ec7d889cddd /gcc/gcov-io.h | |
parent | 41ff74aa581ed38d04c46e6c8839eab48e1b63de (diff) | |
download | gcc-4f86d2a5c0246a90d8d20fb325572a97f3ce7080.zip gcc-4f86d2a5c0246a90d8d20fb325572a97f3ce7080.tar.gz gcc-4f86d2a5c0246a90d8d20fb325572a97f3ce7080.tar.bz2 |
[PATCH 07/11] Handle structs and classes for CodeView
Translates DW_TAG_structure_type DIEs into LF_STRUCTURE symbols, and
DW_TAG_class_type DIEs into LF_CLASS symbols.
gcc/
* dwarf2codeview.cc (struct codeview_type): Add is_fwd_ref member.
(struct codeview_subtype): Add lf_member to union.
(struct codeview_custom_type): Add lf_structure to union.
(struct codeview_deferred_type): New structure.
(deferred_types, last_deferred_type): New variables.
(get_type_num): Add new args to prototype.
(write_lf_fieldlist): Handle LF_MEMBER subtypes.
(write_lf_structure): New function.
(write_custom_types): Call write_lf_structure.
(get_type_num_pointer_type): Add in_struct argument.
(get_type_num_const_type): Likewise.
(get_type_num_volatile_type): Likewise.
(add_enum_forward_def): Fix get_type_num call.
(get_type_num_enumeration_type): Add in-struct argument.
(add_deferred_type, flush_deferred_types): New functions.
(add_struct_forward_def, get_type_num_struct): Likewise.
(get_type_num): Handle self-referential structs.
(add_variable): Fix get_type_num call.
(codeview_debug_early_finish): Call flush_deferred_types.
* dwarf2codeview.h (LF_CLASS, LF_STRUCTURE, LF_MEMBER): Define.
Diffstat (limited to 'gcc/gcov-io.h')
0 files changed, 0 insertions, 0 deletions