[PATCH] D153990: [DebugInfo][RemoveDIs] Add prototype storage classes for non-instruction variable debug-info

Jeremy Morse via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Oct 24 05:56:19 PDT 2023


jmorse requested review of this revision.
jmorse added a comment.

Other bits and pieces that have changed, now that I look at the history-diff:

- `setTailCall()` is called on DPValues that are converted back to dbg.values. This is consistent with the rest of LLVM.
- I've added a global static DPMarker with an empty `StoredDPValues` field, so that we can always produce a legitimate, empty range of DPValues in the added `getEmptyDPValueRange`, from methods where there's no debug-info.

The latter is another case of patch shuffling. This prototype as it stands is going to always allocate one DPMarker per instruction, but a later patch is going to optimise that to reduce the number of memory allocations. As a result there are going to be (in the future) scenarios where we need to describe empty ranges of DPValues, but there's no DPMarker to do that with, hence the static one. It just happened to end up in this particular patch.


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D153990/new/

https://reviews.llvm.org/D153990



More information about the llvm-commits mailing list