[PATCH] D115462: [SLP]Improve shuffles cost estimation where possible.

Martin Storsjö via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Jun 2 23:51:31 PDT 2022


mstorsjo added a comment.

I also bisected a bunch of failing assertions on ARM and aarch64 to this commit. Here's a reduced reproducer:

  $ cat repro.c 
  char *a;
  long b;
  int c() {
    int d, e = d = 0;
    for (; d < 8; d++)
      e += a[d] - a[b ^ d] - a[b] >> -a[d] >> 1;
    return e;
  }
  $ clang -target aarch64-linux-gnu -c repro.c -O3
  clang: ../include/llvm/CodeGen/BasicTTIImpl.h:149: llvm::InstructionCost llvm::BasicTTIImplBase<T>::getInsertSubvectorOverhead(llvm::VectorType*, int, llvm::FixedVectorType*) [with T = llvm::AArch64TTIImpl]: Assertion `(!isa<FixedVectorType>(VTy) || (Index + NumSubElts) <= (int)cast<FixedVectorType>(VTy)->getNumElements()) && "SK_InsertSubvector index out of range"' failed.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D115462



More information about the llvm-commits mailing list