diff options
| author | Jeremy Morse <jeremy.morse@sony.com> | 2023-09-11 19:56:15 +0100 |
|---|---|---|
| committer | Jeremy Morse <jeremy.morse@sony.com> | 2023-09-11 20:01:19 +0100 |
| commit | e54277fa109081e0f98a8cd3e0110fb89a5b7d60 (patch) | |
| tree | 354eedafb831b7f4fcd617ac9591e9310cc0fa79 /llvm/lib/Target/AMDGPU/AMDGPULowerModuleLDSPass.cpp | |
| parent | d7acc6e23f69a22969a9139d6a91e022280c2c37 (diff) | |
[NFC][RemoveDIs] Use iterators over inst-pointers when using IRBuilder
This patch adds a two-argument SetInsertPoint method to IRBuilder that
takes a block/iterator instead of an instruction, and updates many call
sites to use it. The motivating reason for doing this is given here [0],
we'd like to pass around more information about the position of debug-info
in the iterator object. That necessitates passing iterators around most of
the time.
[0] https://discourse.llvm.org/t/rfc-instruction-api-changes-needed-to-eliminate-debug-intrinsics-from-ir/68939
Differential Revision: https://reviews.llvm.org/D152468
Diffstat (limited to 'llvm/lib/Target/AMDGPU/AMDGPULowerModuleLDSPass.cpp')
| -rw-r--r-- | llvm/lib/Target/AMDGPU/AMDGPULowerModuleLDSPass.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/llvm/lib/Target/AMDGPU/AMDGPULowerModuleLDSPass.cpp b/llvm/lib/Target/AMDGPU/AMDGPULowerModuleLDSPass.cpp index 6636e47e8f5b..efe40e520654 100644 --- a/llvm/lib/Target/AMDGPU/AMDGPULowerModuleLDSPass.cpp +++ b/llvm/lib/Target/AMDGPU/AMDGPULowerModuleLDSPass.cpp @@ -294,7 +294,8 @@ class AMDGPULowerModuleLDS { // equivalent target specific intrinsic which lasts until immediately after // codegen would suffice for that, but one would still need to ensure that // the variables are allocated in the anticpated order. - IRBuilder<> Builder(Func->getEntryBlock().getFirstNonPHI()); + BasicBlock *Entry = &Func->getEntryBlock(); + IRBuilder<> Builder(Entry, Entry->getFirstNonPHIIt()); Function *Decl = Intrinsic::getDeclaration(Func->getParent(), Intrinsic::donothing, {}); |
