[flang-commits] [flang] [llvm] [mlir] [flang][debug] Generate DISubprogramAttr for omp::TargetOp. (PR #146532)
Abid Qadeer via flang-commits
flang-commits at lists.llvm.org
Thu Jul 3 02:35:24 PDT 2025
================
@@ -6891,23 +6891,19 @@ static void FixupDebugInfoForOutlinedFunction(
if (!NewSP)
return;
- DenseMap<const MDNode *, MDNode *> Cache;
SmallDenseMap<DILocalVariable *, DILocalVariable *> RemappedVariables;
auto GetUpdatedDIVariable = [&](DILocalVariable *OldVar, unsigned arg) {
- auto NewSP = Func->getSubprogram();
DILocalVariable *&NewVar = RemappedVariables[OldVar];
// Only use cached variable if the arg number matches. This is important
// so that DIVariable created for privatized variables are not discarded.
if (NewVar && (arg == NewVar->getArg()))
return NewVar;
- DILocalScope *NewScope = DILocalScope::cloneScopeForSubprogram(
- *OldVar->getScope(), *NewSP, Builder.getContext(), Cache);
NewVar = llvm::DILocalVariable::get(
- Builder.getContext(), NewScope, OldVar->getName(), OldVar->getFile(),
- OldVar->getLine(), OldVar->getType(), arg, OldVar->getFlags(),
- OldVar->getAlignInBits(), OldVar->getAnnotations());
+ Builder.getContext(), OldVar->getScope(), OldVar->getName(),
----------------
abidh wrote:
Using `OldVar->getScope()` is the right thing here.
https://github.com/llvm/llvm-project/pull/146532
More information about the flang-commits
mailing list