[all-commits] [llvm/llvm-project] 350ab7: [DAG] Simplify OR(X, SHL(Y, BW/2)) eq/ne 0/-1 'all/a...

Simon Pilgrim via All-commits all-commits at lists.llvm.org
Thu Jan 7 04:03:48 PST 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 350ab7aa1c6735c0a136c118f7b43773fd74bf2d
      https://github.com/llvm/llvm-project/commit/350ab7aa1c6735c0a136c118f7b43773fd74bf2d
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2021-01-07 (Thu, 07 Jan 2021)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    M llvm/test/CodeGen/X86/avx512-mask-op.ll
    M llvm/test/CodeGen/X86/cmp-concat.ll
    M llvm/test/CodeGen/X86/movmsk-cmp.ll

  Log Message:
  -----------
  [DAG] Simplify OR(X,SHL(Y,BW/2)) eq/ne 0/-1 'all/any-of' style patterns

Attempt to simplify all/any-of style patterns that concatenate 2 smaller integers together into an and(x,y)/or(x,y) + icmp 0/-1 instead.

This is mainly to help some bool predicate reduction patterns where we end up concatenating bool vectors that have been bitcasted to integers.

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




More information about the All-commits mailing list