From 27d4877ca4c20277fde47708fcd9cbb7571cc17c Mon Sep 17 00:00:00 2001 From: Sudharsan Veeravalli Date: Wed, 10 Jul 2024 17:32:58 +0530 Subject: [DebugInfo][SimplifyIndVar] Missing debug location updates for overflow/saturation instructions (#97987) Fixes #97986 --- llvm/lib/Transforms/Utils/SimplifyIndVar.cpp | 2 ++ 1 file changed, 2 insertions(+) (limited to 'llvm/lib/Transforms/Utils/SimplifyIndVar.cpp') diff --git a/llvm/lib/Transforms/Utils/SimplifyIndVar.cpp b/llvm/lib/Transforms/Utils/SimplifyIndVar.cpp index e38505c..5bda7c5 100644 --- a/llvm/lib/Transforms/Utils/SimplifyIndVar.cpp +++ b/llvm/lib/Transforms/Utils/SimplifyIndVar.cpp @@ -438,6 +438,7 @@ bool SimplifyIndvar::eliminateOverflowIntrinsic(WithOverflowInst *WO) { else { assert(EVI->getIndices()[0] == 0 && "Only two possibilities!"); EVI->replaceAllUsesWith(NewResult); + NewResult->setDebugLoc(EVI->getDebugLoc()); } ToDelete.push_back(EVI); } @@ -467,6 +468,7 @@ bool SimplifyIndvar::eliminateSaturatingIntrinsic(SaturatingInst *SI) { BO->setHasNoUnsignedWrap(); SI->replaceAllUsesWith(BO); + BO->setDebugLoc(SI->getDebugLoc()); DeadInsts.emplace_back(SI); Changed = true; return true; -- cgit v1.1