aboutsummaryrefslogtreecommitdiff
path: root/llvm/test/Transforms/CodeExtractor
diff options
context:
space:
mode:
authorJeremy Morse <jeremy.morse@sony.com>2023-11-29 16:21:14 +0000
committerGitHub <noreply@github.com>2023-11-29 16:21:14 +0000
commit3bf72bf427f15521111df4e35c868005ceb0013b (patch)
treef0f1e8a0160da830b79776792c9bc1c6fbfbb883 /llvm/test/Transforms/CodeExtractor
parentb05335989239f08f0931b9153b1872790b8645f4 (diff)
downloadllvm-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.ll1
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.