[RemoveDIs][DebugInfo] Update SROA to handle DPVAssigns (#78475)
commit60e1c835d326a74ef67bf4b9399d439262d0380e
authorStephen Tozer <stephen.tozer@sony.com>
Tue, 23 Jan 2024 09:37:27 +0000 (23 09:37 +0000)
committerGitHub <noreply@github.com>
Tue, 23 Jan 2024 09:37:27 +0000 (23 09:37 +0000)
tree4dc220f9631519c5584153bda91ced052064a796
parentccf1e322bd5828c74ac5213dc2e05ab506da25bd
[RemoveDIs][DebugInfo] Update SROA to handle DPVAssigns (#78475)

SROA needs to update llvm.dbg.assign intrinsics when it migrates debug
info in response to alloca splitting; this patch updates the debug info
migration code to handle DPVAssigns as well, making use of generic code
to avoid duplication as much as possible.
23 files changed:
llvm/include/llvm/IR/DebugInfo.h
llvm/lib/Transforms/Scalar/SROA.cpp
llvm/test/DebugInfo/Generic/assignment-tracking/instcombine/remove-redundant-dbg.ll
llvm/test/DebugInfo/Generic/assignment-tracking/sroa/after-inlining.ll
llvm/test/DebugInfo/Generic/assignment-tracking/sroa/alloca-single-slice.ll
llvm/test/DebugInfo/Generic/assignment-tracking/sroa/arglist.ll
llvm/test/DebugInfo/Generic/assignment-tracking/sroa/complex.ll
llvm/test/DebugInfo/Generic/assignment-tracking/sroa/fail-fragment.ll
llvm/test/DebugInfo/Generic/assignment-tracking/sroa/frag-2.ll
llvm/test/DebugInfo/Generic/assignment-tracking/sroa/frag.ll
llvm/test/DebugInfo/Generic/assignment-tracking/sroa/id.ll
llvm/test/DebugInfo/Generic/assignment-tracking/sroa/memcpy.ll
llvm/test/DebugInfo/Generic/assignment-tracking/sroa/memmove-to-from-same-alloca.ll
llvm/test/DebugInfo/Generic/assignment-tracking/sroa/remove-redundant-dbg.ll
llvm/test/DebugInfo/Generic/assignment-tracking/sroa/rewrite.ll
llvm/test/DebugInfo/Generic/assignment-tracking/sroa/split-pre-fragmented-store-2.ll
llvm/test/DebugInfo/Generic/assignment-tracking/sroa/split-pre-fragmented-store.ll
llvm/test/DebugInfo/Generic/assignment-tracking/sroa/store.ll
llvm/test/DebugInfo/Generic/assignment-tracking/sroa/unspecified-var-size.ll
llvm/test/DebugInfo/Generic/assignment-tracking/sroa/user-memcpy.ll
llvm/test/DebugInfo/Generic/assignment-tracking/sroa/var-sized-fragment.ll
llvm/test/DebugInfo/Generic/assignment-tracking/sroa/vec-1.ll
llvm/test/DebugInfo/Generic/assignment-tracking/sroa/vec-2.ll