[PATCH] D38563: [MachineBlockPlacement] Make sure PreferredLoopExit is cleared everytime new loop is processed

Graham Yiu via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Oct 5 15:57:12 PDT 2017


gyiu added a comment.

@trentxintong Hello, this change is actually causing the assert to trigger in 15 SPEC2006 benchmarks with '-O3 -mcpu=pwr8 -m64 -fprofile-use -flto=thin'.  Failures are during the link step.

  lib/CodeGen/MachineBlockPlacement.cpp:2246: void {anonymous}::MachineBlockPlacement::buildLoopChains(const llvm::MachineLoop&): Assertion `L.isLoopExiting(PreferredLoopExit) && "not an exiting block of current loop"' failed.

Benchmarks: 400.perlbench 401.bzip2 403.gcc 433.milc 445.gobmk 447.dealII 450.soplex 453.povray 456.hmmer 458.sjeng 464.h264ref 471.omnetpp 473.astar 482.sphinx3 483.xalancbmk


Repository:
  rL LLVM

https://reviews.llvm.org/D38563





More information about the llvm-commits mailing list