[all-commits] [llvm/llvm-project] e09958: [LoopPeel] Peel loops with exits followed by an un...

Dmitry Makogon via All-commits all-commits at lists.llvm.org
Tue Nov 2 09:13:48 PDT 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: e09958d5eb74a9ca0e1bda93e1e292c1a3cfadb3
      https://github.com/llvm/llvm-project/commit/e09958d5eb74a9ca0e1bda93e1e292c1a3cfadb3
  Author: Dmitry Makogon <d.makogon at g.nsu.ru>
  Date:   2021-11-02 (Tue, 02 Nov 2021)

  Changed paths:
    M llvm/include/llvm/Transforms/Utils/BasicBlockUtils.h
    M llvm/lib/Transforms/Utils/BasicBlockUtils.cpp
    M llvm/lib/Transforms/Utils/LoopPeel.cpp
    M llvm/test/Transforms/LoopUnroll/peel-multiple-unreachable-exits.ll

  Log Message:
  -----------
  [LoopPeel] Peel loops with exits followed by an unreachable or deopt block

Added support for peeling loops with exits that are followed either by an
unreachable-terminated block or block that has a terminatnig deoptimize call.
All blocks in the sequence must have an unique successor, maybe except
for the last one.

Reviewed By: mkazantsev

Differential Revision: https://reviews.llvm.org/D110922




More information about the All-commits mailing list