[PATCH] D108155: [PassBuilder] Use loop-mssa for licm

Jon Roelofs via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Aug 19 15:00:22 PDT 2021


jroelofs added a comment.

After some bisection, it appears this change broke `llvm/test/Transforms/GuardWidening/loop-schedule.ll`. The NewPM half of that test fails with:

  Assertion failed: (AL->size() == ActualAccesses.size() && "We don't have the same number of accesses in the block as on the " "access list"), function verifyOrderingDominationAndDefUses, file MemorySSA.cpp, line 2018.
  PLEASE submit a bug report to https://bugs.llvm.org/ and include the crash backtrace.
  Stack dump:
  0.	Program arguments: /Users/jroelofs/llvm-upstream/build/bin/opt -S -passes=licm,guard-widening,licm -debug-pass-manager
  Stack dump without symbol names (ensure you have llvm-symbolizer in your PATH or set the environment var `LLVM_SYMBOLIZER_PATH` to point to it):
  0  opt                      0x0000000108c3d587 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) + 39
  1  opt                      0x0000000108c3c318 llvm::sys::RunSignalHandlers() + 248
  2  opt                      0x0000000108c3dbd0 SignalHandler(int) + 288
  3  libsystem_platform.dylib 0x00007fff204dfd7d _sigtramp + 29
  4  libsystem_platform.dylib 000000000000000000 _sigtramp + 18446603339974181536
  5  libsystem_c.dylib        0x00007fff203ef411 abort + 120
  6  libsystem_c.dylib        0x00007fff203ee7e8 err + 0
  7  opt                      0x0000000109809d13 llvm::MemorySSA::verifyOrderingDominationAndDefUses(llvm::Function&) const (.cold.8) + 35
  8  opt                      0x0000000107c54da9 llvm::MemorySSA::verifyOrderingDominationAndDefUses(llvm::Function&) const + 2841
  9  opt                      0x0000000107c54272 llvm::MemorySSA::verifyMemorySSA() const + 18
  10 opt                      0x00000001089593e0 llvm::sinkRegion(llvm::DomTreeNodeBase<llvm::BasicBlock>*, llvm::AAResults*, llvm::LoopInfo*, llvm::DominatorTree*, llvm::BlockFrequencyInfo*, llvm::TargetLibraryInfo*, llvm::TargetTransformInfo*, llvm::Loop*, llvm::AliasSetTracker*, llvm::MemorySSAUpdater*, llvm::ICFLoopSafetyInfo*, llvm::SinkAndHoistLICMFlags&, llvm::OptimizationRemarkEmitter*, llvm::Loop*) + 10640
  11 opt                      0x0000000108956196 (anonymous namespace)::LoopInvariantCodeMotion::runOnLoop(llvm::Loop*, llvm::AAResults*, llvm::LoopInfo*, llvm::DominatorTree*, llvm::BlockFrequencyInfo*, llvm::TargetLibraryInfo*, llvm::TargetTransformInfo*, llvm::ScalarEvolution*, llvm::MemorySSA*, llvm::OptimizationRemarkEmitter*, bool) + 5862
  12 opt                      0x0000000108954968 llvm::LICMPass::run(llvm::Loop&, llvm::AnalysisManager<llvm::Loop, llvm::LoopStandardAnalysisResults&>&, llvm::LoopStandardAnalysisResults&, llvm::LPMUpdater&) + 152

https://green.lab.llvm.org/green/job/clang-stage1-cmake-RA-expensive/20177/

Would you mind taking a look?


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D108155



More information about the llvm-commits mailing list