[all-commits] [llvm/llvm-project] 88d642: [SCEV] Match 'zext (trunc A to iB) to iY' as URem.

Florian Hahn via All-commits all-commits at lists.llvm.org
Thu Oct 29 03:48:17 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 88d6421e4c439582ca4ca5e3744f8cc4498bb48e
      https://github.com/llvm/llvm-project/commit/88d6421e4c439582ca4ca5e3744f8cc4498bb48e
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2020-10-29 (Thu, 29 Oct 2020)

  Changed paths:
    M llvm/lib/Analysis/ScalarEvolution.cpp
    M llvm/unittests/Analysis/ScalarEvolutionTest.cpp

  Log Message:
  -----------
  [SCEV] Match 'zext (trunc A to iB) to iY' as URem.

URem operations with constant power-of-2 second operands are modeled as
such. This patch on its own has very little impact (e.g. no changes in
CodeGen for MultiSource/SPEC2000/SPEC2006 on X86 -O3 -flto), but I'll
soon post follow-up patches that make use of it to more accurately
determine the trip multiple.

Reviewed By: mkazantsev

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




More information about the All-commits mailing list