[llvm] [NFC] [DSE] Refactor DSE (PR #100956)
    Haopeng Liu via llvm-commits 
    llvm-commits at lists.llvm.org
       
    Mon Aug 19 10:16:56 PDT 2024
    
    
  
================
@@ -806,6 +806,38 @@ bool canSkipDef(MemoryDef *D, bool DefVisibleToCaller) {
   return false;
 }
 
+// A memory location wrapper that represents a MemoryLocation, `MemLoc`,
+// defined by `MemDef`.
+class MemoryLocationWrapper {
+public:
+  MemoryLocationWrapper(MemoryLocation MemLoc, MemoryDef *MemDef)
+      : MemLoc(MemLoc), MemDef(MemDef) {
+    assert(MemLoc.Ptr && "MemLoc should be not null");
+    UnderlyingObject = getUnderlyingObject(MemLoc.Ptr);
+    DefInst = MemDef->getMemoryInst();
+  }
+
+  MemoryAccess *GetDefiningAccess() const {
----------------
haopliu wrote:
Inlined this function.
https://github.com/llvm/llvm-project/pull/100956
    
    
More information about the llvm-commits
mailing list