[PATCH 00/12 v2] Seventh step (and last to date) for Dwarf 3/4 support in dbghelp

Eric Pouech eric.pouech at gmail.com
Sun Sep 26 07:46:23 CDT 2021


The following series implements:
- better support for some compilation units descriptions
- DW_OP_call_frame_cfa implementation: gcc when emitting dwarf4, heavily
  uses this for describing vars/parameters.
- silencing some unsupported yet elements
- now letting dbghelp, **by default**, load compilations unit with
  dwarf 2, 3 or 4 debug information
- by option, let wine be compiled with dwarf4 debug information (default is
  still dwarf 2) (using DEBUGFORMAT=dwarf-4 and CROSSDEBUG=dwarf-4 as
  configure options)

Changes from v2
- more silencing
- reordered patch order for having configure bits at the end
- added support for local variables with constant values
- simplified a bit call_frame_cfa handling

Last patch requires re-running autoconf before applying.

A+

---

Eric Pouech (12):
      dbghelp/dwarf: Fixed a couple of parent/child mismatch
      dbghelp/dwarf: Added support for partial compilation units
      dbghelp/dwarf: added support for DW_TAG_imported_unit
      dbghelp/dwarf: pass cuhead to loc_compute_frame
      dbghelp/dwarf: split dwarf2_virtual_unwind into two functions
      dbghelp/dwarf: Added support for OP_call_frame_cfa
      dbghelp/dwarf: Silence a couple of dwarf DIE's tag in load_one_debug_entry
      dbghelp/dwarf: downgrade FIXME into WARN for empty range
      dbghelp/dwarf: added support for local variables with constant values
      dbghelp/dwarf: fix incorrect WARN
      dbghelp/dwarf: Bumping max supported version (by default) up to 4
      configure: allow picking up a dedicated dwarf version from command line


 configure                      | 168 ++++++++++++++++++++++----
 configure.ac                   |  15 ++-
 dlls/dbghelp/dbghelp_private.h |   4 +
 dlls/dbghelp/dwarf.c           | 212 +++++++++++++++++++++++----------
 dlls/dbghelp/symbol.c          |  36 ++++++
 5 files changed, 347 insertions(+), 88 deletions(-)




More information about the wine-devel mailing list