[llvm] [GVN] Load-store forwaring of scalable store to fixed load. (PR #124748)

via llvm-commits llvm-commits at lists.llvm.org
Tue Jan 28 07:16:28 PST 2025


================
@@ -79,14 +100,23 @@ bool canCoerceMustAliasedValueToLoad(Value *StoredVal, Type *LoadTy,
 Value *coerceAvailableValueToLoadType(Value *StoredVal, Type *LoadedTy,
                                       IRBuilderBase &Helper,
                                       const DataLayout &DL) {
-  assert(canCoerceMustAliasedValueToLoad(StoredVal, LoadedTy, DL) &&
+  assert(canCoerceMustAliasedValueToLoad(
+             StoredVal, LoadedTy, Helper.GetInsertBlock()->getParent()) &&
----------------
iamlouk wrote:

I changed that here, but not in functions like `coerceAvaialableValueToLoadType` because as long as the offset is restricted to be zero when scalable vectors are involved, all of those only need the DataLayout. I can of course change the interface everywhere for consistency, even in functions that only need the DL.

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


More information about the llvm-commits mailing list