[all-commits] [llvm/llvm-project] 68e1ba: [SCEV] Fold umin_seq using known predicate

Nikita Popov via All-commits all-commits at lists.llvm.org
Mon May 9 07:35:26 PDT 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 68e1ba818869d6312a2774ccc320c0de86a8249c
      https://github.com/llvm/llvm-project/commit/68e1ba818869d6312a2774ccc320c0de86a8249c
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2022-05-09 (Mon, 09 May 2022)

  Changed paths:
    M llvm/lib/Analysis/ScalarEvolution.cpp
    M llvm/test/Analysis/ScalarEvolution/exit-count-select-safe.ll

  Log Message:
  -----------
  [SCEV] Fold umin_seq using known predicate

Fold %x umin_seq %y to %x if %x ule %y. This also subsumes the
special handling for constant operands, as if %y is constant this
folds to umin via implied poison reasoning, and if %x is constant
then either %x is not zero and it folds to umin, or it is known
zero, in which case it is ule anything.




More information about the All-commits mailing list