From ac194d052517be32d1e3dab62782d5f734994dca Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Tue, 6 Jan 2009 00:30:01 -0800 Subject: Implement call frame information dumping. --- libdw/dwarf.h | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) (limited to 'libdw/dwarf.h') diff --git a/libdw/dwarf.h b/libdw/dwarf.h index f1261c36..091519c5 100644 --- a/libdw/dwarf.h +++ b/libdw/dwarf.h @@ -668,6 +668,40 @@ enum DW_CFA_high_user = 0x3f }; +/* ID indicating CIE as opposed to FDE in .debug_frame. */ +enum + { + DW_CIE_ID = 0xffffffff + }; + + +/* Information for GNU unwind information. */ +enum + { + DW_EH_PE_absptr = 0x00, + DW_EH_PE_omit = 0xff, + + /* FDE data encoding. */ + DW_EH_PE_uleb128 = 0x01, + DW_EH_PE_udata2 = 0x02, + DW_EH_PE_udata4 = 0x03, + DW_EH_PE_udata8 = 0x04, + DW_EH_PE_sleb128 = 0x09, + DW_EH_PE_sdata2 = 0x0a, + DW_EH_PE_sdata4 = 0x0b, + DW_EH_PE_sdata8 = 0x0c, + DW_EH_PE_signed = 0x08, + + /* FDE flags. */ + DW_EH_PE_pcrel = 0x10, + DW_EH_PE_textrel = 0x20, + DW_EH_PE_datarel = 0x30, + DW_EH_PE_funcrel = 0x40, + DW_EH_PE_aligned = 0x50, + + DW_EH_PE_indirect = 0x80 + }; + /* DWARF XXX. */ #define DW_ADDR_none 0 -- cgit v1.2.3