[DLCov] Origin-Tracking: Add config options (#143590)

This patch is part of a series that adds origin-tracking to the debugify
source location coverage checks, allowing us to report symbolized stack
traces of the point where missing source locations appear.

This patch adds the configuration options needed to enable this feature,
in the form of a new CMake option that enables a flag in
`llvm-config.h`; this is not an entirely new CMake flag, but a new
option, `COVERAGE_AND_ORIGIN`, for the existing flag
`LLVM_ENABLE_DEBUGLOC_COVERAGE_TRACKING`. This patch contains
documentation, but no actual implementation for the flag itself.
This commit is contained in:
Stephen Tozer
2025-06-13 13:54:30 +02:00
committed by GitHub
parent f1036d844e
commit cc365331af
4 changed files with 17 additions and 7 deletions

View File

@@ -482,11 +482,14 @@ enabled sub-projects. Nearly all of these variable names begin with
**LLVM_ENABLE_DEBUGLOC_COVERAGE_TRACKING**:STRING
Enhances Debugify's ability to detect line number errors by storing extra
information inside Instructions, removing false positives from Debugify's
results at the cost of performance. Allowed values are `DISABLED` (default)
and `COVERAGE`. `COVERAGE` tracks whether and why a line number was
intentionally dropped or not generated for an instruction, allowing Debugify
to avoid reporting these as errors; this comes with a small performance cost
of ~0.1%. `COVERAGE` is an ABI-breaking option.
results at the cost of performance. Allowed values are `DISABLED` (default),
`COVERAGE`, and `COVERAGE_AND_ORIGIN`. `COVERAGE` tracks whether and why a
line number was intentionally dropped or not generated for an instruction,
allowing Debugify to avoid reporting these as errors; this comes with a small
performance cost of ~0.1%. `COVERAGE_AND_ORIGIN` additionally stores a
stacktrace of the point where each DebugLoc is unintentionally dropped,
allowing for much easier bug triaging at the cost of a ~10x performance
slowdown. `COVERAGE` and `COVERAGE_AND_ORIGIN` are ABI-breaking options.
**LLVM_ENABLE_DIA_SDK**:BOOL
Enable building with MSVC DIA SDK for PDB debugging support. Available