@@ -431,25 +431,27 @@ where the missing source location is intentional. For this, you can use the
431
431
``debugify `` output. This is enabled in a build of LLVM by setting the CMake
432
432
flag ``-DLLVM_ENABLE_DEBUGLOC_COVERAGE_TRACKING=COVERAGE ``. When this has been
433
433
set, LLVM will enable runtime tracking of
434
- :ref: `DebugLoc annotations<_NewInstLocations > `, allowing ``debugify `` to ignore
434
+ :ref: `DebugLoc annotations<NewInstLocations > `, allowing ``debugify `` to ignore
435
435
instructions that have an explicitly recorded reason given for not having a
436
436
source location.
437
437
438
438
For triaging source location bugs detected with ``debugify ``, you may find it
439
- helpful to instead set the CMake flag
439
+ helpful to instead set the CMake flag to enable "origin tracking",
440
440
``-DLLVM_ENABLE_DEBUGLOC_COVERAGE_TRACKING=COVERAGE_AND_ORIGIN ``. This flag adds
441
441
more detail to ``debugify ``'s output, by including one or more stacktraces with
442
442
every missing source location, capturing the point at which the empty source
443
443
location was created, and every point at which it was copied to an instruction,
444
- making it trivial in most cases to find the origin of the underlying bug.
444
+ making it trivial in most cases to find the origin of the underlying bug. If
445
+ using origin tracking, it is recommended to also build LLVM with debug info
446
+ enabled, so that the stacktrace can be accurately symbolized.
445
447
446
448
.. note ::
447
449
448
450
The coverage tracking feature has been designed primarily for use with the
449
- :ref: `original debug info preservation ` mode of ``debugify ``, and so may not
450
- be reliable in other settings. When using this mode, the stacktraces produced
451
- by the ``COVERAGE_AND_ORIGIN `` setting will be printed in an easy-to-read
452
- format as part of the reports generated by the
451
+ :ref: `original debug info preservation<OriginalDI> ` mode of ``debugify ``, and
452
+ so may not be reliable in other settings. When using this mode, the
453
+ stacktraces produced by the ``COVERAGE_AND_ORIGIN `` setting will be printed
454
+ in an easy-to-read format as part of the reports generated by the
453
455
``llvm-original-di-preservation.py `` script.
454
456
455
457
.. _OriginalDI :
0 commit comments