[all-commits] [llvm/llvm-project] 9acc03: [X86][SSE] Replace foldShuffleOfHorizOp with gener...

Simon Pilgrim via All-commits all-commits at lists.llvm.org
Tue May 11 06:19:59 PDT 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 9acc03ad92c66b856f67bf11ff4460c7da45f413
      https://github.com/llvm/llvm-project/commit/9acc03ad92c66b856f67bf11ff4460c7da45f413
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2021-05-11 (Tue, 11 May 2021)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/horizontal-shuffle.ll
    M llvm/test/CodeGen/X86/horizontal-sum.ll

  Log Message:
  -----------
  [X86][SSE] Replace foldShuffleOfHorizOp with generalized version in canonicalizeShuffleMaskWithHorizOp

foldShuffleOfHorizOp only handled basic shufps(hop(x,y),hop(z,w)) folds - by moving this to canonicalizeShuffleMaskWithHorizOp we can work with more general/combined v4x32 shuffles masks, float/integer domains and support shuffle-of-packs as well.

The next step will be to support 256/512-bit vector cases.


  Commit: 759b97e55a4bd7b0d89493686f4a769718e385ee
      https://github.com/llvm/llvm-project/commit/759b97e55a4bd7b0d89493686f4a769718e385ee
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2021-05-11 (Tue, 11 May 2021)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelDAGToDAG.cpp

  Log Message:
  -----------
  [X86] Replace repeated isa/cast<ConstantSDNode> calls with single single dyn_cast<>. NFCI.

Noticed while looking at D101944


Compare: https://github.com/llvm/llvm-project/compare/bce3cca4889a...759b97e55a4b


More information about the All-commits mailing list