summaryrefslogtreecommitdiffstats
path: root/libdw/dwarf.h
diff options
context:
space:
mode:
authorMark Wielaard <[email protected]>2017-11-24 19:29:57 +0100
committerMark Wielaard <[email protected]>2018-05-29 12:18:43 +0200
commit7cfe2c16f9ddaa7478a2d97dd893c6b89080020a (patch)
treed3ceaf787ee03c7cb5f22728b1ddd92bca56fdb2 /libdw/dwarf.h
parent263dbe8ca17f66baa184f489530eb92afa15adfe (diff)
readelf: Handle .debug_loclists.
The new DWARF5 .debug_loclists sections are like .debug_rnglists, but plus locations. For Split Dwarf GCC generates the .debug_loclists fully in the split .dwo file. Any references to addresses need to be resolved through the skeleton .debug_addr section. Signed-off-by: Mark Wielaard <[email protected]>
Diffstat (limited to 'libdw/dwarf.h')
-rw-r--r--libdw/dwarf.h16
1 files changed, 16 insertions, 0 deletions
diff --git a/libdw/dwarf.h b/libdw/dwarf.h
index 9c2495e6..8985a9d4 100644
--- a/libdw/dwarf.h
+++ b/libdw/dwarf.h
@@ -899,6 +899,22 @@ enum
DW_RLE_start_length = 0x7
};
+
+/* Location list entry encoding. */
+enum
+ {
+ DW_LLE_end_of_list = 0x0,
+ DW_LLE_base_addressx = 0x1,
+ DW_LLE_startx_endx = 0x2,
+ DW_LLE_startx_length = 0x3,
+ DW_LLE_offset_pair = 0x4,
+ DW_LLE_default_location = 0x5,
+ DW_LLE_base_address = 0x6,
+ DW_LLE_start_end = 0x7,
+ DW_LLE_start_length = 0x8
+ };
+
+
/* DWARF call frame instruction encodings. */
enum
{