Fields

cie_length_offset: u64,
pc_begin: u64,
pc_range: u64,
lsda_pointer: ?u64,
aug_data: []const u8,
instructions: []const u8,

Functions

fn parse(fde_bytes: []const u8, pc_rel_offset: i64, is_runtime: bool, cie: CommonInformationEntry, addr_size_bytes: u8, endian: std.builtin.Endian) !FrameDescriptionEntry

This function expects to read the FDE starting at the PC Begin field. The retur…

This function expects to read the FDE starting at the PC Begin field. The returned struct references memory backed by fde_bytes.

pc_rel_offset specifies an offset to be applied to pc_rel_base values used when decoding pointers. This should be set to zero if fde_bytes is backed by the memory of a .eh_frame / .debug_frame section in the running executable. Otherwise, it should be the relative offset to translate addresses from where the section is currently stored in memory, to where it would be stored at runtime: section base addr - backing data base ptr.

Similarly, is_runtime specifies this function is being called on a runtime section, and so indirect pointers can be followed.