[all-commits] [llvm/llvm-project] 62da6e: [InstCombine] substitute equivalent constant to re...

RotateRight via All-commits all-commits at lists.llvm.org
Thu Apr 23 07:19:38 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 62da6ecea298739ad59c0563ce6d9493804ef1f0
      https://github.com/llvm/llvm-project/commit/62da6ecea298739ad59c0563ce6d9493804ef1f0
  Author: Sanjay Patel <spatel at rotateright.com>
  Date:   2020-04-23 (Thu, 23 Apr 2020)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
    M llvm/test/Transforms/InstCombine/and-or-icmp-min-max.ll
    M llvm/test/Transforms/InstCombine/and-or-icmp-nullptr.ll
    M llvm/test/Transforms/InstCombine/and-or-icmps.ll

  Log Message:
  -----------
  [InstCombine] substitute equivalent constant to reduce logic-of-icmps

(X == C) && (Y Pred1 X) --> (X == C) && (Y Pred1 C)
(X != C) || (Y Pred1 X) --> (X != C) || (Y Pred1 C)

This cooperates/overlaps with D78430, but it is a more general transform
that gets us most of the expected simplifications and several other
improvements.
http://volta.cs.utah.edu:8080/z/5gxjjc

PR45618:
https://bugs.llvm.org/show_bug.cgi?id=45618

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




More information about the All-commits mailing list