[PATCH] D130778: [NFC] Simplify some conversions from ArrayRef to SmallVector by using to_vector and to_vector_of utilities

Dawid Jurczak via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Aug 4 11:59:00 PDT 2022


yurai007 marked an inline comment as done and an inline comment as not done.
yurai007 added inline comments.


================
Comment at: llvm/lib/Analysis/TypeBasedAliasAnalysis.cpp:814
   // Otherwise, create TBAA with the new Len
-  ArrayRef<MDOperand> MDOperands = MD->operands();
-  SmallVector<Metadata *, 4> NextNodes(MDOperands.begin(), MDOperands.end());
+  auto NextNodes = to_vector_of<Metadata *, 4>(MD->operands());
   ConstantInt *PreviousSize = mdconst::extract<ConstantInt>(NextNodes[3]);
----------------
dblaikie wrote:
> yurai007 wrote:
> > dblaikie wrote:
> > > I'm not sure changes like this add value - if we end up with a ctor that can take `MD->operands()` as a single argument. Is that possible already/will it be possible with some of the patches you're working on?
> > Taking into account parallel change which adds SmallVector(ArrayRef<U>) the answer is yes - NextNodes (SmallVector) can be created directly from MD->operands(). So yeah we can skip using to_vector_of here.
> Could you remove this/changes like this from the patch then, or do you plan to wait on changes for this patch until the ArrayRef ctor is added? (you can flag this review as "changes planned" or something)
> do you plan to wait on changes for this patch until the ArrayRef ctor is added? (you can flag this review as "changes planned" or something)

Yes, that's my plan, I'm gonna submit https://reviews.llvm.org/D130268 first, and then rebase this change. So flagging this one as "changes planned" sounds good.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D130778



More information about the llvm-commits mailing list