[llvm] [Analysis] Add Scalable field in MemoryLocation.h (PR #65759)

Nikita Popov via llvm-commits llvm-commits at lists.llvm.org
Thu Sep 14 02:33:27 PDT 2023


================
@@ -984,9 +985,15 @@ struct DSEState {
       return isMaskedStoreOverwrite(KillingI, DeadI, BatchAA);
     }
 
-    const uint64_t KillingSize = KillingLocSize.getValue();
-    const uint64_t DeadSize = DeadLoc.Size.getValue();
+    const TypeSize KillingSize = KillingLocSize.getValue();
+    const TypeSize DeadSize = DeadLoc.Size.getValue();
+    const bool AnyScalable =
+        DeadSize.isScalable() || KillingLocSize.isScalable();
 
+    // TODO: Remove AnyScalable constraint once alias analysis fully support
+    // scalable quantities
----------------
nikic wrote:

Can we skip only this code path for scalable vectors then?

https://github.com/llvm/llvm-project/pull/65759


More information about the llvm-commits mailing list