[PATCH] D82961: [Scalarizer] Variable insert handling (PR46524)

Bjorn Pettersson via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Jul 2 10:14:31 PDT 2020


bjope added inline comments.


================
Comment at: llvm/lib/Transforms/Scalar/Scalarizer.cpp:759
+  if (isa<Constant>(InsIdx))
+    return false;
+
----------------
jdoerfert wrote:
> I do not understand why we skip constant indices. 
I don't know exactly, but Scalarizer is sometimes creating such instructions itself when a vector still is needed.

(Downstream we have hacked the scalarizer to keep vector load/stores (typically loading/storing to a register pair/quad). But artithmetics etc needs to be scalarized. So there are typically lots of insertelement/extractelement instructions around to glue things together after running the scalarizer.)


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D82961





More information about the llvm-commits mailing list