diff options
Diffstat (limited to 'src/readDwarf.cpp')
-rw-r--r-- | src/readDwarf.cpp | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/readDwarf.cpp b/src/readDwarf.cpp index 85668a3..1bab48e 100644 --- a/src/readDwarf.cpp +++ b/src/readDwarf.cpp @@ -265,13 +265,16 @@ Location decodeLocation(const DWARF_Attribute& attr, const Location* frameBase, case DW_OP_nop:
break;
+ case DW_OP_call_frame_cfa: // assume ebp+8/rbp+16
+ stack[stackDepth++] = Location{ Location::RegRel, DW_REG_CFA, 0 };
+ break;
+
case DW_OP_deref:
case DW_OP_deref_size:
case DW_OP_push_object_address:
case DW_OP_call2:
case DW_OP_call4:
case DW_OP_form_tls_address:
- case DW_OP_call_frame_cfa:
case DW_OP_call_ref:
case DW_OP_bit_piece:
case DW_OP_implicit_value:
|