diff options
| author | Jeremy Morse <jeremy.morse@sony.com> | 2023-11-29 16:21:14 +0000 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-11-29 16:21:14 +0000 |
| commit | 3bf72bf427f15521111df4e35c868005ceb0013b (patch) | |
| tree | f0f1e8a0160da830b79776792c9bc1c6fbfbb883 /llvm/test/Transforms/CodeExtractor | |
| parent | b05335989239f08f0931b9153b1872790b8645f4 (diff) | |
| download | llvm-3bf72bf427f15521111df4e35c868005ceb0013b.zip llvm-3bf72bf427f15521111df4e35c868005ceb0013b.tar.gz llvm-3bf72bf427f15521111df4e35c868005ceb0013b.tar.bz2 | |
[DebugInfo][RemoveDIs] Extract DPValues in CodeExtractor like dbg.values (#73252)
CodeExtractor shifts dbg.value intrinsics out of the region being
extracted and updates them to be appropriate in the extracted function.
With new non-intrinsic variable locations, we need to manually do this
too, with DPValues.
Most of this patch shifts and refactors some utilities in
fixupDebugInfoPostExtraction so that we can add a single extra helper
lambda that iterates over DPValues and applies update-utilities. We also
have to assign the IsNewDbgInfoFormat flag in a bunch of places -- this
normally gets set the moment you insert a block into a function (or
function into a module), however a few blocks are constructed here
before being inserted, thus we have to do some manual setup.
Tested via LoopExtractor_alloca.ll, which invokes debugify.
Diffstat (limited to 'llvm/test/Transforms/CodeExtractor')
| -rw-r--r-- | llvm/test/Transforms/CodeExtractor/LoopExtractor_alloca.ll | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/llvm/test/Transforms/CodeExtractor/LoopExtractor_alloca.ll b/llvm/test/Transforms/CodeExtractor/LoopExtractor_alloca.ll index 4a75027..48e7816 100644 --- a/llvm/test/Transforms/CodeExtractor/LoopExtractor_alloca.ll +++ b/llvm/test/Transforms/CodeExtractor/LoopExtractor_alloca.ll @@ -1,4 +1,5 @@ ; RUN: opt -passes=debugify,loop-simplify,loop-extract -S < %s | FileCheck %s +; RUN: opt -passes=debugify,loop-simplify,loop-extract -S < %s --try-experimental-debuginfo-iterators | FileCheck %s ; This tests 2 cases: ; 1. loop1 should be extracted into a function, without extracting %v1 alloca. |
