libdwarf
|
Section Groups Overview More...
Functions | |
int | dwarf_sec_group_sizes (Dwarf_Debug dw_dbg, Dwarf_Unsigned *dw_section_count_out, Dwarf_Unsigned *dw_group_count_out, Dwarf_Unsigned *dw_selected_group_out, Dwarf_Unsigned *dw_map_entry_count_out, Dwarf_Error *dw_error) |
Get Section Groups data counts. More... | |
int | dwarf_sec_group_map (Dwarf_Debug dw_dbg, Dwarf_Unsigned dw_map_entry_count, Dwarf_Unsigned *dw_group_numbers_array, Dwarf_Unsigned *dw_sec_numbers_array, const char **dw_sec_names_array, Dwarf_Error *dw_error) |
Returns a map between group numbers and section numbers. More... | |
int dwarf_sec_group_sizes | ( | Dwarf_Debug | dw_dbg, |
Dwarf_Unsigned * | dw_section_count_out, | ||
Dwarf_Unsigned * | dw_group_count_out, | ||
Dwarf_Unsigned * | dw_selected_group_out, | ||
Dwarf_Unsigned * | dw_map_entry_count_out, | ||
Dwarf_Error * | dw_error | ||
) |
Get Section Groups data counts.
Allows callers to find out what groups (dwo or COMDAT) are in the object and how much to allocate so one can get the group-section map data.
This is relevant for Debug Fission. If an object file has both .dwo sections and non-dwo sections or it has Elf COMDAT GROUP sections this becomes important.
dw_dbg | Pass in the Dwarf_Debug of interest. |
dw_section_count_out | On success returns the number of DWARF sections in the object file. Can sometimes be many more than are of interest. |
dw_group_count_out | On success returns the number of groups. Though usually one, it can be much larger. |
dw_selected_group_out | On success returns the groupnumber that applies to this specific open Dwarf_Debug. |
dw_map_entry_count_out | On success returns the count of record allocations needed to call dwarf_sec_group_map successfully. dw_map_entry_count_out will be less than or equal to dw_section_count_out. |
dw_error | The usual error details pointer. |
int dwarf_sec_group_map | ( | Dwarf_Debug | dw_dbg, |
Dwarf_Unsigned | dw_map_entry_count, | ||
Dwarf_Unsigned * | dw_group_numbers_array, | ||
Dwarf_Unsigned * | dw_sec_numbers_array, | ||
const char ** | dw_sec_names_array, | ||
Dwarf_Error * | dw_error | ||
) |
Returns a map between group numbers and section numbers.
This map shows all the groups in the object file and shows which object sections go with which group.
dw_dbg | The Dwarf_Debug of interest. |
dw_map_entry_count | Pass in the dw_map_entry_count_out from dwarf_sec_group_sizes |
dw_group_numbers_array | Pass in an array of Dwarf_Unsigned with dw_map_entry_count entries. Zero the data before the call here. On success returns a list of group numbers. |
dw_sec_numbers_array | Pass in an array of Dwarf_Unsigned with dw_map_entry_count entries. Zero the data before the call here. On success returns a list of section numbers. |
dw_sec_names_array | Pass in an array of const char * with dw_map_entry_count entries. Zero the data before the call here. On success returns a list of section names. |
dw_error | The usual error details pointer. |