[all-commits] [llvm/llvm-project] 1ec6e1: [SCEV] Factor out part of wrap flag detection logi...

Philip Reames via All-commits all-commits at lists.llvm.org
Sat Nov 14 19:21:25 PST 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 1ec6e1eb8a084bffae8a40236eb9925d8026dd07
      https://github.com/llvm/llvm-project/commit/1ec6e1eb8a084bffae8a40236eb9925d8026dd07
  Author: Philip Reames <listmail at philipreames.com>
  Date:   2020-11-14 (Sat, 14 Nov 2020)

  Changed paths:
    M llvm/include/llvm/Analysis/ScalarEvolution.h
    M llvm/lib/Analysis/ScalarEvolution.cpp
    M llvm/test/Analysis/ScalarEvolution/pr22641.ll
    M llvm/test/Analysis/ScalarEvolution/sext-iv-2.ll
    M llvm/test/Transforms/IndVarSimplify/X86/loop-invariant-conditions.ll

  Log Message:
  -----------
  [SCEV] Factor out part of wrap flag detection logic [NFC-ish]

In an effort to make code around flag determination more readable, and (possibly) prepare for a follow up change, factor out some of the flag detection logic.  In the process, reduce the number of locations we mutate wrap flags by a couple.

Note that this isn't NFC.  The old code tried for NSW xor (NUW || NW).  This is, two different paths computed different sets of wrap flags.  The new code will try for all three.  The result is that some expressions end up with a few extra flags set.




More information about the All-commits mailing list