diff options
author | Jeremy Morse <jeremy.morse@sony.com> | 2024-01-24 10:38:35 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-01-24 10:38:35 +0000 |
commit | fe0e632b00e63bda75155a8d1aa16d271d4af728 (patch) | |
tree | 133bf852ea7bf5c42315b5d63c2e43572014ea8a /llvm/lib/CodeGen/MachineRegisterInfo.cpp | |
parent | 416b079336c6d6e48858f951cd494a7a3577deb8 (diff) | |
download | llvm-fe0e632b00e63bda75155a8d1aa16d271d4af728.zip llvm-fe0e632b00e63bda75155a8d1aa16d271d4af728.tar.gz llvm-fe0e632b00e63bda75155a8d1aa16d271d4af728.tar.bz2 |
[DebugInfo][RemoveDIs] Support DPValues in HWAsan (#78731)
This patch extends HWASAN to support maintenance of debug-info that
isn't stored as intrinsics, but is instead in a DPValue object. This is
straight-forwards: we collect any such objects in StackInfoBuilder, and
apply the same operations to them as we would to dbg.value and similar
intrinsics.
I've also replaced some calls to getNextNode with debug-info skipping
next calls, and use iterators for instruction insertion rather than
instruction pointers. This avoids any difference in output between
intrinsic / non-intrinsic debug-info, but also means that any debug-info
comes before code inserted by HWAsan, rather than afterwards. See the
test modifications, where the variable assignment (presented as a
dbg.value) jumps up over all the code inserted by HWAsan. Seeing how the
code inserted by HWAsan is always (AFAIUI) given the source-location of
the instruction being instrumented, I don't believe this will have any
effect on which lines variable assignments become visible on; it may
extend the number of instructions covered by the assignments though.
Diffstat (limited to 'llvm/lib/CodeGen/MachineRegisterInfo.cpp')
0 files changed, 0 insertions, 0 deletions