diff options
| author | Mark Wielaard <[email protected]> | 2017-11-15 12:13:38 +0100 |
|---|---|---|
| committer | Mark Wielaard <[email protected]> | 2018-03-11 16:34:02 +0100 |
| commit | 86fbef9bcadb98272e247a005fdc8d7fd0701179 (patch) | |
| tree | 713bf5f761e9436e5c790fbad1c9f6c57ae73eeb /libdw/dwarf.h | |
| parent | 06263dda990be6778a4beb33481cfd39ce60c623 (diff) | |
libdw: Add new DWARF5 Dwarf expression operations.
DW_OP_implicit_pointer, DW_OP_entry_value, DW_OP_const_type,
DW_OP_regval_type, DW_OP_deref_type, DW_OP_xderef_type,
DW_OP_convert and OP_reinterpret are implemented like their
pre-DWARF5 GNU variants.
DW_OP_xderef_type is implemented as a (non-CU relative) variant of
DW_OP_deref_type.
DW_OP_addrx and DW_OP_constx are recognized but not interpreted yet.
Signed-off-by: Mark Wielaard <[email protected]>
Diffstat (limited to 'libdw/dwarf.h')
| -rw-r--r-- | libdw/dwarf.h | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/libdw/dwarf.h b/libdw/dwarf.h index d53a30d8..99cc1128 100644 --- a/libdw/dwarf.h +++ b/libdw/dwarf.h @@ -567,6 +567,17 @@ enum DW_OP_implicit_value = 0x9e, /* DW_FORM_block follows opcode. */ DW_OP_stack_value = 0x9f, /* No operands, special like DW_OP_piece. */ + DW_OP_implicit_pointer = 0xa0, + DW_OP_addrx = 0xa1, + DW_OP_constx = 0xa2, + DW_OP_entry_value = 0xa3, + DW_OP_const_type = 0xa4, + DW_OP_regval_type = 0xa5, + DW_OP_deref_type = 0xa6, + DW_OP_xderef_type = 0xa7, + DW_OP_convert = 0xa8, + DW_OP_reinterpret = 0xa9, + /* GNU extensions. */ DW_OP_GNU_push_tls_address = 0xe0, DW_OP_GNU_uninit = 0xf0, |
