Dwarf_FDE (libdw)
Sasha Da Rocha Pinheiro
darochapinhe@wisc.edu
Sat Jul 15 01:01:00 GMT 2017
Hi,
I did not understand how to get the augmentation_data of a FDE. Could anyone explain me?
Also, is the start and end of Dwarf_FDE to be used as [initial_location, initial_location+address_range)??
Regards,
Sasha
typedef struct
{
/* Section offset of CIE this FDE refers to. This will never be
DW_CIE_ID_64 in an FDE. If this value is DW_CIE_ID_64, this is
actually a Dwarf_CIE structure. */
Dwarf_Off CIE_pointer;
/* We can't really decode anything further without looking up the CIE
and checking its augmentation string. Here follows the encoded
initial_location and address_range, then any augmentation data,
then the instruction stream. This FDE describes PC locations in
the byte range [initial_location, initial_location+address_range).
When the CIE augmentation string uses 'z', the augmentation data is
a DW_FORM_block (self-sized). Otherwise, when we understand the
augmentation string completely, fde_augmentation_data_size gives
the number of bytes of augmentation data before the instructions. */
const uint8_t *start;
const uint8_t *end;
} Dwarf_FDE;
More information about the Elfutils-devel
mailing list