[llvm] 74001be - [DSE] Use MemoryLocation API to get lifetime.end size (NFC)

Nikita Popov via llvm-commits llvm-commits at lists.llvm.org
Tue Jul 29 06:46:57 PDT 2025


Author: Nikita Popov
Date: 2025-07-29T15:46:49+02:00
New Revision: 74001beded5395f3653aac60c84a10dae277b8b7

URL: https://github.com/llvm/llvm-project/commit/74001beded5395f3653aac60c84a10dae277b8b7
DIFF: https://github.com/llvm/llvm-project/commit/74001beded5395f3653aac60c84a10dae277b8b7.diff

LOG: [DSE] Use MemoryLocation API to get lifetime.end size (NFC)

Added: 
    

Modified: 
    llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp

Removed: 
    


################################################################################
diff  --git a/llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp b/llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp
index 0f63ed0166cf4..9b8718035df62 100644
--- a/llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp
+++ b/llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp
@@ -1360,13 +1360,10 @@ struct DSEState {
   /// indicating whether \p I is a free-like call.
   std::optional<std::pair<MemoryLocation, bool>>
   getLocForTerminator(Instruction *I) const {
-    uint64_t Len;
-    Value *Ptr;
-    if (match(I, m_Intrinsic<Intrinsic::lifetime_end>(m_ConstantInt(Len),
-                                                      m_Value(Ptr))))
-      return {std::make_pair(MemoryLocation(Ptr, Len), false)};
-
     if (auto *CB = dyn_cast<CallBase>(I)) {
+      if (CB->getIntrinsicID() == Intrinsic::lifetime_end)
+        return {
+            std::make_pair(MemoryLocation::getForArgument(CB, 1, &TLI), false)};
       if (Value *FreedOp = getFreedOperand(CB, &TLI))
         return {std::make_pair(MemoryLocation::getAfter(FreedOp), true)};
     }


        


More information about the llvm-commits mailing list