[Lldb-commits] [PATCH] D52689: [LLDB] - Add support for DW_FORM_implicit_const.
Greg Clayton via Phabricator via lldb-commits
lldb-commits at lists.llvm.org
Wed Oct 10 09:56:49 PDT 2018
clayborg requested changes to this revision.
clayborg added a comment.
This revision now requires changes to proceed.
A few things inlined. Very close. DumpAttribute will need to take a DWARFFormValue in order to dump the value correctly.
================
Comment at: source/Plugins/SymbolFile/DWARF/DWARFAbbreviationDeclaration.h:43-44
+ dw_form_t form;
+ DWARFFormValue::ValueType val;
+ m_attributes[idx].get(attr, form, val);
+ form_value.SetForm(form);
----------------
It would be nice to be able to access the dw_form_t and DWARFFormValue::ValueType within "form_value" without having to create a temp variables here for both "form" and "val". Fine to add accessors that return references for the form_t and DWARFFormValue::ValueType to DWARFFormValue.
================
Comment at: source/Plugins/SymbolFile/DWARF/DWARFAbbreviationDeclaration.h:45-46
+ m_attributes[idx].get(attr, form, val);
+ form_value.SetForm(form);
+ form_value.SetValue(val);
}
----------------
If we are able to follow my last inline comment, then these go away.
================
Comment at: source/Plugins/SymbolFile/DWARF/DWARFAttribute.h:23
+ DWARFAttribute(dw_attr_t attr, dw_form_t form,
+ DWARFFormValue::ValueType value)
+ : m_attr(attr), m_form(form), m_value(value) {}
----------------
Do we need to use a "DWARFFormValue::ValueType" here? Right now we only need a int64_t and DWARFFormValue::ValueType is larger than that. It does future proof us a bit and there aren't all that many abbreviations, even in a large DWARF file. Just thinking out loud here
================
Comment at: source/Plugins/SymbolFile/DWARF/DWARFDebugInfoEntry.cpp:630-631
DumpAttribute(dwarf2Data, cu, debug_info_data, &offset, s, attr,
- form);
+ form_value.Form());
}
----------------
DumpAttribute will need to take the full form_value in order to dump DW_FORM_implicit_const forms correctly. Change DumpAttribute to take a "form_value"
https://reviews.llvm.org/D52689
More information about the lldb-commits
mailing list