[all-commits] [llvm/llvm-project] a8ec9d: [MC] Add --dwarf64 to generate DWARF64 debug info ...

Igor Kudrin via All-commits all-commits at lists.llvm.org
Tue Jun 16 01:51:41 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: a8ec9de406ebd55b838813fc4fb1f4f770e56cdd
      https://github.com/llvm/llvm-project/commit/a8ec9de406ebd55b838813fc4fb1f4f770e56cdd
  Author: Igor Kudrin <ikudrin at accesssoftek.com>
  Date:   2020-06-16 (Tue, 16 Jun 2020)

  Changed paths:
    M llvm/include/llvm/MC/MCContext.h
    M llvm/include/llvm/MC/MCTargetOptions.h
    M llvm/include/llvm/MC/MCTargetOptionsCommandFlags.h
    M llvm/lib/MC/MCTargetOptions.cpp
    M llvm/lib/MC/MCTargetOptionsCommandFlags.cpp
    A llvm/test/MC/COFF/dwarf64-err.s
    A llvm/test/MC/ELF/dwarf64-err.s
    M llvm/tools/llvm-mc/llvm-mc.cpp

  Log Message:
  -----------
  [MC] Add --dwarf64 to generate DWARF64 debug info [1/7]

The patch adds an option `--dwarf64` to instruct a tool to generate
debug information in the 64-bit DWARF format. There is no real
implementation yet, only a few compatibility checks.

Differential Revision: https://reviews.llvm.org/D81143


  Commit: 64c049595b5d04f0f3c3ee8648624663bab19f8c
      https://github.com/llvm/llvm-project/commit/64c049595b5d04f0f3c3ee8648624663bab19f8c
  Author: Igor Kudrin <ikudrin at accesssoftek.com>
  Date:   2020-06-16 (Tue, 16 Jun 2020)

  Changed paths:
    M llvm/lib/MC/MCDwarf.cpp
    A llvm/test/MC/ELF/gen-dwarf64.s

  Log Message:
  -----------
  [MC] Generate .debug_line in the 64-bit DWARF format [2/7]

Differential Revision: https://reviews.llvm.org/D81144


  Commit: 1dfcce539501e235d78a96d13ec46ea83a2f8516
      https://github.com/llvm/llvm-project/commit/1dfcce539501e235d78a96d13ec46ea83a2f8516
  Author: Igor Kudrin <ikudrin at accesssoftek.com>
  Date:   2020-06-16 (Tue, 16 Jun 2020)

  Changed paths:
    M llvm/lib/MC/MCDwarf.cpp
    M llvm/test/MC/ELF/gen-dwarf64.s
    A llvm/test/MC/MachO/gen-dwarf64.s

  Log Message:
  -----------
  [MC] Generate a compilation unit in the 64-bit DWARF format [3/7]

The patch enables producing DWARF64 compilation units and fixes
generating references to .debug_abbrev and .debug_line sections.
A similar change for .debug_ranges/.debug_rnglists will be added
in a forthcoming patch.

Differential Revision: https://reviews.llvm.org/D81145


  Commit: b5f8959bcd9f5377c988da78c55ef62ee97090df
      https://github.com/llvm/llvm-project/commit/b5f8959bcd9f5377c988da78c55ef62ee97090df
  Author: Igor Kudrin <ikudrin at accesssoftek.com>
  Date:   2020-06-16 (Tue, 16 Jun 2020)

  Changed paths:
    M llvm/lib/MC/MCDwarf.cpp
    M llvm/test/MC/ELF/gen-dwarf64.s
    M llvm/test/MC/MachO/gen-dwarf64.s

  Log Message:
  -----------
  [MC] Generate .debug_aranges in the 64-bit DWARF format [4/7]

Differential Revision: https://reviews.llvm.org/D81146


  Commit: ab7458fb04ae6e12925fd85f2277bb9fa78d61eb
      https://github.com/llvm/llvm-project/commit/ab7458fb04ae6e12925fd85f2277bb9fa78d61eb
  Author: Igor Kudrin <ikudrin at accesssoftek.com>
  Date:   2020-06-16 (Tue, 16 Jun 2020)

  Changed paths:
    M llvm/lib/MC/MCDwarf.cpp
    M llvm/test/MC/ELF/gen-dwarf64.s

  Log Message:
  -----------
  [MC] Generate .debug_rnglists in the 64-bit DWARF format [5/7]

In addition, the patch fixes referencing the section within
a compilation unit.

Differential Revision: https://reviews.llvm.org/D81147


  Commit: 1e081342d4bb8963080b5a401d1740c0dc203639
      https://github.com/llvm/llvm-project/commit/1e081342d4bb8963080b5a401d1740c0dc203639
  Author: Igor Kudrin <ikudrin at accesssoftek.com>
  Date:   2020-06-16 (Tue, 16 Jun 2020)

  Changed paths:
    M llvm/lib/MC/MCDwarf.cpp
    M llvm/test/MC/ELF/gen-dwarf64.s

  Log Message:
  -----------
  [MC] Fix DWARF forms for 64-bit DWARFv3 files [6/7]

DW_FORM_sec_offset was introduced in DWARFv4, so, for 64-bit DWARFv3,
DW_FORM_data8 should be used instead.

Differential Revision: https://reviews.llvm.org/D81148


  Commit: ffc5d98d2c0df5f72ce67e5dcb724b64f03f639b
      https://github.com/llvm/llvm-project/commit/ffc5d98d2c0df5f72ce67e5dcb724b64f03f639b
  Author: Igor Kudrin <ikudrin at accesssoftek.com>
  Date:   2020-06-16 (Tue, 16 Jun 2020)

  Changed paths:
    M llvm/lib/MC/MCDwarf.cpp
    M llvm/test/MC/ELF/gen-dwarf64.s
    M llvm/test/MC/MachO/gen-dwarf64.s

  Log Message:
  -----------
  [MC] Generate .debug_frame in the 64-bit DWARF format [7/7]

Note that .eh_frame sections are generated in the 32-bit format even
when debug sections are 64-bit, for compatibility reasons. They use
relative references between entries, so they hardly benefit from the
64-bit format.

Differential Revision: https://reviews.llvm.org/D81149


Compare: https://github.com/llvm/llvm-project/compare/057c9c7ee00b...ffc5d98d2c0d


More information about the All-commits mailing list