[PATCH] D146872: [1/N][IR] Permit load/store/alloca for struct of the same scalable vector type

Craig Topper via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Sat Apr 8 10:19:24 PDT 2023


craig.topper added inline comments.


================
Comment at: llvm/lib/IR/DataLayout.cpp:94
+  assert(!StructSize.isScalable() &&
+         "Caller of this should not be a structure with scalable type");
+  TypeSize Offset = TypeSize::Fixed(FixedOffset);
----------------
eopXD wrote:
> craig.topper wrote:
> > The Caller is not a structure.
> Caller under SROA is `ArrayType`.
> Caller under ConsantFolding, ModuleSummaryAnalysis, TypeMetadataUtils is `ConstantStruct`.
> Caller under Target is `StructType`, but by grep-ing I don't find user of the function `LLVMElementAtOffset`.
> 
> I say it is safe to remove the assertion here.
> 
I was referring to a word usage problem. The word caller refers to the function that contains the code calls this method on an object. The caller is not the same thing as the object this method acts on.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D146872/new/

https://reviews.llvm.org/D146872



More information about the llvm-commits mailing list