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

Fangrui Song via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Jun 2 19:26:01 PDT 2022


MaskRay added a comment.

Seems that the relanded 9980c9971892378ea82475e000de8df210a58e69 <https://reviews.llvm.org/rG9980c9971892378ea82475e000de8df210a58e69> may cause a failure to wasm tests for Halide.
I'll try to find folks to give a smaller reproduce (I myself know nearly nothing about Halide), but here is the stack trace in case you notice something immediate.

  assert.h assertion failed at llvm/CodeGen/BasicTTIImpl.h:152 in llvm::InstructionCost llvm::BasicTTIImplBase<llvm::WebAssemblyTTIImpl>::getInsertSubvectorOverhead(llvm::VectorType *, int, llvm::FixedVectorType *) [T = llvm::WebAssemblyTTIImpl]: (!isa<FixedVectorType>(VTy) || (Index + NumSubElts) <= (int)cast<FixedVectorType>(VTy)->getNumElements()) && "SK_InsertSubvector index out of range"

  *** Check failure stack trace: ***
      @     0x5606259259e4  absl::log_internal::LogMessage::SendToLog()
      @     0x56062592518a  absl::log_internal::LogMessage::Flush()
      @     0x560625925dc9  absl::log_internal::LogMessageFatal::~LogMessageFatal()
      @     0x560625905ce4  __assert_fail
      @     0x5606232d2f51  llvm::BasicTTIImplBase<>::getInsertSubvectorOverhead()
      @     0x5606232ce898  llvm::BasicTTIImplBase<>::getShuffleCost()
      @     0x560624ce91c5  llvm::TargetTransformInfo::getShuffleCost()
      @     0x56062477966b  llvm::slpvectorizer::BoUpSLP::getEntryCost()
      @     0x56062477ed63  llvm::slpvectorizer::BoUpSLP::getTreeCost()
      @     0x560624797c28  llvm::SLPVectorizerPass::tryToVectorizeList()
      @     0x56062479c4d8  llvm::SLPVectorizerPass::vectorizeInsertElementInst()
      @     0x56062479c67c  llvm::SLPVectorizerPass::vectorizeSimpleInstructions()
      @     0x560624793e82  llvm::SLPVectorizerPass::vectorizeChainsInBlock()
      @     0x560624791dbc  llvm::SLPVectorizerPass::runImpl()
      @     0x560624791168  llvm::SLPVectorizerPass::run()
      @     0x5606236a4b92  llvm::detail::PassModel<>::run()
      @     0x56062512c0b5  llvm::PassManager<>::run()
      @     0x560622c278b2  llvm::detail::PassModel<>::run()
      @     0x5606251300e0  llvm::ModuleToFunctionPassAdaptor::run()
      @     0x560621fc84f2  llvm::detail::PassModel<>::run()
      @     0x56062512b1de  llvm::PassManager<>::run()
      @     0x560621f9d82b  Halide::Internal::CodeGen_LLVM::optimize_module()
      @     0x560621f9ae1a  Halide::Internal::CodeGen_LLVM::finish_codegen()
      @     0x560621f9bdf5  Halide::Internal::CodeGen_LLVM::compile()
      @     0x56062250c909  Halide::Internal::WasmModuleContents::WasmModuleContents()
      @     0x5606225118f2  Halide::Internal::WasmModule::compile()
      @     0x560622155f52  Halide::Pipeline::compile_jit()
      @     0x5606221584ea  Halide::Pipeline::realize()
      @     0x560622157f21  Halide::Pipeline::realize()
      @     0x560622157701  Halide::Pipeline::realize()
      @     0x560621ef6ac5  Halide::Func::realize()
      @     0x560621ec01ad  main
      @     0x7f33b32b08d3  __libc_start_main
      @     0x560621ebe90a  _start


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